Memuat data ke dalam tabel berpartisi
Dokumen ini menjelaskan cara memuat data ke dalam tabel berpartisi.
Menulis data ke partisi tertentu
Anda dapat memuat data ke partisi tertentu menggunakan perintah bq load
dengan dekorator partisi. Contoh berikut menambahkan data ke partisi 20160501
(1 Mei 2016) dari tabel yang ada, dengan asumsi bahwa tabel tersebut sudah dipartisi menurut tanggal:
bq load --source_format=CSV 'my_dataset.my_table$20160501' data.csv
Anda juga dapat menulis hasil kueri ke partisi tertentu:
bq query \ --use_legacy_sql=false \ --destination_table='my_table$20160501' \ --append_table=true \ 'SELECT * FROM my_dataset.another_table'
Dengan partisi waktu penyerapan, Anda dapat menggunakan teknik ini untuk memuat data lama ke dalam partisi yang sesuai dengan waktu saat data pertama dibuat.
Anda juga dapat menggunakan teknik ini untuk menyesuaikan zona waktu. Secara default, partisi waktu penyerapan didasarkan pada waktu UTC. Jika ingin waktu partisi sesuai dengan zona waktu tertentu, Anda dapat menggunakan dekorator partisi untuk mengimbangi waktu penyerapan UTC. Misalnya, jika berada dalam Waktu Standar Pasifik (PST), Anda dapat memuat data yang dihasilkan pada 1 Mei 2016 PST ke partisi untuk tanggal tersebut dengan menggunakan dekorator partisi yang sesuai, $20160501
.
Untuk kolom unit waktu dan tabel berpartisi rentang bilangan bulat, ID partisi yang ditentukan di dekorator harus cocok dengan data yang sedang ditulis. Misalnya, jika tabel dipartisi pada kolom DATE
, dekorator harus cocok dengan nilai dalam kolom tersebut. Jika tidak, error akan terjadi. Namun, jika Anda mengetahui sebelumnya bahwa data berada dalam satu partisi, penentuan dekorator partisi dapat meningkatkan performa tulis.
Contoh sebelumnya menambahkan data ke partisi. Untuk menimpa data dalam
partisi, Anda harus menyertakan tanda yang berbeda untuk setiap perintah, yaitu
bq load --replace=true ...
dan bq query --append_table=false ...
.
Untuk mengetahui informasi selengkapnya tentang flag dalam perintah ini, lihat bq load
dan bq query
.
Untuk mengetahui informasi selengkapnya tentang pemuatan data, lihat Pengantar cara memuat data ke BigQuery.
Men-streaming data ke dalam tabel berpartisi
Untuk mengetahui informasi tentang cara men-streaming data ke dalam tabel berpartisi dengan BigQuery Storage Write API, lihat Partisi kolom satuan waktu.
Langkah selanjutnya
Untuk mempelajari lebih lanjut cara bekerja dengan tabel berpartisi, lihat: