카탈로그 수준 자동 테이블 최적화 활성화 - AWS Glue

카탈로그 수준 자동 테이블 최적화 활성화

Data Catalog의 모든 새 Apache Iceberg 테이블에 대해 자동 테이블 최적화를 활성화할 수 있습니다. 테이블을 생성한 후 테이블 최적화 설정을 수동으로 명시적으로 업데이트할 수도 있습니다.

카탈로그 수준 테이블 최적화를 활성화하도록 Data Catalog 설정을 업데이트하려면 사용된 IAM 역할에 루트 카탈로그에 대한 glue:UpdateCatalog 권한이 있어야 합니다. GetCatalog API를 사용하여 카탈로그 속성을 확인할 수 있습니다.

Lake Formation 관리형 테이블의 경우, 카탈로그 최적화 구성 중에 선택하는 IAM 역할에는 새 테이블 또는 업데이트된 테이블에 대한 Lake Formation ALTER, DESCRIBE, INSERTDELETE 권한이 있어야 합니다.

  1. Lake Formation 콘솔(https://console.aws.amazon.com/lakeformation/)을 엽니다.

  2. 탐색 창에서 Data Catalog를 선택합니다.

  3. 카탈로그 탭을 선택합니다.

  4. 계정 수준 카탈로그를 선택합니다.

  5. 테이블 최적화 탭에서 테이블 최적화, 편집을 선택합니다. 작업에서 최적화 편집을 선택할 수도 있습니다.

    이 스크린샷은 카탈로그 수준에서 최적화를 활성화하는 편집 옵션을 보여줍니다.
  6. 테이블 최적화 페이지에서 다음 옵션을 구성합니다.

    이 스크린샷은 카탈로그 수준의 최적화 옵션을 보여줍니다.
    1. 압축 설정 구성:

      • 압축을 활성화/비활성화합니다.

      • 옵티마이저를 실행하는 데 필요한 권한이 있는 IAM 역할을 선택합니다.

        IAM 역할의 권한 요구 사항에 대한 자세한 내용은 테이블 최적화 필수 조건 섹션을 참조하세요.

    2. 스냅샷 보존 설정 구성:

      • 보존을 활성화/비활성화합니다.

      • 스냅샷 보존 기간을 일 단위로 설정합니다. 기본값은 5일입니다.

      • 보존할 스냅샷 수를 설정합니다. 기본값은 스냅샷 1개입니다.

      • 만료된 파일의 정리를 활성화/비활성화합니다.

    3. 분리된 파일 삭제 설정 구성:

      • 분리된 파일 삭제를 활성화/비활성화합니다.

      • 분리된 파일 기간을 일 단위로 설정합니다. 기본값은 3일입니다.

  7. 저장을 선택합니다.

다음 CLI 명령을 사용하여 옵티마이저 설정으로 기존 카탈로그를 업데이트합니다.

예 옵티마이저 설정으로 카탈로그 업데이트
aws glue update-catalog \ --name catalog-id \ --catalog-input \ '{ "CatalogId": "111122223333", "CatalogInput": { "CatalogProperties": { "CustomProperties": { "ColumnStatistics.Enabled": "false", "ColumnStatistics.RoleArn": "arn:aws:iam::111122223333:role/service-role/stats-role-name" }, "IcebergOptimizationProperties": { "RoleArn": "arn:aws:iam::111122223333:role/optimizer-role-name", "Compaction": { "enabled": "true" }, "Retention": { "enabled": "true", "snapshotRetentionPeriodInDays": "10", "numberOfSnapshotsToRetain": "5", "cleanExpiredFiles": "true" }, "OrphanFileDeletion": { "enabled": "true", "orphanFileRetentionPeriodInDays": "3" } } } } }'

카탈로그 수준 옵티마이저에 문제가 발생하면 다음을 확인합니다.

  • 사전 조건 섹션에서 설명하는 올바른 권한이 IAM 역할에 부여되어 있는지 확인합니다.

  • CloudWatch 로그에 옵티마이저 작업과 관련한 오류 메시지가 없는지 확인합니다.

    자세한 내용은 Amazon CloudWatch 사용 설명서의 사용 가능한 지표 보기를 참조하세요.

  • 카탈로그 구성을 검사하여 카탈로그 설정이 제대로 적용되었는지 확인합니다.

  • 테이블 액세스 오류의 경우 CloudWatch 로그 및 EventBridge 알림에서 자세한 오류 정보를 확인합니다.