메타데이터 테이블 구성 만들기

메타데이터 테이블 구성 만들기 (Creating metadata table configurations)

완전 관리형 Apache Iceberg 메타데이터 테이블에 Amazon S3 Metadata를 생성·저장하려면 범용 버킷에 대한 메타데이터 테이블 구성을 만들어요. Amazon S3는 구성이 버킷에서 활성화되어 있는 한 데이터의 최신 변경 사항을 반영하도록 메타데이터 테이블을 지속적으로 업데이트하도록 설계됐어요. 또한 Amazon S3는 스토리지 비용을 줄이고 분석 쿼리 성능을 높이기 위해 메타데이터 테이블을 지속적으로 최적화해요.

출처: 문서

본문

범용 버킷마다 최대 3개의 상호 보완적인 메타데이터 테이블을 포함하는 메타데이터 테이블 구성을 만들 수 있어요.

  • 저널 테이블(Journal table) – 기본적으로 메타데이터 테이블 구성에는 저널 테이블이 포함되며, 버킷의 객체에서 발생하는 이벤트를 캡처해요. 저널 테이블은 데이터에 대한 변경 사항을 거의 실시간으로 기록해서, 버킷에 업로드된 새 데이터를 식별하고 최근 삭제된 객체를 추적하고 수명주기 전환을 모니터링하는 데 도움을 줘요. 저널 테이블은 새 객체와 객체 및 해당 메타데이터에 대한 업데이트(PUT 또는 DELETE 작업이 필요한 업데이트)를 기록해요. 저널 테이블은 메타데이터 테이블 구성을 만든 이후에 발생하는 변경 이벤트(예: 업로드, 업데이트, 삭제)에 대한 메타데이터만 캡처해요. 이 테이블은 조회 가능하므로 단순한 SQL 쿼리로 버킷의 변경 사항을 감사할 수 있어요. 저널 테이블은 각 메타데이터 테이블 구성에 필수예요. (S3 Metadata 초기 릴리스에서는 저널 테이블을 "메타데이터 테이블"이라고 불렀어요.) 저널 테이블에 저장되는 데이터에 대한 자세한 내용은 S3 Metadata 저널 테이블 스키마를 참고하세요. 스토리지 비용을 최소화하기 위해 저널 테이블 레코드 만료를 활성화할 수 있어요. 자세한 내용은 저널 테이블 레코드 만료를 참고하세요.
  • 라이브 인벤토리 테이블(Live inventory table) – 선택적으로 메타데이터 테이블 구성에 라이브 인벤토리 테이블을 추가할 수 있어요. 라이브 인벤토리 테이블은 버킷의 모든 객체와 해당 버전에 대한 간단하고 조회 가능한 인벤토리를 제공해서 데이터의 최신 상태를 파악할 수 있게 해줘요. 라이브 인벤토리 테이블을 사용해 다양한 워크로드에 처리하려는 객체를 식별함으로써 비즈니스 워크플로와 빅데이터 작업을 단순화하고 가속화할 수 있어요. 예를 들어 라이브 인벤토리 테이블을 조회해 특정 스토리지 클래스에 저장된 모든 객체, 특정 태그가 있는 모든 객체, AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 암호화되지 않은 모든 객체 등을 찾을 수 있어요. 메타데이터 테이블 구성을 위해 라이브 인벤토리 테이블을 활성화하면 테이블은 *백필링(backfilling)*이라는 과정을 거치게 돼요. 이 과정에서 Amazon S3가 범용 버킷을 스캔해 버킷에 존재하는 모든 객체에 대한 초기 메타데이터를 검색해요. 버킷의 객체 수에 따라 이 과정은 수 분(최소 15분)에서 수 시간이 걸릴 수 있어요. 백필링이 끝나면 라이브 인벤토리 테이블 상태가 **백필링(Backfilling)**에서 **활성(Active)**으로 바뀌어요. 백필링이 완료된 후에는 일반적으로 객체에 대한 업데이트가 1시간 이내에 라이브 인벤토리 테이블에 반영돼요. 라이브 인벤토리 테이블 백필링에는 요금이 부과돼요. 범용 버킷에 객체가 10억 개를 초과하면 라이브 인벤토리 테이블에 대해 월간 요금도 부과돼요. 자세한 내용은 Amazon S3 요금을 참고하세요. 라이브 인벤토리 테이블에 저장되는 데이터에 대한 자세한 내용은 S3 Metadata 라이브 인벤토리 테이블 스키마를 참고하세요.
  • 주석 테이블(Annotation table) – 선택적으로 메타데이터 테이블 구성에 주석 테이블을 추가할 수 있어요. 주석 테이블은 버킷 객체에 대한 최신 주석을 추적하고 주석 콘텐츠를 직접 조회할 수 있게 해줘요. 주석 테이블은 기본적으로 활성화되지 않아요. 자세한 내용은 주석 테이블 활성화 또는 비활성화를 참고하세요.

