핵심 요약
12PB 데이터 레이크 포맷 결정 — Iceberg, Delta Lake, Hudi 6개월 PoC. 최종 Iceberg + REST catalog. 멀티 엔진 호환, 명세 표준화, Spark·Trino·DuckDB·Flink 통합이 결정타. 단 Delta는 Databricks 통합에서 압승.
1. 비교
| 관점 | Iceberg | Delta | Hudi |
|---|---|---|---|
| 엔진 호환 | 다수 | Databricks 우선 | Spark+Flink |
| Time travel | ✅ | ✅ | ✅ |
| Schema evolution | 안전 | 안전 | 유연 |
| CDC | ✅ | CDF | ✅ 강점 |
| REST catalog | ✅ 표준 | UC 중심 | △ |
2. Iceberg REST catalog — 결정적
Polaris·Tabular(Apache) 같은 표준 REST catalog 구현. Spark·Trino·Flink·Snowflake가 모두 같은 catalog 조회. 잠금/버전 충돌도 catalog 단일 권한 모델로.
3. 비용
포맷 자체는 차이 거의 없음. 운영 + 도구 라이선스가 결정. Databricks 묶이면 Delta가 편하고, multi-cloud·multi-engine은 Iceberg.
4. 마이그레이션
Parquet 그대로 두고 metadata만 추가하는 register 패턴. 12PB를 in-place로 60시간에 정착.
5. 함정
- catalog 락 — 동시 write 많으면 commit conflict, snapshot isolation 한계 검증
- Hidden partitioning Iceberg 강점이나 잘못 쓰면 작은 파일 폭증
- compaction 정책 — 자동 vs 수동 trade-off, 일 단위 compact job 권장
- UDF 호환 — 엔진별 SQL 방언 차이, 표준 ANSI만 사용

댓글 0