Mengintegrasikan Spark dan Hive dengan katalog runtime Lakehouse menghilangkan overhead operasional dalam memelihara Hive Metastore (HMS) yang dihosting sendiri sekaligus memungkinkan berbagi metadata terpadu dan kueri tabel langsung di BigQuery.
Dokumen ini menyoroti batasan fungsional dan pertimbangan layanan dari integrasi ini. Sebelum memigrasikan atau membangun pipeline database open source di katalog runtime Lakehouse, tinjau batasan ini untuk menentukan apakah pratinjau ini sesuai dengan persyaratan teknis Anda.
Jika Anda mencari petunjuk konfigurasi dan kueri, bukan batas, lihat Menggunakan Spark dan Hive dengan katalog runtime Lakehouse.
Batasan katalog runtime lakehouse
Bagian ini mencantumkan batasan penggunaan katalog runtime Lakehouse dengan berbagai layanan.
Batasan metastore
- Managed Service untuk Apache Spark hanya mendukung tugas PySpark dengan Lakehouse Metastore tanpa batas.
- Dataproc API tidak mendukung penyetelan properti Lakehouse
Metastore di kolom
properties. - Anda tidak dapat membuat cluster Managed Service untuk Apache Spark yang menggunakan Kerberos, karena katalog runtime Lakehouse tidak mendukung token delegasi atau API kunci primer.
- Database dan tabel dapat menggunakan
location_uriCloud Storage yang berbeda dari katalog Hive-nya, selama bucket Cloud Storage berada di region yang sama dengan katalog Hive. - Katalog Hive tidak boleh berisi namespace dan tabel Iceberg. Untuk membuat dan menggunakan namespace dan tabel Iceberg, gunakan katalog runtime Lakehouse sebagai gantinya.
Batasan tabel
- Penggantian nama tabel tidak didukung.
- Penggantian nama partisi tidak didukung.
- Menghapus tabel atau database tidak akan menghapus file terkait dari Cloud Storage.
- Penelusuran yang tidak peka huruf besar/kecil tidak didukung.
- Pengelompokan dan pengelompokan ke dalam rentang tidak didukung.
- Tampilan tabel tidak didukung.
Ukuran batch partisi
Katalog runtime Lakehouse mendukung penyimpanan dan pengambilan informasi partisi untuk digunakan dalam penghapusan partisi. Bigtable dioptimalkan untuk operasi baca daripada operasi tulis, sehingga menghasilkan performa kueri yang lebih cepat melalui penghapusan partisi.
Untuk mengoptimalkan performa penyerapan partisi, ukuran partisi batch dibatasi hingga 900.
Tetapkan konfigurasi berikut untuk properti Hive dan Spark yang menentukan ukuran tumpukan operasi partisi:
SET hive.msck.repair.batch.size = 900;SET spark.sql.addPartitionInBatch.size = 900;
Batasan BigQuery
- Secara default, BigQuery tidak mendukung jenis data
ARRAY<ARRAY<>>atauARRAY<MAP<>>. Dukungan untukMAPharus ditambahkan ke daftar yang diizinkan. Hubungi biglake-help@google.com jika workload Anda banyak menggunakanMAP. - Jenis kunci
MAPhanya mendukung jenis data primitif. Anda tidak dapat menggunakanARRAY,STRUCT, atauMAPsebagai jenis kunci. - Selama pratinjau, BigQuery hanya dapat membuat kueri data dari
Cloud Storage. Batasan berikut berlaku:
- URI lokasi tabel tidak boleh menyertakan karakter pengganti (
*). - URI lokasi tabel harus berupa direktori.
- URI lokasi tabel tidak boleh menyertakan karakter pengganti (
Batasan replikasi lintas region dan pemulihan dari bencana
Katalog runtime Lakehouse menawarkan replikasi lintas region dan pemulihan bencana untuk meningkatkan ketersediaan dan ketahanan katalog Anda.
Saat menggunakan katalog runtime Lakehouse dengan katalog Hive, batasan berikut berlaku:
Katalog Hive tidak menyediakan kemampuan disaster recovery penuh, seperti failover yang dimulai pengguna.
Saat membuat katalog Hive, Anda harus menyetel
primary_locationagar cocok dengan region bucket Cloud Storage Anda. Katalog runtime Lakehouse kemudian secara otomatis menyalin metadata ke region sekunder berdasarkan konfigurasi dual-region atau multi-region bucket Anda. Salinan metadata sekunder ini bersifat hanya baca, dan Anda tidak dapat mempromosikannya menjadi salinan utama. Redundansi data bergantung pada setelan dual-region atau multi-region bucket Anda, yang terpisah dari replikasi metadata katalog runtime Lakehouse.
Pertimbangan untuk menggunakan katalog runtime Lakehouse sebagai pengganti metastore Hive
Versi pratinjau katalog runtime Lakehouse mendukung subset
antarmuka Hive Metastore. Desain ini memprioritaskan kompatibilitas dengan
Spark ExternalCatalog, yang tidak memerlukan kompatibilitas penuh dengan Hive
Metastore.
Pemetaan resource
Tabel berikut memetakan resource Hive Metastore ke resource katalog runtime Lakehouse dan izin Identity and Access Management (IAM) yang diperlukan.
| Resource Hive Metastore | Resource katalog runtime Lakehouse | Izin IAM |
|---|---|---|
| Katalog | Katalog | biglake.catalogs.* |
| Database | Database | biglake.namespaces.* |
| Tabel | Tabel | biglake.tables.* |
Tata kelola
Hive Metastore (HMS) menyediakan tata kelola di tingkat tabel, kolom, dan partisi. Katalog runtime Lakehouse menyediakan izin IAM tingkat tabel dan tingkat partisi. Tata kelola tingkat kolom tidak didukung.
Batasan penyimpanan
- Semua batasan tabel eksternal BigQuery berlaku.
Batasan partisi
- Pelacakan statistik tingkat kolom di tingkat partisi tidak didukung.
- API
BatchCreateHivePartitionsmembatasi panggilan ke 900 partisi.