피드로 돌아가기
Apache Data Lakehouse Weekly: May 21-27, 2026
Dev.toDev.to
Database

REST Catalog 표준화를 통한 Iceberg 생태계의 상호운용성 및 확장성 확보

Apache Data Lakehouse Weekly: May 21-27, 2026

Alex Merced2026년 5월 27일16advanced

Context

기존 Iceberg REST Catalog는 테이블 등록 해제 시 데이터와 메타데이터가 동시에 삭제되는 제약으로 인해 카탈로그 간 마이그레이션 및 소유권 이전 시 데이터 손실 위험 존재. 또한 다양한 클라이언트 구현체 간의 기능 지원 범위 차이로 인한 서버 응답 불일치 및 버전 호환성 관리의 어려움 발생.

Technical Solution

  • 데이터 및 메타데이터 보존 상태에서 테이블 등록만 제거하는 unregister 엔드포인트를 REST spec에 추가하여 안전한 카탈로그 마이그레이션 구조 설계
  • X-Iceberg-Client-Capabilities 헤더를 도입하여 클라이언트 지원 기능을 서버에 광고하고 서버가 이에 맞게 응답을 최적화하는 Negotiation 메커니즘 구현
  • Encryption 로직을 Iceberg Core에서 Catalog Layer로 이전하여 데이터 저장소와 독립적인 암호화 관리 체계 구축
  • OpenTelemetry 기반 MetricsReporter를 iceberg-core에 통합하여 ScanReport 및 CommitReport 데이터를 표준 OTLP 백엔드로 전송하는 관측성 파이프라인 설계
  • Java Reference 구현체와 독립적으로 Go, C++, Python 라이브러리를 병렬 릴리스하는 Decoupled Implementation 전략 채택

- 분산 시스템의 API 설계 시, 리소스의 완전 삭제와 등록 해제(Unregister)를 분리하여 마이그레이션 안전성 확보 여부 검토 - 클라이언트-서버 간 기능 격차 해결을 위해 Capability-based Negotiation 헤더 도입 고려 - 벤더 종속적인 메트릭 인터페이스 대신 OpenTelemetry와 같은 업계 표준 프로토콜을 통한 관측성 통합 추진 - 다국어 라이브러리 지원 시 메인 언어의 릴리스 사이클에 종속되지 않는 독립적인 릴리스 파이프라인 구축

원문 읽기