메타데이터 테이블은 메타데이터 테이블의 테이블 ID가 포함된 다음 Amazon 리소스 이름(ARN) 형식을 가져요.

arn:aws:s3tables:region-code:account-id:bucket/aws-s3/table/table-id

예를 들어 US East(N. Virginia) 리전의 메타데이터 테이블 ARN은 다음과 같을 수 있어요.

arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3/table/a12bc345-67d8-912e-3456-7f89123g4h56

저널 테이블은 journal, 라이브 인벤토리 테이블은 inventory, 주석 테이블은 annotation이라는 이름을 가져요.

메타데이터 테이블 구성을 만들면 메타데이터 테이블이 AWS 관리형 테이블 버킷에 저장돼요. 계정 내 같은 리전의 모든 메타데이터 테이블 구성은 단일 AWS 관리형 테이블 버킷에 저장돼요. 이 AWS 관리형 테이블 버킷은 aws-s3이라는 이름을 가지며 다음과 같은 Amazon 리소스 이름(ARN) 형식을 가져요.

arn:aws:s3tables:region:account_id:bucket/aws-s3

예를 들어 계정 ID가 123456789012이고 범용 버킷이 US East(N. Virginia)(us-east-1)에 있다면, AWS 관리형 테이블 버킷도 US East(N. Virginia)(us-east-1)에 생성되며 다음과 같은 ARN을 가져요.

arn:aws:s3tables:us-east-1:123456789012:bucket/aws-s3

기본적으로 AWS 관리형 테이블 버킷은 Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)로 암호화돼요. 첫 번째 메타데이터 구성을 만든 후에는 AWS 관리형 테이블 버킷의 기본 암호화 설정을 AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 변경할 수 있어요. 자세한 내용은 AWS 관리형 테이블 버킷 암호화와 테이블 버킷에서 AWS KMS 키를 사용한 서버 측 암호화(SSE-KMS) 지정을 참고하세요.

AWS 관리형 테이블 버킷 내에서 구성의 메타데이터 테이블은 일반적으로 다음과 같은 명명 형식의 네임스페이스에 저장돼요.

b_general-purpose-bucket-name

메타데이터 테이블 네임스페이스에 대한 자세한 내용은 메타데이터 테이블 작동 방식을 참고하세요.

메타데이터 테이블 구성을 만들 때 AWS 관리형 메타데이터 테이블을 AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 암호화하도록 선택할 수 있어요. SSE-KMS를 사용하려면 범용 버킷과 같은 리전에 고객 관리형 KMS 키를 제공해야 해요. 테이블의 암호화 유형은 테이블 생성 시에만 설정할 수 있어요. AWS 관리형 테이블이 생성된 후에는 암호화 설정을 변경할 수 없어요. 메타데이터 테이블에 SSE-KMS를 지정하려면 특정 권한이 필요해요. 자세한 내용은 SSE-KMS 권한을 참고하세요.

