테이블 옵티마이저 API
테이블 옵티마이저 API는 컴팩션을 활성화하여 읽기 성능을 향상시키는 AWS Glue API를 설명합니다.
데이터 타입
TableOptimizer 구조
테이블과 관련된 옵티마이저에 대한 세부 정보가 들어 있습니다.
필드
-
type
– UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형. 유효한 값은 다음과 같습니다.
-
compaction
: 테이블 옵티마이저 압축 관리. -
retention
: 테이블 옵티마이저 스냅샷 보존 관리. -
orphan_file_deletion
: 테이블 옵티마이저 분리된 파일의 삭제 관리.
-
-
configuration
– TableOptimizerConfiguration 객체입니다.테이블 옵티마이저를 만들거나 업데이트할 때 지정된
TableOptimizerConfiguration
객체입니다. -
lastRun
– TableOptimizerRun 객체입니다.테이블 옵티마이저의 마지막 실행을 나타내는
TableOptimizerRun
객체입니다.
TableOptimizerConfiguration 구조
테이블 옵티마이저의 구성에 대한 세부 정보가 들어 있습니다. 테이블 옵티마이저를 만들거나 업데이트할 때 이 구성을 전달합니다.
필드
-
roleArn
– Single-line string pattern과 일치하는 UTF-8 문자열입니다(20~2,048바이트).호출자가 전달하는 역할로, 호출자를 대신하여 최적기와 관련된 리소스를 업데이트할 수 있는 권한을 서비스에 부여합니다.
-
enabled
– 부울입니다.테이블 최적화가 활성화되었는지 여부.
-
vpcConfiguration
– TableOptimizerVpcConfiguration 객체입니다.테이블 옵티마이저에 대한 구성을 나타내는
TableOptimizerVpcConfiguration
객체.이 구성은 고객 VPC에 있는 테이블에서 최적화를 수행하는 데 필요합니다.
-
retentionConfiguration
– RetentionConfiguration 객체입니다.스냅샷 보존 옵티마이저의 구성.
-
orphanFileDeletionConfiguration
– OrphanFileDeletionConfiguration 객체입니다.분리된 파일 삭제 옵티마이저의 구성.
TableOptimizerVpcConfiguration 구조
테이블 옵티마이저에 대한 VPC 구성을 설명하는 객체.
이 구성은 고객 VPC에 있는 테이블에서 최적화를 수행하는 데 필요합니다.
필드
-
glueConnectionName
– UTF-8 문자열입니다(최소 1바이트).테이블 옵티마이저에 대한 VPC에 사용되는 AWS Glue 연결의 이름.
TableOptimizerRun 구조
테이블 옵티마이저 실행에 대한 세부 정보가 들어 있습니다.
필드
-
eventType
– UTF-8 문자열입니다(유효한 값:starting="STARTING"
|completed="COMPLETED"
|failed="FAILED"
|in_progress="IN_PROGRESS"
).테이블 옵티마이저 실행 상태를 나타내는 이벤트 유형입니다.
-
startTimestamp
– 타임스탬프입니다.Lake Formation 내에서 압축 작업이 시작된 시점의 에포크 타임스탬프를 나타냅니다.
-
endTimestamp
– 타임스탬프입니다.컴팩션 작업이 종료된 에포크 타임스탬프를 나타냅니다.
-
metrics
– RunMetrics 객체입니다.옵티마이저 실행에 대한 메트릭이 포함된
RunMetrics
객체입니다.이 멤버는 더 이상 사용되지 않습니다. 압축, 보존 및 분리된 파일 삭제에 대해서는 개별 지표 구성원을 참조하세요.
-
error
– UTF-8 문자열입니다.옵티마이저 실행 중에 발생한 오류입니다.
-
compactionMetrics
– CompactionMetrics 객체입니다.옵티마이저 실행에 대한 메트릭이 포함된
CompactionMetrics
객체입니다. -
retentionMetrics
– RetentionMetrics 객체입니다.옵티마이저 실행에 대한 메트릭이 포함된
RetentionMetrics
객체입니다. -
orphanFileDeletionMetrics
– OrphanFileDeletionMetrics 객체입니다.옵티마이저 실행에 대한 메트릭이 포함된
OrphanFileDeletionMetrics
객체입니다.
BatchGetTableOptimizerEntry 구조
BatchGetTableOptimizer
작업에서 검색할 테이블 옵티마이저를 나타냅니다.
필드
-
catalogId
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
databaseName
– UTF-8 문자열입니다(최소 1바이트).테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
tableName
– UTF-8 문자열입니다(최소 1바이트).테이블의 이름
-
type
– UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형.
BatchTableOptimizer 구조
BatchGetTableOptimizer
작업에서 반환된 테이블 옵티마이저 중 하나에 대한 세부 정보가 들어 있습니다.
필드
-
catalogId
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
databaseName
– UTF-8 문자열입니다(최소 1바이트).테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
tableName
– UTF-8 문자열입니다(최소 1바이트).테이블의 이름
-
tableOptimizer
– TableOptimizer 객체입니다.테이블 옵티마이저의 구성 및 마지막 실행에 대한 세부 정보가 포함된
TableOptimizer
객체입니다.
BatchGetTableOptimizerError 구조
BatchGetTableOptimizer
작업에서 반환된 오류 목록의 오류 중 하나에 대한 세부 정보가 들어 있습니다.
필드
-
error
– ErrorDetail 객체입니다.오류에 대한 코드 및 메시지 세부 정보가 포함된
ErrorDetail
객체입니다. -
catalogId
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
databaseName
– UTF-8 문자열입니다(최소 1바이트).테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
tableName
– UTF-8 문자열입니다(최소 1바이트).테이블의 이름
-
type
– UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형.
RetentionConfiguration 구조
스냅샷 보존 옵티마이저의 구성.
필드
-
icebergConfiguration
– IcebergRetentionConfiguration 객체입니다.Iceberg 스냅샷 보존 옵티마이저의 구성.
IcebergRetentionConfiguration 구조
Iceberg 스냅샷 보존 옵티마이저의 구성.
필드
-
snapshotRetentionPeriodInDays
- 숫자(정수)입니다.Iceberg 스냅샷을 보존하는 기간(일). 입력이 없으면 해당 Iceberg 테이블 구성 필드가 사용되거나 필드가 없는 경우 기본값 5가 사용됩니다.
-
numberOfSnapshotsToRetain
- 숫자(정수)입니다.보존 기간 내에 유지해야 하는 Iceberg 스냅샷의 수. 입력이 없으면 해당 Iceberg 테이블 구성 필드가 사용되거나 필드가 없는 경우 기본값 1이 사용됩니다.
-
cleanExpiredFiles
– 부울입니다.false로 설정하면 스냅샷은 테이블 메타데이터에서만 삭제되고, 그에 속한 데이터 및 메타데이터 파일은 삭제되지 않습니다.
OrphanFileDeletionConfiguration 구조
분리된 파일 삭제 옵티마이저의 구성.
필드
-
icebergConfiguration
– IcebergOrphanFileDeletionConfiguration 객체입니다.Iceberg 분리된 파일 삭제 옵티마이저의 구성.
IcebergOrphanFileDeletionConfiguration 구조
Iceberg 분리된 파일 삭제 옵티마이저의 구성.
필드
-
orphanFileRetentionPeriodInDays
- 숫자(정수)입니다.파일이 삭제되기 전까지 분리된 파일이 보존되어야 하는 기간(일). 입력이 없으면 기본값 3이 사용됩니다.
-
location
– UTF-8 문자열입니다.파일을 찾을 디렉터리를 지정합니다(기본값은 테이블 위치). 최상위 테이블 위치 대신 하위 디렉터리를 선택할 수 있습니다.
CompactionMetrics 구조
옵티마이저 실행에 대한 압축 지표가 포함된 구조.
필드
-
IcebergMetrics
– IcebergCompactionMetrics 객체입니다.옵티마이저 실행에 대한 Iceberg 압축 지표가 포함된 구조.
RetentionMetrics 구조
옵티마이저 실행에 대한 보존 지표가 포함된 구조.
필드
-
IcebergMetrics
– IcebergRetentionMetrics 객체입니다.옵티마이저 실행에 대한 Iceberg 보존 지표가 포함된 구조.
OrphanFileDeletionMetrics 구조
옵티마이저 실행에 대한 분리된 파일 삭제 지표가 포함된 구조.
필드
-
IcebergMetrics
– IcebergOrphanFileDeletionMetrics 객체입니다.옵티마이저 실행에 대한 Iceberg 분리된 파일 삭제 지표가 포함된 구조.
IcebergCompactionMetrics 구조
옵티마이저 실행에 대한 Iceberg 압축 지표.
필드
-
NumberOfDpus
- 숫자(정수).작업에 사용된 DPU 시간.
-
JobDurationInHour
- 숫자(double)입니다.작업 기간(시간).
IcebergRetentionMetrics 구조
옵티마이저 실행에 대한 Iceberg 스냅샷 보존 지표.
필드
-
NumberOfDpus
- 숫자(정수).작업에 사용된 DPU 시간.
-
JobDurationInHour
- 숫자(double)입니다.작업 기간(시간).
IcebergOrphanFileDeletionMetrics 구조
옵티마이저 실행에 대한 Iceberg 분리된 파일 삭제 지표.
필드
-
NumberOfDpus
- 숫자(정수).작업에 사용된 DPU 시간.
-
JobDurationInHour
- 숫자(double)입니다.작업 기간(시간).
RunMetrics 구조
옵티마이저 실행에 대한 지표.
이 구조는 더 이상 사용되지 않습니다. 압축, 보존 및 분리된 파일 삭제에 대해서는 개별 지표 구성원을 참조하세요.
필드
-
NumberOfBytesCompacted
– UTF-8 문자열입니다.압축 작업 실행으로 제거된 바이트 수입니다.
-
NumberOfFilesCompacted
– UTF-8 문자열입니다.압축 작업 실행으로 제거된 파일 수입니다.
-
NumberOfDpus
– UTF-8 문자열입니다.작업에 사용된 DPU 시간.
-
JobDurationInHour
– UTF-8 문자열입니다.작업 기간(시간).
운영
GetTableOptimizer 작업 (Python: get_table_optimizer)
지정된 테이블과 관련된 모든 옵티마이저의 구성을 반환합니다.
요청
-
CatalogId
– 필수: Single-line string pattern과 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
DatabaseName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
TableName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블의 이름
-
Type
– 필수: UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형.
응답
-
CatalogId
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
DatabaseName
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
TableName
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블의 이름
-
TableOptimizer
– TableOptimizer 객체입니다.지정된 테이블에 연결된 옵티마이저입니다.
오류
EntityNotFoundException
InvalidInputException
AccessDeniedException
InternalServiceException
ThrottlingException
BatchGetTableOptimizer 작업 (Python: batch_get_table_optimizer)
지정된 테이블 옵티마이저의 구성을 반환합니다.
요청
-
Entries
– 필수(Required): BatchGetTableOptimizerEntry 객체의 배열입니다.검색할 테이블 옵티마이저를 지정하는
BatchGetTableOptimizerEntry
객체 목록입니다.
응답
-
TableOptimizers
– BatchTableOptimizer 객체의 배열입니다.BatchTableOptimizer
객체의 목록. -
Failures
– BatchGetTableOptimizerError 객체의 배열입니다.작업의 오류 목록.
오류
EntityNotFoundException
InvalidInputException
AccessDeniedException
InternalServiceException
ThrottlingException
ListTableOptimizerRuns 작업 (Python: list_table_optimizer_runs)
특정 테이블에 대한 이전 옵티마이저 실행 기록을 나열합니다.
요청
-
CatalogId
– 필수: Single-line string pattern과 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
DatabaseName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
TableName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블의 이름
-
Type
– 필수: UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형.
-
MaxResults
- 숫자(정수)입니다.각 호출에서 반환되는 옵티마이저 실행의 최대 수입니다.
-
NextToken
– UTF-8 문자열입니다.이것이 지속적으로 호출되면 지속적인 토큰입니다.
응답
-
CatalogId
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
DatabaseName
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
TableName
– Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블의 이름
-
NextToken
– UTF-8 문자열입니다.목록의 현재 세그먼트가 마지막이 아니면 반환된 옵티마이저 실행 목록에 페이지를 매기는 지속적인 토큰은 반환됩니다.
-
TableOptimizerRuns
– TableOptimizerRun 객체의 배열입니다.테이블에 연결된 옵티마이저 실행 목록입니다.
오류
EntityNotFoundException
AccessDeniedException
InvalidInputException
ValidationException
InternalServiceException
ThrottlingException
CreateTableOptimizer 작업 (Python: create_table_optimizer)
특정 함수에 대한 새 테이블 옵티마이저를 생성합니다.
요청
-
CatalogId
– 필수: Single-line string pattern과 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
DatabaseName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
TableName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블의 이름
-
Type
– 필수: UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형.
-
TableOptimizerConfiguration
– 필수(Required): TableOptimizerConfiguration 객체입니다.테이블 옵티마이저의 구성을 나타내는
TableOptimizerConfiguration
객체입니다.
응답
무응답 파라미터.
오류
EntityNotFoundException
ValidationException
InvalidInputException
AccessDeniedException
AlreadyExistsException
InternalServiceException
ThrottlingException
DeleteTableOptimizer 작업 (Python: delete_table_optimizer)
테이블의 옵티마이저 및 모든 관련 메타데이터를 삭제합니다. 최적화는 더 이상 테이블에서 수행되지 않습니다.
요청
-
CatalogId
– 필수: Single-line string pattern과 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
DatabaseName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
TableName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블의 이름
-
Type
– 필수: UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형.
응답
무응답 파라미터.
오류
EntityNotFoundException
InvalidInputException
AccessDeniedException
InternalServiceException
ThrottlingException
UpdateTableOptimizer 작업 (Python: update_table_optimizer)
기존 테이블 옵티마이저의 구성을 업데이트합니다.
요청
-
CatalogId
– 필수: Single-line string pattern과 일치하는 1~255바이트 길이의 카탈로그 ID 문자열입니다.테이블의 카탈로그 ID.
-
DatabaseName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블이 있는 카탈로그의 데이터베이스 이름입니다.
-
TableName
– 필수(Required): Single-line string pattern과(와) 일치하는 1~255바이트 길이의 UTF-8 문자열입니다.테이블의 이름
-
Type
– 필수: UTF-8 문자열입니다(유효한 값:compaction="COMPACTION"
|retention="RETENTION"
|orphan_file_deletion="ORPHAN_FILE_DELETION"
).테이블 옵티마이저 유형.
-
TableOptimizerConfiguration
– 필수(Required): TableOptimizerConfiguration 객체입니다.테이블 옵티마이저의 구성을 나타내는
TableOptimizerConfiguration
객체입니다.
응답
무응답 파라미터.
오류
EntityNotFoundException
InvalidInputException
AccessDeniedException
ValidationException
InternalServiceException
ThrottlingException
ConcurrentModificationException