1. 개요
- 데이터 레이크하우스는 기존 데이터 레이크의 유연성과 데이터 웨어하우스의 관리 및 성능을 통합한 아키텍처
- 구조적, 비구조적 데이터를 단일 플랫폼에서 관리하고 분석할 수 있는 최신 데이터 관리 접근 방식
- 데이터 레이크의 데이터 저장 자유도를 유지하면서 ACID 트랜잭션, 스키마 관리, 데이터 품질 확보를 지원하는 것이 핵심
- 대표적 기술로 Delta Lake와 Apache Iceberg 존재
2. 데이터 레이크하우스 등장 배경
1. 기존 데이터 아키텍처 한계
- 데이터 웨어하우스 한계
- 구조화된 데이터 중심, 비구조화 데이터 관리 곤란
- 스키마 변경 시 높은 비용과 긴 작업시간 소요
- 확장성 제한, 비용 증가 문제 발생
- 데이터 레이크 한계
- 자유로운 데이터 저장 가능하나 데이터 관리 미흡
- 일관성 부족, 품질 및 신뢰성 문제 발생
- 데이터 거버넌스와 스키마 관리 미비로 데이터 분석 효율성 저하
2. 레이크하우스 필요성 대두
- 데이터 관리와 데이터 분석의 균형 유지 요구 증가
- 데이터 품질, 거버넌스 확보와 데이터 분석의 민첩성 동시에 달성 필요
- 비용 효율적이고 확장 가능한 아키텍처 요구
3. 데이터 레이크하우스 핵심 특징
- ACID 트랜잭션 지원
- 데이터 무결성과 일관성 보장
- 동시성 관리 및 복구 기능 지원
- 스키마 관리
- 스키마 적용 및 진화 관리 자동화
- 데이터 분석 과정에서의 안정적이고 신속한 변경 지원
- 메타데이터 관리 및 데이터 거버넌스
- 데이터 카탈로그를 통한 효율적인 데이터 검색 및 활용 지원
- 데이터 접근 제어 및 감사 기능 제공
- 고성능 분석 지원
- 데이터 레이크 내 데이터에 대한 고성능 질의 엔진 활용 가능
- 최적화된 파일 포맷 및 인덱스 제공으로 성능 개선
4. Delta Lake 아키텍처 상세
1. Delta Lake 개요
- Databricks에서 개발한 오픈소스 기반의 데이터 레이크 스토리지 계층 기술
- Apache Spark 기반 데이터 처리를 통해 성능 및 효율성 제고 목적
- 데이터 레이크에 데이터 웨어하우스의 관리적 특성 추가하여 일관성 보장
2. Delta Lake 주요 특징
- ACID 트랜잭션 지원
- 데이터 추가, 수정, 삭제 작업에서 무결성과 원자성 보장
- 버전 관리 및 시간 여행(Time Travel) 기능
- 과거 특정 시점의 데이터 접근 가능
- 데이터 복구, 분석 재현성 확보에 유리
- 스키마 진화 및 강제화
- 데이터 쓰기 시 자동 스키마 검사 수행
- 스키마 변경 시 데이터 처리 자동화 및 안정성 유지
- 데이터 최적화
- 데이터 파티셔닝, Z-Ordering 등 최적화 기법 제공
- 데이터 읽기 성능 향상 목적
3. Delta Lake 구조 및 구성요소
- Delta Table
- 데이터 파일(Parquet 형식) 및 트랜잭션 로그로 구성
- 로그를 통해 데이터 변경 내역 관리 및 일관성 유지
- 트랜잭션 로그(Transaction Log)
- JSON 형식으로 저장된 로그 파일을 통해 데이터 변경 이력 저장
- 장애 발생 시 데이터 복구 가능
- 메타데이터 관리
- 데이터 카탈로그를 통해 테이블 및 데이터 자산 관리
5. Apache Iceberg 아키텍처 상세
1. Apache Iceberg 개요
- Netflix에서 개발하여 Apache Software Foundation에 기증된 오픈소스 기술
- 데이터 레이크의 테이블 형식 및 메타데이터 관리 계층 제공
- 다양한 분석 엔진(Spark, Flink, Presto, Hive 등)과 호환성 뛰어남
2. Apache Iceberg 주요 특징
- ACID 트랜잭션 지원
- 동시 데이터 처리 및 원자적 연산 보장
- 데이터 변경의 일관성과 안정성 확보
- 테이블 스키마 관리
- 명확한 스키마 정의 및 관리 제공
- 스키마 변경 및 진화 용이
- 풍부한 메타데이터 지원
- 메타데이터 파일로 구성되어 효율적인 데이터 조회 및 관리 지원
- 다양한 엔진에서 메타데이터 공유 가능
- 성능 최적화 및 관리
- 데이터 파일 레이아웃 최적화를 통한 쿼리 성능 향상
- 인크리멘털 데이터 스냅샷을 통해 데이터 읽기 성능 향상
3. Apache Iceberg 구조 및 구성요소
- 테이블 포맷 및 메타데이터
- Manifest 파일과 Metadata 파일로 구성되어 데이터 변경사항 기록 및 관리
- Snapshot을 통한 과거 데이터 접근성 확보
- 매니페스트(Manifest) 파일
- 데이터 파일 목록 및 데이터 파티션 정보 저장
- 데이터 파일 접근 최적화 및 관리 용이성 제공
- 메타데이터(Metadata) 파일
- 테이블 구조, 스키마 정보 등 저장하여 엔진 독립적 사용 가능
6. Delta Lake와 Apache Iceberg 비교 분석
비교 항목 | Delta Lake | Apache Iceberg |
---|---|---|
트랜잭션 관리 | 트랜잭션 로그 중심 | 스냅샷 기반의 Manifest 관리 |
메타데이터 구조 | JSON 기반 로그 파일 | Avro/Parquet 기반의 Manifest 파일 |
엔진 호환성 | Spark 중심 지원 | 다양한 엔진 지원 (Spark, Flink, Presto 등) |
스키마 관리 | 엄격한 스키마 적용 및 진화 관리 | 유연한 스키마 진화 지원 및 관리 |
성능 최적화 | Z-Ordering 등 성능 최적화 지원 | 파일 레이아웃 및 최적화된 Manifest 기반 쿼리 최적화 |
7. 적용 효과 및 활용 방안
- 데이터 품질 및 무결성 확보를 통한 신뢰성 높은 데이터 제공
- 데이터 분석 속도 및 효율성 향상으로 비즈니스 의사 결정 시간 단축
- 다양한 데이터 분석 환경과의 호환성 및 효율적 데이터 관리로 비용 절감 및 운영 효율 증대
- 빅데이터 플랫폼 구축 시 데이터 레이크하우스를 기반으로 통합 데이터 분석 환경 구축 가능
8. 결론 및 향후 전망
- 데이터 레이크하우스 아키텍처의 등장으로 데이터 관리 및 분석 패러다임 전환 본격화
- 향후 다양한 분석 환경과 기술이 결합하여 데이터 관리의 유연성과 효율성 지속적 향상 기대
- Delta Lake 및 Apache Iceberg 외 추가적 기술의 등장 및 발전 예상
- 데이터 아키텍처의 표준화 및 데이터 거버넌스의 중요성 더욱 확대 전망
'IT Study > 데이터베이스 및 데이터 처리' 카테고리의 다른 글
🗂️ 데이터 프라이버시 보호를 위한 Synthetic Data 생성 기술 (0) | 2025.04.04 |
---|---|
🗂️ 데이터 일관성 및 거버넌스를 위한 Policy-as-Code (0) | 2025.04.03 |
🗂️ 데이터 옵스(DataOps) (0) | 2025.04.01 |
🗂️ 벡터 DB(Vector Database) (1) | 2025.04.01 |
🗂️ 관계형 데이터베이스(RDBMS) (0) | 2025.03.28 |