메타데이터 테이블의 암호화 설정은 버킷 수준의 기본 암호화 설정보다 우선해요. 테이블에 암호화를 지정하지 않으면 버킷의 기본 암호화 설정을 상속해요.

AWS 관리형 테이블 버킷은 S3 Tables 할당량(quota)에 포함되지 않아요. AWS 관리형 테이블 버킷 및 AWS 관리형 테이블 작업에 대한 자세한 내용은 AWS 관리형 테이블 버킷 작업을 참고하세요.

메타데이터 테이블 구성은 Amazon S3 콘솔, AWS Command Line Interface(AWS CLI), AWS SDK 또는 Amazon S3 REST API를 사용해 만들 수 있어요.

참고

  • 2025년 7월 15일 이전에 S3 Metadata 구성을 만들었다면 구성을 삭제하고 다시 만들어서 저널 테이블 레코드를 만료시키고 인벤토리 테이블과 주석 테이블을 만들 수 있도록 권장해요. 자세한 내용은 2025년 7월 15일 이전에 만든 메타데이터 구성에서 인벤토리 및 주석 테이블 활성화하기를 참고하세요.
  • 메타데이터 테이블 구성을 삭제했고 같은 범용 버킷에 대해 구성을 다시 만들고 싶다면, 먼저 AWS 관리형 테이블 버킷에서 이전 저널, 인벤토리, 주석 테이블을 수동으로 삭제해야 해요. 그렇지 않으면 해당 테이블이 이미 존재하므로 새 메타데이터 테이블 구성 생성이 실패해요. 메타데이터 테이블을 삭제하려면 메타데이터 테이블 삭제를 참고하세요. 메타데이터 테이블 구성을 삭제해도 구성만 삭제돼요. AWS 관리형 테이블 버킷과 메타데이터 테이블은 메타데이터 테이블 구성을 삭제해도 여전히 존재해요.

사전 조건 (Prerequisites)

메타데이터 테이블 구성을 만들기 전에 다음 사전 조건을 충족했는지 확인하세요.

  • 메타데이터 테이블 구성을 만들기 전에 메타데이터 테이블을 생성·관리하는 데 필요한 AWS Identity and Access Management(IAM) 권한이 있는지 확인하세요. 자세한 내용은 메타데이터 테이블 구성 권한 설정을 참고하세요.
  • Amazon Athena 또는 다른 AWS 쿼리 엔진으로 메타데이터 테이블을 조회할 계획이라면 AWS 관리형 테이블 버킷을 AWS 분석 서비스와 통합하세요. 자세한 내용은 Amazon S3 Tables와 AWS 분석 서비스 통합을 참고하세요. 이 리전에서 기존 테이블 버킷을 이미 통합했다면 AWS 관리형 테이블 버킷도 자동으로 통합돼요. 이 리전의 테이블 버킷 통합 상태를 확인하려면 Amazon S3 콘솔을 열고 왼쪽 탐색 창에서 **테이블 버킷(Table buckets)**을 선택해요. AWS 분석 서비스와의 통합(Integration with AWS analytics services) 아래에서 리전과 통합 상태가 **활성화됨(Enabled)**인지 확인해요.

메타데이터 테이블 구성 만들기 (Create a metadata table configuration)

