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: Agen Layanan Cloud Data Fusion API
- 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 lain. Sebagai referensi, kode 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
Dalam project Google Cloud Anda, 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 pada set data atau tabel BigQuery, bergantung pada kasus penggunaan Anda.
Storage Legacy Bucket Writer (
roles/storage.legacyBucketWriter
). Peran yang telah ditentukan ini berisi izin yang diperlukan berikut:storage.buckets.get
storage.objects.get
storage.objects.list
Peran ini dan izin ini juga dapat ditetapkan di bucket Cloud Storage, bergantung pada kasus penggunaan Anda.
Mengonfigurasi plugin
- Buka antarmuka web Cloud Data Fusion, lalu klik Studio.
- Pastikan Data Pipeline - Batch dipilih (bukan Realtime).
- Di menu Sumber, 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 ID project, biarkan nilai sebagai deteksi otomatis.
- Jika set data BigQuery berada di project yang berbeda, masukkan ID di kolom Dataset Project ID.
Di kolom Service account type, pilih salah satu 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 tidak ada koneksi dan Anda ingin membuat koneksi baru yang dapat digunakan kembali, klik Add connection, lalu lihat langkah-langkah di tab New connection pada halaman ini.
Di kolom Nama referensi, masukkan nama yang akan digunakan untuk silsilah.
Opsional: Jika set data sudah tersedia di instance Anda, klik Browse, lalu 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 Partition start date, masukkan string tanggal mulai inklusif—misalnya,
2021-01-11
.Opsional: Di kolom Partition end date, 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 mengetahui 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 Temporary table creation set data, masukkan nama set data tempat tabel sementara dibuat.
Opsional: Klik Validasi dan atasi error yang ditemukan.
Klik
Tutup. Properti disimpan dan Anda dapat terus membangun 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. |
Gunakan koneksi | Tidak | Tidak | Cari koneksi yang dapat digunakan kembali ke sumber tersebut. Untuk mengetahui informasi selengkapnya cara menambahkan, mengimpor, dan mengedit koneksi yang muncul saat Anda menjelajahi koneksi, lihat Mengelola koneksi. |
Koneksi | Ya | Ya | Jika Use connection diaktifkan, nama koneksi yang dapat digunakan kembali yang Anda pilih akan muncul di kolom ini. |
ID Project | Ya | Tidak | Hanya digunakan saat Gunakan koneksi dinonaktifkan. ID unik global untuk project tempat tugas BigQuery berjalan. Nilai defaultnya adalah auto-detect . |
ID project set data | Ya | Tidak | Hanya digunakan saat Gunakan koneksi dinonaktifkan. Jika set data berada dalam project yang berbeda dengan tempat tugas BigQuery dijalankan, nilai ini adalah ID unik 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 pada 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 dari kunci akun layanan yang digunakan untuk otorisasi. Jika tugas berjalan di cluster Dataproc, tetapkan nilainya ke deteksi otomatis. Jika tugas dijalankan pada jenis cluster lain, file harus ada di setiap node dalam cluster. Nilai defaultnya 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 secara unik mengidentifikasi sumber ini untuk layanan lain, seperti silsilah dan metadata anotasi. |
Dataset | Ya | Ya | {i>Dataset<i} yang berada di tabel tersebut. Set data terdapat di dalam project tertentu. Set data adalah penampung tingkat atas yang mengatur dan mengontrol akses ke tabel dan tampilan. |
Tabel | Ya | Ya | Tabel untuk dibaca. Tabel berisi record individual yang diatur dalam baris. Setiap catatan terdiri dari kolom (juga disebut {i>field<i}). Setiap tabel ditentukan oleh skema yang menjelaskan nama kolom, jenis data, dan informasi lainnya. |
Tanggal mulai partisi | Ya | Tidak | Tanggal mulai partisi inklusif, ditetapkan 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, ditentukan sebagai yyyy-mm-dd . Jika tidak ada nilai yang diberikan, semua partisi dari tanggal mulai partisi akan dibaca. |
Filter | Ya | Tidak | Kueri SQL yang memfilter kondisi tertentu. Misalnya, kueri ini menampilkan semua baris dari tabel Roster yang kolom SchoolID -nya memiliki nilai SchoolID > 52 :SELECT * FROM Roster WHERE SchoolID > 52; . Ini sama dengan klausa WHERE di BigQuery. |
Nama bucket sementara | Ya | Tidak | Bucket Cloud Storage untuk penyimpanan data sementara. Class ini akan otomatis dibuat jika tidak ada. Data sementara akan dihapus setelah dibaca. Jika nama tidak diberikan, bucket unik akan dibuat, lalu dihapus setelah proses 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 informasi selengkapnya, lihat CMEK. |
Mengaktifkan tampilan kueri | Ya | Tidak | Apakah akan mengizinkan tampilan Logis dan Terwujud BigQuery. Karena tampilan BigQuery tidak diaktifkan secara default, kuerinya mungkin akan menimbulkan overhead performa. Default-nya adalah Tidak. |
Project pembuatan tabel sementara | Ya | Tidak | Hanya digunakan saat Aktifkan tampilan kueri diaktifkan. Nama project tempat tabel sementara harus dibuat. Default-nya adalah project yang sama dengan tempat tabel berada. |
Set data pembuatan tabel sementara | Ya | Tidak | Set data dalam project yang ditentukan tempat tabel sementara harus dibuat. Default-nya adalah set data yang sama dengan tempat tabel berada. |
Skema output | Ya | Ya | Skema tabel yang akan dibaca. Anda dapat mengambilnya dengan mengklik Get schema. |
Pemetaan tipe 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 plugin di Cloud Data Fusion lebih lanjut.