Konektor Hive-BigQuery open source memungkinkan beban kerja Apache Hive membaca dan menulis data dari dan ke tabel BigQuery dan BigLake. Anda dapat menyimpan data di penyimpanan BigQuery atau dalam format data open source di Cloud Storage.
Konektor Hive-BigQuery mengimplementasikan Hive Storage Handler API untuk memungkinkan beban kerja Hive berintegrasi dengan tabel BigQuery dan BigLake. Mesin eksekusi Hive menangani operasi komputasi, seperti agregat dan join, dan konektor mengelola interaksi dengan data yang disimpan di BigQuery atau di bucket Cloud Storage yang tersambung ke BigLake.
Diagram berikut mengilustrasikan cara konektor Hive-BigQuery cocok antara lapisan komputasi dan data.
Kasus penggunaan
Berikut beberapa cara konektor Hive-BigQuery dapat membantu Anda dalam skenario berbasis data umum:
Migrasi data. Anda berencana untuk memindahkan data warehouse Hive ke BigQuery, lalu menerjemahkan kueri Hive secara bertahap ke dalam dialek SQL BigQuery. Anda memperkirakan migrasi akan memerlukan waktu yang cukup lama karena ukuran data warehouse dan banyaknya aplikasi yang terhubung, dan Anda perlu memastikan kontinuitas selama operasi migrasi. Berikut adalah alur kerjanya:
- Anda memindahkan data ke BigQuery
- Dengan menggunakan konektor ini, Anda dapat mengakses dan menjalankan kueri Hive asli sekaligus menerjemahkan kueri Hive secara bertahap ke dialek SQL BigQuery yang sesuai dengan ANSI.
- Setelah menyelesaikan migrasi dan terjemahan, Anda akan menghentikan penggunaan Hive.
Alur kerja Hive dan BigQuery. Anda berencana menggunakan Hive untuk beberapa tugas, dan BigQuery untuk beban kerja yang mendapatkan manfaat dari fiturnya, seperti BigQuery BI Engine atau BigQuery ML. Anda menggunakan konektor untuk menggabungkan tabel Hive ke tabel BigQuery.
Ketergantungan pada stack software open source (OSS). Untuk menghindari vendor lock-in, Anda menggunakan stack OSS lengkap untuk data warehouse. Berikut adalah paket data Anda:
Anda memigrasikan data dalam format OSS aslinya, seperti Avro, Parquet, atau ORC, ke bucket Cloud Storage menggunakan koneksi BigLake.
Anda terus menggunakan Hive untuk menjalankan dan memproses kueri dialek Hive SQL.
Anda menggunakan konektor sesuai kebutuhan untuk terhubung ke BigQuery agar dapat memanfaatkan fitur berikut:
- Caching metadata untuk performa kueri
- Pencegahan kebocoran data
- Kontrol akses tingkat kolom
- Penyamaran data dinamis untuk keamanan dan tata kelola dalam skala besar.
Fitur
Anda dapat menggunakan konektor Hive-BigQuery untuk menggunakan data BigQuery dan menyelesaikan tugas berikut:
- Menjalankan kueri dengan mesin eksekusi MapReduce dan Tez.
- Membuat dan menghapus tabel BigQuery dari Hive.
- Menggabungkan tabel BigQuery dan BigLake dengan tabel Hive.
- Melakukan pembacaan cepat dari tabel BigQuery menggunakan streaming Storage Read API dan format Apache Arrow
- Tulis data ke BigQuery menggunakan metode berikut:
- Penulisan langsung menggunakan Storage Write API BigQuery dalam mode tertunda. Gunakan metode ini untuk workload yang memerlukan latensi operasi tulis rendah, seperti dasbor hampir real-time dengan periode waktu refresh yang singkat.
- Penulisan tidak langsung dengan melakukan staging file Avro sementara ke Cloud Storage, lalu memuat file ke tabel tujuan menggunakan Load Job API. Metode ini lebih murah daripada metode langsung, karena tugas pemuatan BigQuery tidak dikenai biaya. Karena metode ini lebih lambat, dan penggunaan terbaiknya ditemukan dalam workload yang tidak mendesak
Akses tabel BigQuery yang dipartisi menurut waktu dan dikelompokkan. Contoh berikut menentukan hubungan antara tabel Hive dan tabel yang dipartisi dan dikelompokkan di BigQuery.
CREATE TABLE my_hive_table (int_val BIGINT, text STRING, ts TIMESTAMP) STORED BY 'com.google.cloud.hive.bigquery.connector.BigQueryStorageHandler' TBLPROPERTIES ( 'bq.table'='myproject.mydataset.mytable', 'bq.time.partition.field'='ts', 'bq.time.partition.type'='MONTH', 'bq.clustered.fields'='int_val,text' );
Pangkas kolom untuk menghindari pengambilan kolom yang tidak diperlukan dari lapisan data.
Gunakan pushdown predikat untuk memfilter baris data terlebih dahulu di lapisan penyimpanan BigQuery. Teknik ini dapat secara signifikan meningkatkan performa kueri secara keseluruhan dengan mengurangi jumlah data yang melintasi jaringan.
Mengonversi jenis data Hive ke jenis data BigQuery secara otomatis.
Baca tampilan dan snapshot tabel BigQuery.
Berintegrasi dengan Spark SQL.
Berintegrasi dengan Apache Pig dan HCatalog.
Mulai
Lihat petunjuk untuk menginstal dan mengonfigurasi konektor Hive-BigQuery di cluster Hive.