메타데이터 테이블 구성을 만들기 전에 사전 조건을 검토하고 충족했는지, 그리고 메타데이터 테이블 제한 사항 및 제약을 검토했는지 확인하세요.

  • AWS Management Console에 로그인하고 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.
  • 왼쪽 탐색 창에서 **범용 버킷(General purpose buckets)**을 선택해요.
  • 메타데이터 테이블 구성을 만들 범용 버킷을 선택해요. > 참고 이 범용 버킷이 테이블 버킷을 사용할 수 있는 AWS 리전에 있는지 확인하세요. 테이블 버킷은 US East(N. Virginia), US East(Ohio), US West(Oregon) 리전에서만 사용할 수 있어요.
  • 버킷의 세부 정보 페이지에서 메타데이터(Metadata) 탭을 선택해요.
  • 메타데이터(Metadata) 탭에서 **메타데이터 구성 만들기(Create metadata configuration)**를 선택해요.
  • 메타데이터 구성 만들기(Create metadata configuration) 페이지의 **저널 테이블(Journal table)**에서 AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 테이블을 암호화할지 선택할 수 있어요. 기본적으로 저널 테이블은 Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)로 암호화돼요. SSE-KMS를 사용하려면 범용 버킷과 같은 리전에 고객 관리형 KMS 키를 제공해야 해요. > 중요 메타데이터 테이블의 암호화 유형은 테이블 생성 시에만 설정할 수 있어요. AWS 관리형 테이블이 생성된 후에는 암호화 설정을 변경할 수 없어요.
    • 저널 테이블을 SSE-S3(기본값)로 암호화하려면 **암호화 유형 지정 안 함(Don't specify encryption type)**을 선택해요.
    • 저널 테이블을 SSE-KMS로 암호화하려면 **암호화 유형 지정(Specify encryption type)**을 선택해요. 암호화 유형(Encryption type) 아래에서 **AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)**를 선택해요. **AWS KMS 키(AWS KMS key)**에서 기존 KMS 키를 선택하거나 KMS 키 ARN을 입력해요. KMS 키가 없다면 **KMS 키 ARN 입력(Enter KMS key ARN)**을 선택한 다음 **KMS 키 만들기(Create a KMS key)**를 선택해요. SSE-KMS에 필요한 권한을 설정했는지 확인하세요. 자세한 내용은 SSE-KMS 권한을 참고하세요.
  • (선택 사항) 기본적으로 저널 테이블의 레코드는 만료되지 않아요. 저널 테이블의 스토리지 비용을 최소화하려면 **레코드 만료(Record expiration)**에 대해 **활성화(Enabled)**를 선택해요. 저널 테이블 레코드 만료를 활성화하면 저널 테이블 레코드를 보존할 일 수를 설정할 수 있어요. 레코드가 만료되는 일 수(Days after which records expire) 값을 설정하려면 7과 2147483647 사이의 정수를 지정할 수 있어요. 예를 들어 저널 테이블 레코드를 1년 동안 보존하려면 이 값을 365로 설정해요. 레코드는 만료 대상이 된 후 24~48시간 이내에 만료돼요.

    중요 저널 테이블 레코드가 만료되면 복구할 수 없어요. 지정된 일 수 이후에 저널 테이블 레코드가 만료됩니다(Journal table records will expire after the specified number of days) 아래에서 확인란을 선택해요.

  • (선택 사항) 메타데이터 테이블 구성에 인벤토리 테이블을 추가하려면 라이브 인벤토리 테이블(Live inventory table) 아래 **구성 상태(Configuration status)**에 대해 **활성화(Enabled)**를 선택해요. AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 테이블을 암호화할지 선택할 수 있어요. 기본적으로 인벤토리 테이블은 Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)로 암호화돼요. SSE-KMS를 사용하려면 범용 버킷과 같은 리전에 고객 관리형 KMS 키를 제공해야 해요. > 중요 메타데이터 테이블의 암호화 유형은 테이블 생성 시에만 설정할 수 있어요. AWS 관리형 테이블이 생성된 후에는 암호화 설정을 변경할 수 없어요.
    • 인벤토리 테이블을 SSE-S3(기본값)로 암호화하려면 **암호화 유형 지정 안 함(Don't specify encryption type)**을 선택해요.
    • 인벤토리 테이블을 SSE-KMS로 암호화하려면 **암호화 유형 지정(Specify encryption type)**을 선택해요. 암호화 유형(Encryption type) 아래에서 **AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)**를 선택해요. **AWS KMS 키(AWS KMS key)**에서 기존 KMS 키를 선택하거나 KMS 키 ARN을 입력해요. KMS 키가 없다면 **KMS 키 ARN 입력(Enter KMS key ARN)**을 선택한 다음 **KMS 키 만들기(Create a KMS key)**를 선택해요. SSE-KMS에 필요한 권한을 설정했는지 확인하세요. 자세한 내용은 SSE-KMS 권한을 참고하세요.
  • (선택 사항) 메타데이터 테이블 구성에 주석 테이블을 추가하려면 주석 테이블(Annotation table) 아래 **구성 상태(Configuration status)**에 대해 **활성화(Enabled)**를 선택해요. IAM 역할(IAM role) 아래에서 다음 IAM 역할 선택 방법 중 하나를 선택해요.
    • 새 IAM 역할 만들기(Create new IAM role) – Amazon S3가 주석 테이블에 필요한 권한을 가진 새 IAM 역할을 만들어요.
    • 기존 IAM 역할에서 선택(Choose from existing IAM roles) – IAM 역할(IAM role) 드롭다운에서 기존 IAM 역할을 선택해요. 역할에는 버킷에서 주석을 읽는 데 필요한 권한이 있어야 해요.
    • IAM 역할 ARN 입력(Enter IAM role ARN) – 필요한 권한이 있는 기존 IAM 역할의 ARN을 입력해요. 주석 테이블 IAM 역할에 필요한 권한에 대한 자세한 내용은 주석 테이블 IAM 역할을 참고하세요. AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 주석 테이블을 암호화할지 선택할 수 있어요. 기본적으로 주석 테이블은 Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)로 암호화돼요. SSE-KMS를 사용하려면 범용 버킷과 같은 리전에 고객 관리형 KMS 키를 제공해야 해요. > 중요 메타데이터 테이블의 암호화 유형은 테이블 생성 시에만 설정할 수 있어요. AWS 관리형 테이블이 생성된 후에는 암호화 설정을 변경할 수 없어요.
    • 주석 테이블을 SSE-S3(기본값)로 암호화하려면 **암호화 유형 지정 안 함(Don't specify encryption type)**을 선택해요.
    • 주석 테이블을 SSE-KMS로 암호화하려면 **암호화 유형 지정(Specify encryption type)**을 선택해요. 암호화 유형(Encryption type) 아래에서 **AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)**를 선택해요. **AWS KMS 키(AWS KMS key)**에서 기존 KMS 키를 선택하거나 KMS 키 ARN을 입력해요. KMS 키가 없다면 **KMS 키 ARN 입력(Enter KMS key ARN)**을 선택한 다음 **KMS 키 만들기(Create a KMS key)**를 선택해요. SSE-KMS에 필요한 권한을 설정했는지 확인하세요. 자세한 내용은 SSE-KMS 권한을 참고하세요.
  • **메타데이터 테이블 구성 만들기(Create metadata table configuration)**를 선택해요.

