Delta Lake 테이블 최적화

Microsoft Fabric로 데이터 변환 및 분석

Luis Silva

Solution Architect - Data & AI

Delta Lake란?

  • 레이크하우스를 위한 오픈 소스 스토리지 레이어
  • ACID 트랜잭션, 메타데이터 처리, 버전 관리
  • Fabric은 표준으로 Delta Lake 테이블 형식(Parquet) 사용
  • Fabric 전반에서 상호 운용성 제공

데이터가 Delta Lake 테이블로 적재·저장되고 Power BI로 쿼리되는 Fabric 아키텍처 다이어그램

Microsoft Fabric로 데이터 변환 및 분석

테이블 유지 관리

  • Delta 테이블 상태 유지
  • 테이블 유지 관리 작업:
    • Optimize
    • V-Order
    • Vacuum
Microsoft Fabric로 데이터 변환 및 분석

Optimize

  • 여러 작은 Parquet 파일을 큰 파일로 병합
    • 권장 파일 크기: 128MB~1GB
    • 압축·분산 향상으로 읽기 효율 증가
    • 대용량 테이블 적재 후 최적화 권장

여러 작은 Parquet 파일이 두 개의 큰 Parquet 파일로 최적화되고 원본 파일은 비활성으로 남는 다이어그램

Microsoft Fabric로 데이터 변환 및 분석

Optimize

  • 여러 작은 Parquet 파일을 큰 파일로 병합
    • 권장 파일 크기: 128MB~1GB
    • 압축·분산 향상으로 읽기 효율 증가
    • 대용량 테이블 적재 후 최적화 권장

여러 작은 Parquet 파일이 두 개의 큰 Parquet 파일로 최적화되고 원본 파일은 비활성으로 남는 다이어그램

Microsoft Fabric로 데이터 변환 및 분석

Lakehouse 탐색기에서 Optimize 실행

Lakehouse 탐색기에서 Maintenance 명령의 Run OPTIMIZE command 옵션을 강조한 스크린샷

Microsoft Fabric로 데이터 변환 및 분석

Spark SQL에서 Optimize 실행

%%sql
OPTIMIZE <lakehouse>.<table>;
Microsoft Fabric로 데이터 변환 및 분석

PySpark에서 Optimize 실행

from delta.tables import DeltaTable

dt = DeltaTable.forPath( spark, "Tables/<table>" )
dt.optimize().executeCompaction()
Microsoft Fabric로 데이터 변환 및 분석

V-Order

  • Parquet 작성 시 적용되는 특수 최적화
  • 기본값: 사용됨
Microsoft Fabric로 데이터 변환 및 분석

Lakehouse 탐색기에서 V-Order 적용

Lakehouse 탐색기에서 Maintenance 명령의 Apply V-ORDER 옵션을 강조한 스크린샷

Microsoft Fabric로 데이터 변환 및 분석

Apache Spark 세션에서 V-Order 제어

  • 세션에서 V-Order 활성화

    %%sql 
    SET spark.sql.parquet.vorder.enabled=TRUE
    

     

  • 세션에서 V-Order 비활성화

    %%sql 
    SET spark.sql.parquet.vorder.enabled=FALSE
    
Microsoft Fabric로 데이터 변환 및 분석

테이블 최적화 시 V-Order 적용

%%sql 
OPTIMIZE <table|fileOrFolderPath> VORDER;
Microsoft Fabric로 데이터 변환 및 분석

Vacuum

  • 보존 임계값보다 오래되고 불필요한 파일 제거
  • 클라우드 스토리지 비용 절감

두 개의 활성 큰 Parquet 파일과 여러 비활성 작은 Parquet 파일로 구성된 레이크하우스 테이블이 Vacuum 후 오래된 파일이 제거되는 다이어그램

Microsoft Fabric로 데이터 변환 및 분석

Vacuum

  • 보존 임계값보다 오래되고 불필요한 파일 제거
  • 클라우드 스토리지 비용 절감

두 개의 활성 큰 Parquet 파일과 여러 비활성 작은 Parquet 파일로 구성된 레이크하우스 테이블이 Vacuum 후 오래된 파일이 제거되는 다이어그램

Microsoft Fabric로 데이터 변환 및 분석

Lakehouse 탐색기에서 Vacuum 실행

Lakehouse 탐색기에서 Maintenance 명령의 Run VACUUM 옵션을 강조한 스크린샷

Microsoft Fabric로 데이터 변환 및 분석

연습해 봅시다!

Microsoft Fabric로 데이터 변환 및 분석

Preparing Video For Download...