Lakehouse 런타임 카탈로그는 자체 호스팅 Hive 메타스토어 관리를 간소화하는 서버리스 통합 메타스토어입니다. 이 단일의 완전 관리형 메타데이터 레이어를 사용하면 오픈소스 워크로드에 별도의 메타데이터 저장소가 필요하지 않습니다. Apache Spark, Apache Hive, BigQuery에서 데이터를 원활하게 공유할 수 있습니다.
Apache Spark ExternalCatalog 호환성에 최적화된 이 통합은 Hive Metastore 인터페이스의 하위 집합을 지원합니다. 워크로드가 트랜잭션, 압축, Kerberos와 같은 지원되지 않는 기능에 종속되는지 확인하려면 기능 비교 및 제한사항을 검토하세요.
Hive가 Lakehouse 런타임 카탈로그와 통합되는 방식
Hive 메타스토어 엔드포인트는 Apache Iceberg 테이블이 아닌 Hive SerDes 또는 Spark 데이터 소스를 사용하여 표준 Apache Hive 및 Spark 테이블을 관리합니다. Spark 작업을 이 엔드포인트에 연결하는 작업을 간소화하기 위해 Managed Service for Apache Spark 이미지는 필요한 클라이언트 라이브러리 및 종속 항목으로 사전 구성됩니다.
다음 시퀀스는 Spark가 메타스토어에 연결되는 방식을 설명합니다.
- Apache Spark는 표준 Apache Hive
IMetastoreClient인터페이스를 사용하여 외부 메타데이터 카탈로그에 연결합니다. - Lakehouse 런타임 카탈로그는 Spark 및 Hive 메타데이터에 완전 관리형 메타스토어 서비스를 제공하기 위해 커스텀
IMetastoreClient를 구현합니다. - 사전 구성된 Managed Service for Apache Spark 런타임은 이 커스텀 클라이언트를 자동으로 사용하여 메타데이터 작업을 메타스토어로 직접 라우팅합니다.
설정 후 BigQuery에서 Spark로 만든 테이블을 직접 쿼리할 수 있습니다. 이 통합은 Parquet, ORC, Avro와 같은 다양한 스토리지 형식과 Spark와 BigQuery 간의 특정 데이터 유형 매핑을 지원합니다.
Hive 카탈로그가 Google Cloud 서비스와 통합되는 방식
Lakehouse for Apache Iceberg가 데이터를 관리하는 방식을 이해하려면 Hive 카탈로그 아키텍처가 Google Cloud 서비스와 통합되는 방식을 알아보세요. 자체 호스팅 메타스토어를 유지관리하는 대신 오픈소스 워크로드는 Lakehouse 런타임 카탈로그에 연결하여 Hive 데이터베이스 및 테이블 정의를 관리하는 동시에 기본 데이터 파일을 Cloud Storage 웨어하우스 디렉터리에 직접 저장합니다.
다음 다이어그램은 Managed Service for Apache Spark와 같은 컴퓨팅 엔진이 Lakehouse 런타임 카탈로그를 사용하여 테이블 메타데이터를 관리하는 동시에 Hive에서 기본 데이터 파일을 직접 읽고 쓰는 방법을 보여줍니다.
Hive Metastore와의 기능 비교
다음 표에서는 Hive Metastore와 Lakehouse의 항목 및 작업을 비교합니다.
| 항목 또는 작업 | Hive Metastore | Lakehouse 런타임 카탈로그 |
|---|---|---|
| 카탈로그 | ✅ | ✅ |
| 데이터베이스 (만들기, 삭제, 업데이트) | ✅ | ✅ |
| 테이블 (만들기, 삭제, 업데이트) | ✅ | ✅ |
| 파티션 (추가, 삭제, 업데이트) | ✅ | ✅ |
| 테이블 권한 | ✅ | ✅ (Identity and Access Management (IAM)를 통해) |
| 파티션 권한 | ✅ | ✅ (IAM을 통해) |
| 사용자 정의 함수 | ✅ | 지원되지 않음 |
| 버킷화 / 스키우 열 | ✅ | 지원되지 않음 |
| 테이블 및 파티션 열 통계 | ✅ | 지원되지 않음 |
| 주요 제약 조건 | ✅ | 지원되지 않음 |
| 위임 토큰 (Kerberos) | ✅ | 지원되지 않음 |
| 열 권한 | ✅ | 지원되지 않음 |
| 역할 | ✅ | 지원되지 않음 |
| 워크로드 관리자 리소스 계획 | ✅ | 지원되지 않음 |
| 트랜잭션 및 압축 | ✅ | 지원되지 않음 |