메타데이터 테이블 구성이 성공하면 메타데이터(Metadata) 탭에 메타데이터 테이블의 이름과 ARN이 AWS 관리형 테이블 버킷과 네임스페이스 이름과 함께 표시돼요.

메타데이터 테이블 구성에 인벤토리 테이블을 활성화하도록 선택했다면 테이블은 *백필링(backfilling)*이라는 과정을 거치게 돼요. 이 과정에서 Amazon S3가 범용 버킷을 스캔해 버킷에 존재하는 모든 객체에 대한 초기 메타데이터를 검색해요. 버킷의 객체 수에 따라 이 과정은 수 분(최소 15분)에서 수 시간이 걸릴 수 있어요. 백필링이 끝나면 인벤토리 테이블 상태가 **백필링(Backfilling)**에서 **활성(Active)**으로 바뀌어요. 백필링이 완료된 후에는 일반적으로 객체에 대한 업데이트가 1시간 이내에 인벤토리 테이블에 반영돼요.

메타데이터 테이블 구성에 대한 업데이트를 모니터링하려면 AWS CloudTrail을 사용할 수 있어요. 자세한 내용은 CloudTrail 로깅에서 추적되는 Amazon S3 버킷 수준 작업을 참고하세요.

다음 명령을 실행하려면 AWS CLI가 설치·구성되어 있어야 해요. AWS CLI가 설치되어 있지 않다면 AWS Command Line Interface 사용자 가이드의 최신 버전의 AWS CLI 설치 또는 업데이트를 참고하세요.

