Pengantar metastore BigLake
Metastore BigLake adalah metastore terpadu, terkelola, serverless, dan skalabel yang menghubungkan data lakehouse yang disimpan di Cloud Storage atau BigQuery ke beberapa runtime, termasuk runtime open source (seperti Apache Spark dan Apache Flink) dan BigQuery.
Metastore BigLake menyediakan satu sumber kebenaran untuk mengelola metadata dari beberapa mesin. Layanan ini mendukung format tabel open source utama, seperti Apache Iceberg, melalui tabel Iceberg BigLake dan tabel BigQuery standar. Selain itu, metastore BigLake memiliki dukungan untuk API terbuka dan katalog REST Iceberg (Pratinjau).
Gunakan tabel berikut untuk membantu menentukan tempat memulai perjalanan metastore BigLake Anda:
Kasus penggunaan | Rekomendasi |
---|---|
Mesin open source perlu mengakses data di Cloud Storage. | Jelajahi katalog REST Iceberg (Pratinjau). |
Mesin open source memerlukan interoperabilitas dengan BigQuery. | Jelajahi integrasi metastore BigLake dengan mesin open source (seperti Spark) menggunakan plugin katalog Iceberg kustom BigQuery. |
Manfaat
Metastore BigLake menawarkan beberapa keunggulan untuk pengelolaan dan analisis data:
- Arsitektur serverless. Metastore BigLake menyediakan arsitektur tanpa server, sehingga Anda tidak perlu mengelola server atau cluster. Hal ini membantu mengurangi overhead operasional, menyederhanakan deployment, dan memungkinkan penskalaan otomatis berdasarkan permintaan.
- Interoperabilitas mesin. Metastore BigLake memberi Anda akses tabel langsung di seluruh mesin open source (seperti Spark dan Flink) dan BigQuery, sehingga Anda dapat mengkueri tabel format terbuka tanpa konfigurasi tambahan. Misalnya, Anda dapat membuat tabel di Spark, lalu menjalankan kueri secara langsung di BigQuery. Hal ini membantu menyederhanakan alur kerja analisis Anda dan mengurangi kebutuhan akan proses ETL atau pemindahan data yang kompleks.
Pengalaman pengguna yang terpadu. Metastore BigLake menyediakan alur kerja terpadu di BigQuery dan mesin open source. Pengalaman terpadu ini berarti Anda dapat mengonfigurasi lingkungan Spark yang dihosting sendiri atau dihosting oleh Dataproc melalui katalog REST Iceberg (Pratinjau), atau Anda dapat mengonfigurasi lingkungan Spark di notebook BigQuery Studio untuk melakukan hal yang sama.
Misalnya, di BigQuery Studio, Anda dapat membuat tabel di Spark dengan notebook BigQuery Studio.
Kemudian, Anda dapat membuat kueri tabel Spark yang sama di konsolGoogle Cloud .
Format tabel di metastore BigLake
BigLake mendukung beberapa jenis tabel. Gunakan tabel berikut untuk membantu memilih format yang paling sesuai dengan kasus penggunaan Anda:
Tabel eksternal | Tabel Iceberg BigLake | Tabel Iceberg BigLake di BigQuery | Tabel BigQuery standar | |
---|---|---|---|---|
Metastore | Metastore eksternal atau yang dihosting sendiri | BigLake Metastore | BigLake Metastore | BigLake Metastore |
Penyimpanan | Cloud Storage / Amazon S3 / Azure | Cloud Storage | Cloud Storage | BigQuery |
Manajemen | Pelanggan atau pihak ketiga | Google (pengalaman yang sangat dikelola) | Google (pengalaman yang paling dikelola) | |
Baca / Tulis |
Mesin open source (baca/tulis) BigQuery (hanya baca) |
Mesin open source (baca/tulis) BigQuery (hanya baca) |
Mesin open source (hanya baca dengan library Iceberg, interoperabilitas baca/tulis dengan BigQuery Storage API)
BigQuery (baca/tulis) |
Mesin open source (interoperabilitas baca/tulis dengan
BigQuery Storage API) BigQuery (baca/tulis) |
Use cases | Migrasi, tabel staging untuk pemuatan BigQuery, pengelolaan mandiri | Lakehouse terbuka | Lakehouse terbuka, penyimpanan tingkat perusahaan untuk analisis, streaming, dan AI | Penyimpanan tingkat perusahaan untuk analisis, streaming, dan AI |
Perbedaan dengan metastore BigLake (klasik)
Metastore BigLake adalah metastore yang direkomendasikan di Google Cloud.
Perbedaan utama antara metastore BigLake dan metastore BigLake (klasik) mencakup detail berikut:
- Metastore BigLake (klasik) adalah layanan metastore mandiri yang berbeda dari BigQuery dan hanya mendukung tabel Iceberg. API ini memiliki model resource tiga bagian yang berbeda. Tabel metastore BigLake (klasik) tidak otomatis ditemukan dari BigQuery.
- Tabel di metastore BigLake dapat diakses dari beberapa mesin open source dan BigQuery. Metastore BigLake mendukung integrasi langsung dengan Spark, yang membantu mengurangi redundansi saat Anda menyimpan metadata dan menjalankan tugas. Metastore BigLake juga mendukung katalog REST Iceberg (Pratinjau), yang menghubungkan data lakehouse di beberapa runtime.
Batasan
Batasan berikut berlaku untuk tabel di metastore BigLake:
- Anda tidak dapat membuat atau mengubah tabel metastore BigLake dengan pernyataan DDL atau DML menggunakan mesin BigQuery. Anda dapat mengubah tabel metastore BigLake menggunakan BigQuery API (dengan alat command line bq atau library klien), tetapi tindakan ini berisiko membuat perubahan yang tidak kompatibel dengan mesin eksternal.
- Tabel metastore BigLake tidak mendukung
operasi penggantian nama atau
pernyataan SQL Spark
ALTER TABLE ... RENAME TO
. - Tabel metastore BigLake tunduk pada kuota dan batas yang sama seperti tabel standar.
- Performa kueri untuk tabel metastore BigLake dari mesin BigQuery mungkin lambat dibandingkan dengan membuat kueri data dalam tabel BigQuery standar. Secara umum, performa kueri untuk tabel metastore BigLake harus setara dengan membaca data langsung dari Cloud Storage.
- Uji coba kueri yang menggunakan tabel metastore BigLake mungkin melaporkan batas bawah 0 byte data, meskipun baris ditampilkan. Hasil ini terjadi karena jumlah data yang diproses dari tabel tidak dapat ditentukan hingga kueri sebenarnya selesai. Menjalankan kueri akan menimbulkan biaya untuk pemrosesan data ini.
- Anda tidak dapat mereferensikan tabel metastore BigLake dalam kueri tabel karakter pengganti.
- Anda tidak dapat menggunakan
metode
tabledata.list
untuk mengambil data dari tabel metastore BigLake. Sebagai gantinya, Anda dapat menyimpan hasil kueri ke tabel tujuan, lalu menggunakan metodetabledata.list
di tabel tersebut. - Tabel metastore BigLake tidak mendukung pengelompokan.
- Tabel metastore BigLake tidak mendukung nama kolom fleksibel.
- Tampilan statistik penyimpanan tabel untuk tabel metastore BigLake tidak didukung.
Langkah berikutnya
- Memigrasikan data Dataproc Metastore ke metastore BigLake
- Menggunakan metastore BigLake dengan Dataproc
- Menggunakan metastore BigLake dengan Dataproc Serverless