Plugin sumber BigQuery memungkinkan Anda menghubungkan dan memuat data dari tabel BigQuery. Data dari tabel BigQuery diekspor ke lokasi sementara di Cloud Storage, lalu dibaca ke dalam pipeline dari sana.
Sebelum memulai
Cloud Data Fusion biasanya memiliki dua akun layanan:
- Akun layanan waktu desain: Cloud Data Fusion API Service Agent
- Akun layanan waktu eksekusi: Akun Layanan Compute Engine
Sebelum menggunakan plugin sumber batch BigQuery, berikan peran atau izin berikut ke setiap akun layanan.
Cloud Data Fusion API Service Agent
Akun layanan ini sudah memiliki semua izin yang diperlukan dan Anda tidak perlu menambahkan izin tambahan. Sebagai referensi, aplikasi ini memiliki izin berikut:
bigquery.datasets.get
bigquery.tables.create
bigquery.tables.get
bigquery.tables.updateData
bigquery.tables.update
bigquery.tables.export
Jika Anda menggunakan akun layanan namespace selain akun layanan waktu desain default, tambahkan izin dari daftar sebelumnya ke akun tersebut.
Akun Layanan Compute Engine
Di project Google Cloud , berikan peran atau izin IAM berikut ke Akun Layanan Compute Engine:
- BigQuery Job User (
roles/bigquery.jobUser
). Peran bawaan ini berisi izinbigquery.jobs.create
yang diperlukan. BigQuery Data Editor (
roles/bigquery.dataEditor
). Peran bawaan ini berisi izin yang diperlukan berikut:bigquery.datasets.get
bigquery.tables.create
bigquery.tables.get
bigquery.tables.updateData
bigquery.tables.update
bigquery.tables.export
Peran dan izin ini juga dapat ditetapkan di set data atau tabel BigQuery, bergantung pada kasus penggunaan Anda.
Storage Legacy Bucket Writer (
roles/storage.legacyBucketWriter
). Peran bawaan ini berisi izin yang diperlukan berikut:storage.buckets.get
storage.objects.get
storage.objects.list
Peran dan izin ini juga dapat ditetapkan di bucket Cloud Storage, bergantung pada kasus penggunaan Anda.
Mengonfigurasi plugin
- Buka antarmuka web Cloud Data Fusion dan klik Studio.
- Pastikan Data Pipeline - Batch dipilih (bukan Real-Time).
- Di menu Source, klik BigQuery. Node BigQuery akan muncul di pipeline Anda.
- Untuk mengonfigurasi sumber, buka node BigQuery, lalu klik Properties.
Masukkan properti berikut. Untuk mengetahui daftar lengkapnya, lihat Properti.
- Masukkan Label untuk node BigQuery—misalnya,
BigQuery tables
. Masukkan detail koneksi. Anda dapat menyiapkan koneksi baru satu kali, atau koneksi yang sudah ada dan dapat digunakan kembali.
Koneksi baru
Untuk menambahkan koneksi satu kali ke BigQuery, ikuti langkah-langkah berikut:
- Di kolom Project ID, biarkan nilainya sebagai deteksi otomatis.
- Jika set data BigQuery berada di project lain, masukkan ID di kolom Dataset Project ID.
Di kolom Service account type, pilih salah satu dari opsi berikut dan masukkan konten di kolom berikutnya:
- Jalur file
- JSON
Koneksi yang dapat digunakan kembali
Untuk menggunakan kembali koneksi yang ada, ikuti langkah-langkah berikut:
- Aktifkan Gunakan koneksi.
- Klik Jelajahi koneksi.
Klik nama koneksi—misalnya, BigQuery Default.
Opsional: Jika koneksi tidak ada dan Anda ingin membuat koneksi baru yang dapat digunakan kembali, klik Tambahkan koneksi dan lihat langkah-langkah di tab Koneksi baru di halaman ini.
Di kolom Reference name, masukkan nama yang akan digunakan untuk garis keturunan.
Opsional: Jika set data sudah tersedia di instance, klik Browse dan pilih data yang akan dibaca.
Di kolom Dataset, masukkan nama set data yang berisi tabel.
Di kolom Tabel, masukkan nama tabel.
Untuk menguji konektivitas, klik Dapatkan skema.
Opsional: Di kolom Tanggal mulai partisi, masukkan string tanggal mulai inklusif—misalnya,
2021-01-11
.Opsional: Di kolom Tanggal akhir partisi, masukkan string tanggal akhir inklusif—misalnya,
2024-01-11
.Opsional: Di kolom Filter, masukkan klausa
WHERE
BigQuery.Opsional: Di kolom Temporary bucket name, masukkan nama untuk bucket Cloud Storage.
Opsional: Di kolom Encryption Key Name, masukkan nama kunci enkripsi Cloud Key Management Service (Cloud KMS). Untuk informasi selengkapnya, lihat Mendapatkan nama resource untuk kunci.
Opsional: Aktifkan Aktifkan tampilan kueri. Jika Anda mengaktifkannya, lakukan hal berikut:
- Di kolom Temporary table creation project, masukkan nama project tempat tabel sementara dibuat.
- Di kolom Set data pembuatan tabel sementara, masukkan nama set data tempat tabel sementara dibuat.
Opsional: Klik Validasi dan perbaiki error yang ditemukan.
Klik
Tutup. Properti disimpan dan Anda dapat terus mem-build pipeline data di antarmuka web Cloud Data Fusion.
- Masukkan Label untuk node BigQuery—misalnya,
Properti
Properti | Makro diaktifkan | Properti wajib | Deskripsi |
---|---|---|---|
Label | Tidak | Ya | Nama node di pipeline data Anda. |
Menggunakan koneksi | Tidak | Tidak | Jelajahi koneksi yang dapat digunakan kembali ke sumber. Untuk informasi selengkapnya tentang cara menambahkan, mengimpor, dan mengedit koneksi yang muncul saat Anda menjelajahi koneksi, lihat Mengelola koneksi. |
Koneksi | Ya | Ya | Jika Gunakan koneksi diaktifkan, nama koneksi yang dapat digunakan kembali yang Anda pilih akan muncul di kolom ini. |
ID Project | Ya | Tidak | Hanya digunakan jika Gunakan koneksi dinonaktifkan. ID unik secara global untuk project tempat tugas BigQuery berjalan. Default-nya adalah auto-detect . |
ID project set data | Ya | Tidak | Hanya digunakan jika Gunakan koneksi dinonaktifkan. Jika set data berada di project yang berbeda dengan project tempat tugas BigQuery berjalan, nilai ini adalah ID unik secara global untuk project dengan set data BigQuery. Jika tidak ada nilai yang diberikan, kolom akan ditetapkan secara default ke nilai Project ID. Peran BigQuery Data Viewer harus diberikan ke akun layanan yang ditentukan untuk membaca data BigQuery di project. |
Jenis akun layanan | Ya | Tidak | Pilih salah satu opsi berikut:
|
Service account file path | Ya | Tidak | Hanya digunakan jika nilai Jenis akun layanan adalah Jalur file. Jalur di sistem file lokal kunci akun layanan
yang digunakan untuk otorisasi. Jika tugas berjalan di cluster Dataproc,
tetapkan nilai ke deteksi otomatis. Jika tugas berjalan pada jenis cluster lain, file tersebut harus ada di setiap node dalam cluster. Default-nya adalah auto-detect . |
JSON akun layanan | Ya | Tidak | Hanya digunakan jika nilai Jenis akun layanan adalah JSON. Konten file JSON akun layanan. |
Nama referensi | Tidak | Ya | Nama yang mengidentifikasi sumber ini secara unik untuk layanan lain, seperti metadata anotasi dan garis keturunan. |
Dataset | Ya | Ya | Set data tempat tabel berada. Set data terdapat dalam project tertentu. Set data adalah penampung tingkat teratas yang mengatur dan mengontrol akses ke tabel dan tampilan. |
Tabel | Ya | Ya | Tabel yang akan dibaca. Tabel berisi kumpulan data individual yang diatur dalam baris. Setiap catatan terdiri dari kolom (juga disebut kolom). Setiap tabel ditentukan oleh skema yang menjelaskan nama kolom, jenis data, dan informasi lainnya. |
Tanggal mulai partisi | Ya | Tidak | Tanggal mulai partisi inklusif, yang ditentukan sebagai yyyy-mm-dd . Jika
tidak ada nilai yang diberikan, semua partisi hingga tanggal akhir partisi akan
dibaca. |
Tanggal akhir partisi | Ya | Tidak | Tanggal akhir partisi eksklusif, yang ditentukan sebagai yyyy-mm-dd . Jika
tidak ada nilai yang diberikan, semua partisi mulai dari tanggal mulai partisi akan
dibaca. |
Filter | Ya | Tidak | Kueri SQL yang memfilter kondisi yang diberikan. Misalnya, kueri ini menampilkan semua baris dari tabel Roster dengan kolom SchoolID yang memiliki nilai SchoolID > 52 :SELECT * FROM Roster WHERE SchoolID > 52; . Hal ini sama dengan klausa WHERE di BigQuery. |
Nama bucket sementara | Ya | Tidak | Bucket Cloud Storage untuk penyimpanan data sementara. Grup ini akan dibuat secara otomatis jika belum ada. Data sementara dihapus setelah dibaca. Jika nama tidak diberikan, bucket unik akan dibuat, lalu dihapus setelah operasi selesai. |
Nama kunci enkripsi | Ya | Tidak | Kunci yang mengenkripsi data yang ditulis ke bucket apa pun yang dibuat oleh plugin. Jika bucket ada, nilai ini akan diabaikan. Untuk mengetahui informasi selengkapnya, lihat CMEK. |
Mengaktifkan tampilan kueri | Ya | Tidak | Apakah akan mengizinkan tampilan Logis dan Terwujud BigQuery. Karena tampilan BigQuery tidak diaktifkan secara default, membuat kueri pada tampilan tersebut mungkin memiliki overhead performa. Defaultnya adalah Tidak. |
Project pembuatan tabel sementara | Ya | Tidak | Hanya digunakan jika Aktifkan tampilan kueri diaktifkan. Nama project tempat tabel sementara akan dibuat. Secara default, project yang sama dengan project tempat tabel berada. |
Set data pembuatan tabel sementara | Ya | Tidak | Set data dalam project yang ditentukan tempat tabel sementara harus dibuat. Secara default menggunakan set data yang sama dengan tabel. |
Skema output | Ya | Ya | Skema tabel yang akan dibaca. Anda dapat mengambilnya dengan mengklik Dapatkan skema. |
Pemetaan jenis data
Tabel berikut adalah daftar jenis data BigQuery dengan jenis CDAP yang sesuai.
Jenis data BigQuery | Jenis data skema CDAP |
---|---|
BOOL |
boolean |
BYTES |
bytes |
DATE |
date |
DATETIME |
datetime, string |
FLOAT64 |
double |
GEO |
unsupported |
INT64 |
long |
NUMERIC |
decimal |
BIGNUMERIC |
decimal |
REPEATED |
array |
STRING |
string , datetime (format ISO 8601) |
STRUCT |
record |
TIME |
time (mikrodetik) |
TIMESTAMP |
timestamp (mikrodetik) |
JSON |
unsupported |
Langkah selanjutnya
- Pelajari lebih lanjut plugin di Cloud Data Fusion.