제한사항 및 고려사항

Spark 및 Hive를 Lakehouse 런타임 카탈로그와 통합하면 자체 호스팅 Hive Metastore (HMS)를 유지관리하는 운영 오버헤드가 제거되는 동시에 BigQuery에서 통합 메타데이터 공유 및 직접 테이블 쿼리가 가능합니다.

이 문서에서는 이 통합의 기능 제약조건 및 서비스 고려사항을 중점적으로 설명합니다. Lakehouse 런타임 카탈로그에서 오픈소스 데이터베이스 파이프라인을 이전하거나 빌드하기 전에 이러한 제한사항을 검토하여 이 미리보기가 기술 요구사항과 일치하는지 확인하세요.

제한사항 대신 구성 및 쿼리 안내를 찾고 있다면, Lakehouse 런타임 카탈로그에서 Spark 및 Hive 사용을 참조하세요.

Lakehouse 런타임 카탈로그 제한사항

이 섹션에는 다양한 서비스에서 Lakehouse 런타임 카탈로그를 사용하는 데 적용되는 제한사항이 나와 있습니다.

Metastore 제한사항

  • Managed Service for Apache Spark는 Lakehouse Metastore가 있는 PySpark 작업만 지원합니다.
  • Dataproc API는 properties 필드에서 Lakehouse Metastore 속성 설정을 지원하지 않습니다.
  • Lakehouse 런타임 카탈로그는 위임 토큰 또는 기본 키 API를 지원하지 않으므로 Kerberos를 사용하는 Managed Service for Apache Spark 클러스터를 만들 수 없습니다.
  • 데이터베이스 및 테이블은 Cloud Storage 버킷이 Hive 카탈로그와 동일한 리전에 있는 한 Hive 카탈로그와 다른 Cloud Storage location_uri를 사용할 수 있습니다.

테이블 제한사항

  • 테이블 이름 바꾸기는 지원되지 않습니다.
  • 파티션 이름 바꾸기는 지원되지 않습니다.
  • 테이블 또는 데이터베이스를 삭제해도 Cloud Storage에서 연결된 파일이 삭제되지는 않습니다.
  • 대소문자를 구분하지 않는 검색은 지원되지 않습니다.
  • 클러스터링 및 버케팅은 지원되지 않습니다.

파티션 배치 크기

Lakehouse 런타임 카탈로그는 파티션 프루닝에 사용할 파티셔닝 정보의 저장 및 검색을 지원합니다. 쓰기보다 읽기에 최적화되어 있으므로 파티션 프루닝을 통해 쿼리 성능이 향상됩니다.

파티션 수집 성능을 최적화하기 위해 배치 파티션 크기는 900으로 제한됩니다.

파티셔닝 작업의 배치 크기를 결정하는 Hive 및 Spark 속성에 대해 다음 구성을 설정합니다.

  • SET hive.msck.repair.batch.size = 900;
  • SET spark.sql.addPartitionInBatch.size = 900;

BigQuery 제한사항

  • 기본적으로 BigQuery는 ARRAY<ARRAY<>> 또는 ARRAY<MAP<>> 데이터 유형을 지원하지 않습니다. MAP 지원을 허용 목록에 추가해야 합니다. 워크로드에서 MAP을 광범위하게 사용하는 경우 biglake-help@google.com으로 문의하세요.
  • MAP 키 유형은 기본 데이터 유형만 지원합니다. ARRAY, STRUCT 또는 MAP을 키 유형으로 사용할 수 없습니다.
  • 미리보기 중에 BigQuery는 Cloud Storage의 데이터만 쿼리할 수 있습니다. 다음 제한사항이 적용됩니다.
    • 테이블 위치 URI에는 와일드 카드 (*)를 포함할 수 없습니다.
    • 테이블 위치 URI는 디렉터리여야 합니다.

리전 간 복제 및 재해 복구 제한사항

Lakehouse 런타임 카탈로그는 카탈로그의 가용성 및 복원력을 개선하기 위해 리전 간 복제 및 재해 복구를 제공합니다.

Hive 카탈로그와 함께 Lakehouse 런타임 카탈로그를 사용하는 경우 다음 제한사항이 적용됩니다.

  • Hive 카탈로그는 사용자 시작 장애 조치와 같은 완전한 재해 복구 기능을 제공하지 않습니다.

  • Hive 카탈로그를 만들 때 Cloud Storage 버킷의 리전과 일치하도록 primary_location을 설정해야 합니다. 그러면 Lakehouse 런타임 카탈로그가 버킷의 이중 리전 또는 멀티 리전 구성에 따라 메타데이터를 보조 리전에 자동으로 복사합니다. 이 보조 메타데이터 복사본은 읽기 전용이며 기본으로 승격할 수 없습니다. 데이터 중복은 Lakehouse 런타임 카탈로그 메타데이터 복제와 별개인 버킷의 이중 리전 또는 멀티 리전 설정을 사용합니다.

Lakehouse 런타임 카탈로그를 Hive 메타스토어 대체로 사용하는 경우의 고려사항

Lakehouse 런타임 카탈로그의 미리보기 버전은 Hive Metastore 인터페이스의 하위 집합을 지원합니다. 이 설계는 Hive Metastore와의 완전한 호환성이 필요하지 않은 Spark ExternalCatalog와의 호환성을 우선시합니다.

리소스 매핑

다음 표에서는 Hive Metastore 리소스를 Lakehouse 런타임 카탈로그 리소스 및 필요한 Identity and Access Management (IAM) 권한에 매핑합니다.

Hive Metastore 리소스 Lakehouse 런타임 카탈로그 리소스 IAM 권한
카탈로그 카탈로그 biglake.catalogs.*
데이터베이스 데이터베이스 biglake.namespaces.*
biglake.tables.*

거버넌스

Hive Metastore (HMS)는 테이블, 열, 파티션 수준에서 거버넌스를 제공합니다. Lakehouse 런타임 카탈로그는 테이블 수준 및 파티션 수준 IAM 권한을 제공합니다. 열 수준 거버넌스는 지원되지 않습니다.

스토리지 제한사항

  • 모든 BigQuery 외부 테이블 제한사항이 적용됩니다.

파티션 제한사항

  • 파티션 수준에서 열 수준 통계를 추적하는 것은 지원되지 않습니다.
  • BatchCreateHivePartitions API는 호출을 900개 파티션으로 제한합니다.

다음 단계