AWS Glue 데이터베이스 이름을 직접 바꿀 수는 없지만 해당 정의를 복사하고 정의를 수정하며 해당 정의를 사용하여 데이터베이스를 다른 이름으로 다시 생성할 수는 있습니다. 마찬가지로 이전 데이터베이스의 테이블 정의를 복사하고 정의를 수정하며 수정된 정의를 사용하여 새 데이터베이스에서 테이블을 다시 생성할 수 있습니다.
참고
제시된 방법에서는 테이블 파티셔닝을 복사하지 않습니다.
다음 Windows용 절차에서는 JSON 출력을 위해 AWS CLI가 구성되어 있다고 가정합니다. AWS CLI에서 기본 출력 형식을 변경하려면 aws configure
를 실행합니다.
AWS CLI를 사용하여 AWS Glue 데이터베이스를 복사하려면
-
명령 프롬프트에서 다음 AWS CLI 명령을 실행하여 복사하려는 AWS Glue 데이터베이스의 정의를 검색합니다.
aws glue get-database --name
database_name
get-database
명령에 대한 자세한 내용은 get-database를 참조하세요. -
새 데이터베이스 이름(예:
)을 사용하는 데스크톱의 파일에 JSON 출력을 저장합니다.new_database_name
.json -
텍스트 편집기에서
파일을 엽니다.new_database_name
.json -
JSON 파일에서 다음 단계를 수행합니다.
-
외부
{ "Database":
항목과 파일 끝에 있는 해당하는 중괄호(}
)를 제거합니다. -
Name
항목을 새 데이터베이스 이름으로 변경합니다. -
CatalogId
필드를 제거합니다.
-
-
파일을 저장합니다.
-
명령 프롬프트에서 다음 AWS CLI 명령을 실행하여 수정된 데이터베이스 정의 파일을 사용해 새 이름으로 데이터베이스를 생성합니다.
aws glue create-database --database-input "file://~/Desktop\
new_database_name
.json"create-database
명령에 대한 자세한 내용은 create-database를 참조하세요. 파일에서 AWS CLI 파라미터 로드에 대한 자세한 내용은 AWS Command Line Interface 사용 설명서의 파일에서 AWS CLI 파라미터 로드를 참조하세요. -
AWS Glue에서 새 데이터베이스가 생성되었는지 확인하려면 다음 명령을 실행합니다.
aws glue get-database --name
new_database_name
이제 새 데이터베이스에 복사하려는 테이블의 정의를 가져와서 정의를 수정하고 수정된 정의를 사용하여 새 데이터베이스에서 테이블을 다시 생성할 준비가 되었습니다. 이 절차에서는 테이블 이름을 변경하지 않습니다.
AWS CLI를 사용하여 AWS Glue 테이블을 복사하려면
-
명령 프롬프트에서 다음 AWS CLI 명령을 실행합니다.
aws glue get-table --database-name
database_name
--nametable_name
get-table
명령에 대한 자세한 내용은 get-table을 참조하세요. -
테이블 이름(예:
table_name
.json)을 사용하는 Windows 데스크톱의 파일에 JSON 출력을 저장합니다. -
텍스트 편집기에서 파일을 엽니다.
-
JSON 파일에서 외부
{"Table":
항목과 파일 끝에 있는 해당하는 중괄호(}
)를 제거합니다. -
JSON 파일에서 다음 항목과 해당 값을 제거합니다.
-
DatabaseName
-create-table
CLI 명령에서--database-name
파라미터를 사용하므로 이 항목은 필요하지 않습니다. -
CreateTime
-
UpdateTime
-
CreatedBy
-
IsRegisteredWithLakeFormation
-
CatalogId
-
VersionId
-
-
테이블 정의 파일을 저장합니다.
-
명령 프롬프트에서 다음 AWS CLI 명령을 실행하여 새 데이터베이스에서 테이블을 다시 생성합니다.
aws glue create-table --database-name
new_database_name
--table-input "file://~/Desktop\table_name
.json"create-table
명령에 대한 자세한 내용은 create-table을 참조하세요. 이제 테이블이 AWS Glue에서 새 데이터베이스에 나타나고 Athena에서 해당 테이블을 쿼리할 수 있습니다.
-
단계를 반복하여 AWS Glue의 새 데이터베이스에 각각의 추가 테이블을 복사합니다.