또는 AWS CloudShell을 사용해 콘솔에서 AWS CLI 명령을 실행할 수 있어요. AWS CloudShell은 AWS Management Console에서 직접 시작할 수 있는 브라우저 기반의 사전 인증된 셸이에요. 자세한 내용은 AWS CloudShell 사용자 가이드의 CloudShell이란 무엇인가요?와 AWS CloudShell 시작하기를 참고하세요.

AWS CLI로 메타데이터 테이블 구성 만들기 (To create a metadata table configuration by using the AWS CLI)

메타데이터 테이블 구성을 만들기 전에 사전 조건을 검토하고 충족했는지, 그리고 메타데이터 테이블 제한 사항 및 제약을 검토했는지 확인하세요.

다음 예시 명령을 사용하려면 user input placeholders를 자신의 정보로 바꾸세요.

  • 메타데이터 테이블 구성을 포함하는 JSON 파일을 만들고 저장해요(예: metadata-config.json). 다음은 샘플 구성이에요. 저널 테이블 레코드 만료를 활성화할지 비활성화할지 지정해야 해요. 레코드 만료를 활성화하려면 저널 테이블 레코드가 만료될 일 수도 지정해야 해요. Days 값을 설정하려면 7과 2147483647 사이의 정수를 지정할 수 있어요. 예를 들어 저널 테이블 레코드를 1년 동안 보존하려면 이 값을 365로 설정해요. 선택적으로 인벤토리 테이블과 주석 테이블을 구성할 수 있어요. 저널 테이블, 인벤토리 테이블, 주석 테이블에 대해 선택적으로 암호화 구성을 지정할 수 있어요. 기본적으로 메타데이터 테이블은 SseAlgorithm을 AES256으로 설정해 지정할 수 있는 Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)로 암호화돼요. 메타데이터 테이블을 AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)로 암호화하려면 SseAlgorithm을 aws:kms로 설정해요. 또한 KmsKeyArn을 범용 버킷이 있는 리전의 고객 관리형 KMS 키 ARN으로 설정해야 해요.
{
  "JournalTableConfiguration": {
     "RecordExpiration": {
       "Expiration": "ENABLED",
      "Days": 10
    },
    "EncryptionConfiguration": {
      "SseAlgorithm": "AES256"
    }
  },
  "InventoryTableConfiguration": {
    "ConfigurationState": "ENABLED",
    "EncryptionConfiguration": {
      "SseAlgorithm": "aws:kms",
      "KmsKeyArn": "arn:aws:kms:us-east-2:account-id:key/key-id"
    }
  },
  "AnnotationTableConfiguration": {
    "ConfigurationState": "ENABLED",
    "Role": "arn:aws:iam::account-id:role/annotation-table-role",
    "EncryptionConfiguration": {
      "SseAlgorithm": "AES256"
    }
  }
}
  • 다음 명령을 사용해 범용 버킷(예: amzn-s3-demo-bucket)에 메타데이터 테이블 구성을 적용해요.
aws s3api create-bucket-metadata-configuration \
--bucket amzn-s3-demo-bucket \
--metadata-configuration file://./metadata-config.json \
--region us-east-2
  • 구성이 생성됐는지 확인하려면 다음 명령을 사용해요.
aws s3api get-bucket-metadata-configuration \
--bucket amzn-s3-demo-bucket \
--region us-east-2

메타데이터 테이블 구성에 대한 업데이트를 모니터링하려면 AWS CloudTrail을 사용할 수 있어요. 자세한 내용은 CloudTrail 로깅에서 추적되는 Amazon S3 버킷 수준 작업을 참고하세요.

