델타 레이크 (Delta Lake)

1. 델타 레이크 (Delta Lake)의 개요

(1) 데이터 레이크의 문제점 및 델타 레이크의 필요성

(2) 델타 레이크의 개념 및 특징

개념데이터 레이크의 Lakehouse 구축 위해 ACID 트랜잭션, 메타데이터 처리, 스트리밍 기반 다양한 형식의 데이터를 저장하는 스토리지 프레임워크
특징데이터 신뢰성 보장빅데이터 워크로드에 대한 ACID 직렬 트랜잭션 기반 데이터 무결성, 신뢰성 보장
확장 가능 메타데이터 처리Spark 분산 처리 기반 페타바이트 규모 테이블의 메타데이터 처리 및 유연한 작업 가능
데이터 시점 재현 가능모든 변경에 대한 마스터 레코드를 제공하여 특정 시점의 정확한 데이터 상태 재현 가능
스키마 규정 준수 강제데이터 일관성을 보호하여 데이터 완전성 보장 및 중요 프로세스 손상 방지
UPSERT 및 DELETE스트리밍 UPSERT, 변경 데이터 캡처, SCD 등 컴플라이언스 및 DML 작업 지원
  • 이외에도 최근 데이터 레이크의 비효율적 파티셔닝, 다수 작은 파일로 인한 성능 저하 문제점을 델타 레이크를 통해 문제점 해결

 

2. 델타 레이크 멀티 홉 아키텍처 및 주요 기술

(1) 델타 레이크 멀티 홉 아키텍처

Bronze Layer– 원시 데이터를 Streaming, Batch Workflow 기반 Data Lake 저장소에 적재
– 원시 데이터는 처리를 위해 개방형 트랜잭션 Delta Lake 형식으로 변환
Silver Layer– Bronze Layer의 원시 데이터를 ETL 및 Streaming 처리 작업 수행
– 데이터를 Silver 큐레이팅 데이터 세트로 필터링, 정리, 변환, 조인, 집계 처리
Gold Layer– Silver Layer를 통해 생성된 테이블에는 분석, 보고에 사용 가능한 데이터 포함
– BI, 머신 러닝, 제품 추천, 마케팅/영업 분석 등의 비즈니스 레벨 데이터를 적재

(2) 델타 레이크 구현을 위한 주요 기술

구분구현 위한 주요 기술역할
데이터
신뢰성
보장 측면
ACID 트랜잭션원자성, 일관성, 독립성, 영속성 기반 논리적 단위 연산
메타데이터 처리Spark 활용 메타데이터 처리확장, 다수 메타데이터 처리
Audit history스냅샷 기반 특정 시점 액세스, 과거 시점 rollback
복잡한
Use Case
지원 측면
CDC (Change Data Capture)트랜잭션 발생 시 변경 로그 추출하여 대상 DB에 반영
SCD (Slowly Changing Dimension)시간 경과에 따른 현재와 과거 데이터를 저장 및 관리
스트리밍 UPSERT스트리밍 쿼리에서 INSERT/UPDATE 자동 선택 수행
  • 스트리밍 및 배치 워크플로우로 수집된 다양한 유형의 원시 데이터를 하둡, 오브젝트 스토리지 등에 저장하고 3단계 멀티 홉 아키텍처 파이프라인을 통해 데이터를 개선하여 최종 사용자에 제공

 

3. 델타레이크 기반 레이크하우스와 데이터 레이크 비교

비교 항목델타 레이크 기반 레이크 하우스데이터 레이크
데이터 일관성ACID 기반 데이터 일관성 보장데이터 일관성 보장 어려움
데이터 접근 속도Parquet 경로 기반 고속 접근모든 파일 나열하여 속도 저하
데이터 버전 관리데이터 버전 관리, 특정 시점 접근 가능데이터 버전 관리 불가
스키마 적용스키마 적용 보장, 데이터 손상 방지스키마 적용 보장 어려움
Z-Ordering유사 데이터 근접 저장, 성능 향상유사 데이터 근접 저장 없음
  • 데이터 레이크는 다양한 형식의 데이터 저장 및 쿼리 필요 시 선택 가능하며, 데이터 레이크 기반의 데이터 신뢰성이나 버전 관리, 고성능 데이터 접근성 필요 시 델타 레이크 선택 권장

 
[참고]

  • databricks, The Data Team’s Guide to the Databricks Lakehouse Platform
  • databricks, Delta Lake: High-Performance ACID Table Storage over Cloud Object Stores
  • HPE, Delta Lake란
  • Pure Storage, What Is Delta Lake? An Overview

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^