REORG TABLE
적용 대상: Databricks SQL Databricks Runtime 11.3 LTS 이상
ALTER TABLE DROP COLUMN에 의해 제거된 열 데이터와 같은 일시 제거된 데이터를 제거하기 위해 파일을 다시 작성하여 Delta Lake 테이블을 재구성합니다.
Syntax
REORG TABLE table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
참고 항목
APPLY (PURGE)
일시 삭제된 데이터가 포함된 파일만 다시 작성합니다.APPLY (UPGRADE)
는 모든 파일을 다시 쓸 수 있습니다.REORG TABLE
는 idempotent입니다. 즉, 동일한 데이터 세트에서 두 번 실행되는 경우 두 번째 실행은 효과가 없습니다.- 실행
APPLY (PURGE)
후 일시 삭제된 데이터는 이전 파일에 계속 존재할 수 있습니다. VACUUM을 실행하여 이전 파일을 실제로 삭제할 수 있습니다.
매개 변수
-
기존 델타 테이블을 식별합니다. 이름에는 임시 사양이 포함되지 않아야 합니다.
WHERE
predicate의 경우
APPLY (PURGE)
지정된 파티션 조건자와 일치하는 파일을 다시 구성합니다. 파티션 키 특성과 관련된 필터만 지원됩니다.APPLY (PURGE)
일시 제거된 데이터를 제거하기 위해 파일을 다시 쓰는 것임을 지정합니다. 데이터를 강제로 다시 작성하려면 메타데이터 전용 삭제 제거를 참조 하세요.
APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))
적용 대상: Databricks Runtime 14.3 이상
파일을 다시 작성하는 목적은 테이블을 지정된 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));