메타데이터 테이블 구성을 만들기 위해 REST 요청을 보낼 수 있어요. 자세한 내용은 Amazon S3 API Reference의 CreateBucketMetadataConfiguration을 참고하세요.

AWS SDK를 사용해 Amazon S3에 메타데이터 테이블 구성을 만들 수도 있어요. 자세한 내용은 Amazon S3 API Reference의 지원되는 SDK 목록을 참고하세요.

2025년 7월 15일 이전에 만든 메타데이터 구성에서 인벤토리 및 주석 테이블 활성화하기 (Enabling inventory and annotation tables on metadata configurations created before July 15, 2025)

2025년 7월 15일 이전에 S3 Metadata 구성을 만들었다면 구성을 삭제하고 다시 만들어서 저널 테이블 레코드를 만료시키고 인벤토리 테이블과 주석 테이블을 만들 수 있도록 권장해요. 이전 구성을 삭제하고 새 구성을 만드는 사이에 범용 버킷에서 발생하는 변경 사항은 두 저널 테이블 모두에 기록되지 않아요.

이전 메타데이터 구성에서 새 구성으로 마이그레이션하려면 다음을 수행해요.

  • 기존 메타데이터 테이블 구성을 삭제해요. 단계별 지침은 메타데이터 테이블 구성 삭제를 참고하세요.
  • 새 메타데이터 테이블 구성을 만들어요. 단계별 지침은 메타데이터 테이블 구성 만들기를 참고하세요.

구성 마이그레이션에 도움이 필요하면 AWS Support에 문의하세요.

새 메타데이터 구성을 만든 후에는 저널 테이블이 두 개 생겨요. 이전 저널 테이블이 더 이상 필요 없다면 삭제할 수 있어요. 단계별 지침은 메타데이터 테이블 삭제를 참고하세요. 이전 저널 테이블을 유지했고 새 저널 테이블과 조인하고 싶다면 두 테이블을 조인하는 방법의 예시로 S3 메타데이터 테이블과 커스텀 메타데이터 조인을 참고하세요.

마이그레이션 후에는 다음을 수행할 수 있어요.

  • 구성을 보려면 이제 GetBucketMetadataConfiguration API 작업을 사용할 수 있어요. 구성이 이전인지 새 것인지 확인하려면 GetBucketMetadataConfiguration API 응답의 다음 속성을 확인하면 돼요. AWS 관리형 버킷 유형("aws")은 새 구성을 나타내고, 고객 관리형 버킷 유형("customer")은 이전 구성을 나타내요.
"MetadataTableConfigurationResult": {
            "TableBucketType": ["aws" | "customer"]

자세한 내용은 메타데이터 테이블 구성 보기를 참고하세요.

참고 GetBucketMetadataConfiguration 및 DeleteBucketMetadataConfiguration API 작업은 이전 또는 새 메타데이터 테이블 구성 모두에 사용할 수 있어요. 다만 새 구성과 함께 GetBucketMetadataTableConfiguration 및 DeleteBucketMetadataTableConfiguration API 작업을 사용하려 하면 HTTP 405 Method Not Allowed 오류가 발생해요. 이전 API 작업 대신 새 API 작업(CreateBucketMetadataConfiguration, GetBucketMetadataConfiguration, DeleteBucketMetadataConfiguration)을 사용하도록 프로세스를 업데이트해야 해요.

  • Amazon Athena 또는 다른 AWS 쿼리 엔진으로 메타데이터 테이블을 조회할 계획이라면 AWS 관리형 테이블 버킷을 AWS 분석 서비스와 통합하세요. 이 리전에서 기존 테이블 버킷을 이미 통합했다면 AWS 관리형 테이블 버킷도 자동으로 통합돼요. 자세한 내용은 Amazon S3 Tables와 AWS 분석 서비스 통합을 참고하세요.

더 알아보기 (Learn more)