

# 카탈로그 수준 자동 테이블 최적화 활성화
<a name="enable-auto-table-optimizers"></a>

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

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

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

## 카탈로그 수준 옵티마이저를 활성화하려면(콘솔)
<a name="enable-catalog-optimizers-console"></a>

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

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

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

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

1. **테이블 최적화** 탭에서 **테이블 최적화**, **편집**을 선택합니다. **작업**에서 **최적화 편집**을 선택할 수도 있습니다.  
![\[이 스크린샷은 카탈로그 수준에서 최적화를 활성화하는 편집 옵션을 보여줍니다.\]](http://docs.aws.amazon.com/ko_kr/glue/latest/dg/images/catalog-edit-optimizations.png)

1. **테이블 최적화** 페이지에서 다음 옵션을 구성합니다.  
![\[이 스크린샷은 카탈로그 수준의 최적화 옵션을 보여줍니다.\]](http://docs.aws.amazon.com/ko_kr/glue/latest/dg/images/catalog-optimization-options.png)

   1. **압축** 설정 구성:
      + 압축을 활성화/비활성화합니다.
      + 옵티마이저를 실행하는 데 필요한 권한이 있는 IAM 역할을 선택합니다.

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

   1. **스냅샷 보존** 설정 구성:
      + 보존을 활성화/비활성화합니다.
      + 스냅샷 보존 기간을 일 단위로 설정합니다. 기본값은 5일입니다.
      + 보존할 스냅샷 수를 설정합니다. 기본값은 스냅샷 1개입니다.
      + 만료된 파일의 정리를 활성화/비활성화합니다.

   1. **분리된 파일 삭제** 설정 구성:
      + 분리된 파일 삭제를 활성화/비활성화합니다.
      + 분리된 파일 기간을 일 단위로 설정합니다. 기본값은 3일입니다.

1. **저장**을 선택합니다.

## AWS CLI를 통해 카탈로그 수준 옵티마이저 활성화
<a name="catalog-auto-optimizers-cli"></a>

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

**Example 옵티마이저 설정으로 카탈로그 업데이트**  

```
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 사용 설명서의 [사용 가능한 지표 보기](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/viewing_metrics_with_cloudwatch.html)를 참조하세요.
+ 카탈로그 구성을 검사하여 카탈로그 설정이 제대로 적용되었는지 확인합니다.
+ 테이블 액세스 오류의 경우 CloudWatch 로그 및 EventBridge 알림에서 자세한 오류 정보를 확인합니다.