REORG TABLE
적용 대상: Databricks SQL Databricks Runtime 11.3 LTS 이상
Delta Lake table을(를) 재구성하기 위해 ALTER TABLE DROP COLUMN로 삭제된 column 데이터와 같은 소프트 삭제된 데이터를 제거하고 파일을 재작성합니다.
구문
REORG [ TABLE ] table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
15.4 TABLE
이전 Databricks 런타임 버전의 경우 필수 키워드입니다.
참고 항목
-
APPLY (PURGE)
일시 삭제된 데이터가 포함된 파일만 다시 작성합니다. -
APPLY (UPGRADE)
는 모든 파일을 다시 쓸 수 있습니다. -
REORG TABLE
는 idempotent입니다. 즉, 동일한 데이터 세트에서 두 번 실행되는 경우 두 번째 실행은 효과가 없습니다. - 실행
APPLY (PURGE)
후 일시 삭제된 데이터는 이전 파일에 계속 존재할 수 있습니다. VACUUM 실행하여 이전 파일을 물리적으로 삭제할 수 있습니다.
Parameters
-
기존 Delta table을 식별합니다. 이름에는 임시 사양 또는 옵션 사양이 포함되어서는 안됩니다.
WHERE
predicateAPPLY (PURGE)
경우 지정된 partition 조건자와 일치하는 파일을 다시 구성합니다. partition 키 특성과 관련된 필터만 지원됩니다.APPLY (PURGE)
일시 제거된 데이터를 제거하기 위해 파일을 다시 쓰는 것임을 지정합니다. 데이터를 강제로 다시 작성하려면 메타데이터 전용 삭제 제거를 참조 하세요.
APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))
적용 대상: Databricks SQL Databricks Runtime 14.3 이상
파일 다시 쓰기의 목적은 table을 지정된 Iceberg 버전으로 업그레이드하는 것입니다.
version
은 (0) 중 하나1
여야 합니다2
.
예제
> REORG TABLE events APPLY (PURGE);
> REORG TABLE events WHERE date >= '2022-01-01' APPLY (PURGE);
> REORG TABLE events
WHERE date >= current_timestamp() - INTERVAL '1' DAY
APPLY (PURGE);
> REORG TABLE events APPLY (UPGRADE UNIFORM(ICEBERG_COMPAT_VERSION=2));