동적 파일 정리

동적 파일 정리는 Delta Lake 테이블에서 많은 쿼리의 성능을 크게 향상시킬 수 있습니다. 동적 파일 정리는 분할되지 않은 테이블 또는 분할되지 않은 열의 조인에 특히 효율적입니다. 동적 파일 정리의 성능 영향은 종종 데이터 클러스터링과 관련이 있으므로 Z-Ordering을 사용하여 이점을 최대화하는 것이 좋습니다.

Important

Photon 지원 컴퓨팅을 사용하여 , UPDATEDELETE 문에서 MERGE동적 파일 정리를 사용해야 합니다. Photon을 사용하지 않는 경우 문만 SELECT 동적 파일 정리를 활용합니다.

동적 파일 정리에 대한 배경 및 사용 사례는 동적 파일 정리를 사용하여 Delta Lake에서 더 빠른 SQL 쿼리를 참조하세요.

구성

동적 파일 정리는 다음 Apache Spark 구성 옵션에 의해 제어됩니다.

  • spark.databricks.optimizer.dynamicFilePruning(기본값: true): 최적화 프로그램이 필터를 푸시다운하도록 지시하는 기본 플래그입니다. false로 설정하면 동적 파일 정리가 적용되지 않습니다.
  • spark.databricks.optimizer.deltaTableSizeThreshold(기본값: 10,000,000,000 bytes (10 GB)): 동적 파일 정리를 트리거하는 데 필요한 조인의 프로브 쪽에 있는 Delta 테이블의 최소 크기(바이트)를 나타냅니다. 프로브 쪽이 매우 크지 않은 경우 필터를 푸시하는 것은 가치가 없으며 전체 테이블을 검사하기만 하면 됩니다. DESCRIBE DETAIL table_name 명령을 실행한 다음, sizeInBytes 열을 확인하여 Delta 테이블의 크기를 찾을 수 있습니다.
  • spark.databricks.optimizer.deltaTableFilesThreshold (기본값: 10동적 파일 정리를 트리거하는 데 필요한 조인의 프로브 쪽에 있는 델타 테이블의 파일 수를 나타냅니다. 프로브 쪽 테이블에 임계값보다 적은 파일이 포함된 경우 동적 파일 정리가 트리거되지 않습니다. 테이블에 파일이 몇 개만 있는 경우 동적 파일 정리를 활성화하는 것이 좋지 않을 수 있습니다. DESCRIBE DETAIL table_name 명령을 실행한 다음, numFiles 열을 확인하여 Delta 테이블의 크기를 찾을 수 있습니다.