메타데이터 테이블 쿼리 성능 최적화
메타데이터 테이블 쿼리 성능 최적화 (Optimizing metadata table query performance)
S3 Metadata가 Apache Iceberg 테이블 형식을 기반으로 하므로, 특정 시간 범위를 사용해 저널 테이블 쿼리의 성능과 비용을 최적화할 수 있어요.
출처: 문서
본문
예를 들어 다음 SQL 쿼리는 S3 범용 버킷의 새 객체에 대한 민감도 수준을 제공해요.
SELECT key, object_tags['SensitivityLevel']
FROM "b_general-purpose-bucket-name"."journal"
WHERE record_type = 'CREATE'
GROUP BY object_tags['SensitivityLevel']
이 쿼리는 저널 테이블 전체를 스캔하므로 실행하는 데 오래 걸릴 수 있어요. 성능을 높이려면 record_timestamp 열을 포함해 특정 시간 범위에 집중할 수 있어요. 또한 Amazon S3 콘솔의 범용 버킷 메타데이터(Metadata) 탭에 있는 메타데이터 구성 세부 정보 페이지에서 찾을 수 있는 정규화된(fully qualified) 테이블 이름을 사용하는 것을 권장해요. 다음은 지난 한 달간의 새 객체를 살펴보도록 이전 쿼리를 업데이트한 버전이에요.
SELECT key, object_tags['SensitivityLevel']
FROM b_general-purpose-bucket-name"."aws-s3.b_general-purpose-bucket-name.journal"
WHERE record_type = 'CREATE'
AND record_timestamp > (CURRENT_TIMESTAMP – interval '1' month)
GROUP BY object_tags['SensitivityLevel']
인벤토리 테이블 쿼리의 성능을 높이려면, 쿼리할 때 필요한 최소한의 열만 조회하도록 하세요.