다음을 통해 공유


REORG TABLE

적용 대상:체크 표시된 예 Databricks SQL 체크 표시된 예 Databricks Runtime 11.3 LTS 이상

파일을 다시 작성하여 일시 삭제된 데이터(예: ALTER TABLE DROP COLUMN삭제된 열 데이터)를 제거하여 Delta Lake 테이블을 다시 구성합니다.

구문

REORG [ TABLE ] table_name { [ WHERE predicate ] APPLY ( PURGE ) |
                             APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )

15.4 TABLE 이전 Databricks 런타임 버전의 경우 필수 키워드입니다.

참고

  • APPLY (PURGE) 일시 삭제된 데이터가 포함된 파일만 다시 작성합니다.
  • APPLY (UPGRADE) 는 모든 파일을 다시 쓸 수 있습니다.
  • REORG TABLEidempotent입니다. 즉, 동일한 데이터 세트에서 두 번 실행되는 경우 두 번째 실행은 효과가 없습니다.
  • 실행 APPLY (PURGE)후 일시 삭제된 데이터는 이전 파일에 계속 존재할 수 있습니다. VACUUM 실행하여 이전 파일을 물리적으로 삭제할 수 있습니다.

매개 변수

  • table_name

    기존 델타 테이블을 식별합니다. 이름에는 임시 사양 또는 옵션 사양이 포함되어서는 안됩니다.

  • WHERE 술어

    APPLY (PURGE)경우 지정된 파티션 조건자와 일치하는 파일을 다시 구성합니다. 파티션 키 특성과 관련된 필터만 지원됩니다.

  • APPLY (PURGE)

    일시 제거된 데이터를 제거하기 위해 파일을 다시 쓰는 것임을 지정합니다. 데이터를 강제로 다시 작성하려면 메타데이터 전용 삭제 제거를 참조하세요.

  • APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))

    적용 대상:적용됨 Databricks SQL 적용됨 Databricks Runtime 14.3 이상

    파일 다시 쓰기의 목적은 지정된 Apache Iceberg 버전으로 테이블을 업그레이드하는 것입니다. version1 또는 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));
  • 진공 사용하여 사용하지 않는 데이터 파일 제거