Pengantar metastore BigQuery
Metastore BigQuery adalah metastore terkelola sepenuhnya untuk produk analisis data di Google Cloud. BigLake Metastore menyediakan satu sumber tepercaya untuk mengelola metadata dari beberapa sumber. Metastore dapat diakses dari BigQuery dan berbagai mesin pemrosesan data terbuka, sehingga menjadikannya alat yang berguna bagi analis dan engineer data.
Misalnya, Anda dapat menggunakan metastore BigQuery sebagai katalog dengan mesin kueri open source seperti Apache Spark. Tabel yang dibuat menggunakan Spark dapat dikueri menggunakan BigQuery tanpa mengharuskan Anda menyinkronkan metadata.
Manfaat
BigQuery metastore menawarkan beberapa keunggulan untuk pengelolaan dan analisis data:
- Arsitektur serverless. Metastore BigQuery menyediakan arsitektur serverless, sehingga tidak perlu pengelolaan server atau cluster. Hal ini membantu mengurangi overhead operasional, menyederhanakan deployment, dan memungkinkan penskalaan otomatis berdasarkan permintaan.
- Interoperabilitas mesin. Metastore BigQuery memberi Anda akses tabel langsung di BigQuery, sehingga Anda dapat membuat kueri tabel format terbuka yang disimpan di BigQuery tanpa konfigurasi tambahan. Misalnya, Anda dapat membuat tabel di Spark, lalu membuat kueri langsung di BigQuery. Hal ini membantu menyederhanakan alur kerja analisis dan mengurangi kebutuhan untuk proses ETL atau pemindahan data yang kompleks.
Pengalaman pengguna terpadu. BigQuery metastore menyediakan alur kerja terpadu di BigQuery dan BigQuery Studio. Hal ini memungkinkan Anda menggunakan Spark langsung di BigQuery dan BigQuery Studio. Contoh:
Pertama, Anda dapat membuat tabel di Spark dengan notebook BigQuery Studio.
Selanjutnya, Anda dapat membuat kueri tabel Spark yang sama di konsol Google Cloud.
Integrasi yang didukung
Anda dapat menggunakan metastore BigQuery dengan konsol Google Cloud, gcloud CLI, atau BigQuery REST API.
Metastore BigQuery mendukung integrasi berikut:
- Format tabel. Apache Iceberg 1.5.2 atau yang lebih baru.
- Dataproc. Versi 2.2 atau yang lebih baru.
- Mesin Pemrosesan Data. Spark versi 3.3 atau yang lebih baru.
- Plugin. Plugin katalog Iceberg metastore BigQuery.
Perbedaan dengan BigLake Metastore
Metastore BigQuery adalah metastore yang direkomendasikan di Google Cloud.
Perbedaan inti antara metastore BigQuery dan BigLake Metastore mencakup detail berikut:
BigLake Metastore adalah layanan metastore mandiri yang berbeda dari BigQuery dan hanya mendukung tabel Iceberg. Aplikasi ini memiliki model resource tiga bagian yang berbeda. Tabel di BigLake tidak otomatis ditemukan dari BigQuery.
Metastore BigQuery didasarkan pada katalog BigQuery dan terintegrasi langsung dengan BigQuery. Tabel di metastore BigQuery dapat diubah dari beberapa mesin open source dan tabel yang sama dapat dikueri dari BigQuery. Saat Anda menggunakan BigQuery, hanya ada satu sumber tepercaya untuk metadata Anda. Misalnya, metastore BigQuery mendukung integrasi langsung dengan Spark. Integrasi ini memberikan alur kerja yang lebih lancar dan membantu mengurangi redundansi saat menyimpan metadata dan menjalankan tugas.
Batasan
Batasan berikut berlaku untuk tabel metastore BigQuery:
- Anda tidak dapat membuat atau mengubah tabel metastore BigQuery dengan pernyataan DDL atau DML menggunakan mesin BigQuery. Anda dapat mengubah tabel metastore BigQuery menggunakan BigQuery API (dengan alat command line bq atau library klien), tetapi tindakan tersebut berisiko membuat perubahan yang tidak kompatibel dengan mesin eksternal.
- Tabel metastore BigQuery tidak mendukung
operasi penggantian nama atau
pernyataan SQL Spark
ALTER TABLE ... RENAME TO
. - Tabel metastore BigQuery tunduk pada kuota dan batas yang sama seperti tabel standar.
- Performa kueri untuk tabel metastore BigQuery dari mesin BigQuery mungkin lambat dibandingkan dengan mengkueri data dalam tabel BigQuery standar. Secara umum, performa kueri untuk tabel metastore BigQuery harus setara dengan membaca data langsung dari Cloud Storage.
- Uji coba kueri yang menggunakan tabel metastore BigQuery 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 yang sebenarnya selesai. Menjalankan kueri akan menimbulkan biaya untuk pemrosesan data ini.
- Anda tidak dapat mereferensikan tabel metastore BigQuery dalam kueri tabel karakter pengganti.
- Anda tidak dapat menggunakan metode
tabledata.list
untuk mengambil data dari tabel metastore BigQuery. Sebagai gantinya, Anda dapat menyimpan hasil kueri ke tabel tujuan, lalu menggunakan metodetabledata.list
di tabel tersebut. - Tabel metastore BigQuery tidak mendukung pengelompokan.
- Tabel metastore BigQuery tidak mendukung nama kolom fleksibel.
- Tampilan statistik penyimpanan tabel untuk tabel metastore BigQuery tidak didukung.
Langkah berikutnya
- Memigrasikan data Metastore Dataproc ke metastore BigQuery
- Menggunakan metastore BigQuery dengan Dataproc
- Menggunakan metastore BigQuery dengan Dataproc Serverless