I/O Terkelola mendukung kemampuan berikut untuk BigQuery:
- Pembuatan tabel dinamis
- Tujuan dinamis
- Untuk pembacaan, konektor menggunakan BigQuery Storage Read API.
Untuk operasi tulis, konektor menggunakan metode BigQuery berikut:
- Jika sumber tidak terbatas dan Dataflow menggunakan pemrosesan streaming persis sekali, konektor melakukan penulisan ke BigQuery, dengan menggunakan BigQuery Storage Write API dengan semantik pengiriman persis sekali.
- Jika sumber tidak terbatas dan Dataflow menggunakan pemrosesan streaming minimal sekali, konektor melakukan penulisan ke BigQuery, dengan menggunakan BigQuery Storage Write API dengan semantik pengiriman minimal sekali.
- Jika sumber dibatasi, konektor akan menggunakan pemuatan file BigQuery.
Persyaratan
SDK berikut mendukung I/O terkelola untuk BigQuery:
- Apache Beam SDK untuk Java versi 2.61.0 atau yang lebih baru
- Apache Beam SDK untuk Python versi 2.61.0 atau yang lebih baru
Konfigurasi
I/O Terkelola untuk BigQuery mendukung parameter konfigurasi berikut:
BIGQUERY
Baca
Konfigurasi | Jenis | Deskripsi |
---|---|---|
kms_key |
str
|
Gunakan kunci Cloud KMS ini untuk mengenkripsi data Anda |
query |
str
|
Kueri SQL yang akan dijalankan untuk membaca dari tabel BigQuery. |
row_restriction |
str
|
Hanya baca baris yang cocok dengan filter ini, yang harus kompatibel dengan SQL standar Google. Hal ini tidak didukung saat membaca melalui kueri. |
fields |
list[str]
|
Membaca hanya kolom yang ditentukan dari tabel BigQuery. Kolom mungkin tidak ditampilkan dalam urutan yang ditentukan. Jika tidak ada nilai yang ditentukan, semua kolom akan ditampilkan. Contoh: "col1, col2, col3" |
tabel |
str
|
Nama tabel BigQuery yang sepenuhnya memenuhi syarat untuk dibaca. Format: [${PROJECT}:]${DATASET}.${TABLE} |
BIGQUERY
Menulis
Konfigurasi | Jenis | Deskripsi |
---|---|---|
table |
str
|
Tabel BigQuery yang akan ditulisi. Format: [${PROJECT}:]${DATASET}.${TABLE} |
drop |
list[str]
|
Daftar nama kolom yang akan dihapus dari rekaman input sebelum penulisan. Tidak dapat muncul bersamaan dengan 'keep' dan 'only'. |
keep |
list[str]
|
Daftar nama kolom yang akan disimpan dalam rekaman input. Semua kolom lainnya akan dihapus sebelum penulisan. Tidak dapat muncul bersamaan dengan 'drop' dan 'only'. |
kms_key |
str
|
Gunakan kunci Cloud KMS ini untuk mengenkripsi data Anda |
saja |
str
|
Nama kolom satu catatan yang harus ditulis. Tidak dapat muncul bersamaan dengan 'keep' dan 'drop'. |
triggering_frequency_seconds |
int64
|
Menentukan seberapa sering progres 'di-commit' ke BigQuery. Defaultnya adalah setiap 5 detik. |
Langkah berikutnya
Untuk informasi dan contoh kode selengkapnya, lihat topik berikut: