Iceberg 테이블과 카탈로그
Apache Iceberg는 오픈 소스 테이블 형식입니다. 테이블 형식은 저장소의 여러 데이터 파일을 하나의 테이블로 읽고 쓰기 위한 규격이며, 열 구조와 변경 이력을 정의합니다. 여러 도구가 같은 규격으로 파일을 해석할 수 있습니다.
Iceberg 테이블에 접근할 때에는 보통 Iceberg 카탈로그도 사용합니다. 카탈로그는 어떤 테이블이 존재하고 각 테이블의 현재 파일이 어디에 있는지 기록합니다. 사용 도구는 개별 파일 위치를 직접 추적하지 않고 카탈로그에서 테이블을 찾습니다.
Foundry에서의 두 관리 방식
Foundry의 Iceberg 테이블은 표 형식 데이터를 표현하는 리소스 유형입니다. 일반 Foundry 데이터셋을 사용하는 대신 이 유형을 선택할 수 있습니다.
- 관리형 테이블은 Foundry의 Iceberg 카탈로그를 통해 관리합니다.
- 가상 테이블은 외부 카탈로그의 테이블을 참조합니다. 외부 카탈로그에는 AWS Glue, Snowflake Horizon Catalog, Apache Polaris, Databricks Unity Catalog 등이 있습니다.
테이블 형식과 카탈로그는 역할이 다릅니다. Iceberg 형식은 데이터 파일의 구조와 이력을 정의하고, 카탈로그는 테이블의 존재와 현재 위치를 찾는 역할을 합니다. 외부 Iceberg 테이블을 가상 테이블로 연결할 때에도 이 두 요소를 함께 확인합니다.