Membeli dan mengelola komitmen slot lama
BigQuery Reservation API memungkinkan Anda membeli slot khusus (disebut komitmen), membuat kumpulan slot (disebut reservasi), dan menetapkan project, folder, dan organisasi ke pemesanan tersebut.
Komitmen kapasitas adalah pembelian kapasitas komputasi BigQuery selama durasi waktu minimum. Membeli komitmen kapasitas bersifat opsional saat membuat pemesanan dengan edisi, tetapi dapat menghemat biaya.
Komitmen termasuk resource regional. Komitmen yang dibeli di satu region atau multi-region tidak dapat digunakan di region atau multi-region lain. Komitmen tidak dapat dipindahkan baik antar-region maupun antara region dan multi-region.
Mengaktifkan Reservations API
BigQuery Reservation API terpisah dari BigQuery API yang sudah ada, dan harus diaktifkan secara terpisah. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan dan menonaktifkan API.
- Cari nama API "BigQuery Reservations API"
- Endpoint untuk BigQuery Reservation API adalah
bigqueryreservation.googleapis.com
.
Slot pembelian
Untuk melakukan pemesanan kapasitas selama durasi waktu tertentu, Anda dapat membeli komitmen kapasitas. Anda bisa mendapatkan diskon dan menghemat biaya dengan melakukannya. Untuk mengetahui informasi selengkapnya tentang biaya tertentu, lihat harga BigQuery.
Izin yang diperlukan
Sebelum membuat komitmen kapasitas, Anda memerlukan izin Identity and Access Management (IAM) berikut:
bigquery.capacityCommitments.create
pada project administrasi yang mengelola kepemilikan komitmen.
Setiap peran IAM berikut yang telah ditentukan sebelumnya menyertakan izin ini:
BigQuery Admin
BigQuery Resource Admin
Untuk mengetahui informasi selengkapnya tentang peran IAM di BigQuery, lihat Peran dan izin yang telah ditentukan sebelumnya.
Membuat komitmen kapasitas
Komitmen termasuk resource regional. Komitmen yang dibeli di satu region atau multi-region tidak dapat digunakan di region atau multi-region lain. Komitmen tidak dapat dipindahkan antar-region atau antara region dan multi-region.
Konsol
Di konsol Google Cloud, buka halaman BigQuery.
Di panel navigasi, buka bagian Pengelolaan kapasitas.
Klik Buat Komitmen.
Di bagian Konfigurasikan:
- Pilih lokasi.
- Di bagian Model kapasitas, pilih model kapasitas.
- Pilih Durasi komitmen, yang menentukan paket komitmen Anda.
Jika membeli komitmen Tahunan, pilih Paket perpanjangan yang ingin diterapkan saat komitmen berakhir:
- Jangan diperpanjang dan konversikan ke komitmen bulanan (Default). Saat masa berlaku komitmen tahunan berakhir, komitmen tersebut akan berubah menjadi komitmen bulanan.
- Perpanjang setiap tahun. Setelah masa berlaku tahunan berakhir, komitmen akan diperpanjang selama satu tahun lagi sebagai komitmen tahunan.
- Jangan diperpanjang dan konversikan ke slot fleksibel. Saat masa berlaku komitmen tahunan berakhir, komitmen tersebut akan berubah menjadi komitmen slot fleksibel.
Untuk mengetahui informasi selengkapnya, lihat Komitmen.
Masukkan Jumlah slot yang ingin dibeli.
Klik Next.
Tinjau perkiraan Biaya pembelian Anda.
Di bagian Konfirmasi dan kirim:
- Ketik CONFIRM untuk mengonfirmasi pembelian.
- Klik Beli untuk membeli slot.
Untuk melihat komitmen, klik Lihat komitmen slot. Setelah kapasitas disediakan, status komitmen kapasitas yang diminta akan menjadi hijau.
Saat pertama kali Anda membeli kapasitas, pemesanan default
akan dibuat.
SQL
Untuk membuat komitmen kapasitas, gunakan
pernyataan DDL CREATE CAPACITY
.
Di Konsol Google Cloud, buka halaman BigQuery.
Di editor kueri, masukkan pernyataan berikut:
CREATE CAPACITY `ADMIN_PROJECT_ID.region-LOCATION.COMMITMENT_ID` OPTIONS ( slot_count = NUMBER_OF_SLOTS, plan = 'PLAN_TYPE');
Ganti kode berikut:
ADMIN_PROJECT_ID
: project ID dari project administrasi yang akan mengelola kepemilikan atas komitmen iniLOCATION
: lokasi komitmenCOMMITMENT_ID
: ID komitmenID ini harus unik terhadap project dan lokasi yang ada. ID harus diawali dan diakhiri dengan huruf kecil atau angka, serta hanya berisi huruf kecil, angka, dan tanda hubung.
NUMBER_OF_SLOTS
: jumlah slot yang akan dibeliPLAN_TYPE
: jenis paket, sepertiFLEX
,MONTHLY
, atauANNUAL
.
Klik
Run.
Untuk informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.
bq
Gunakan perintah bq mk
dengan
flag --capacity_commitment
untuk membeli slot.
bq mk \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --capacity_commitment=true \ --plan=PLAN_TYPE \ --slots=NUMBER_OF_SLOTS
Ganti kode berikut:
ADMIN_PROJECT_ID
: project ID dari project administrasi yang akan mengelola kepemilikan komitmen iniLOCATION
: lokasi komitmenPLAN_TYPE
: jenis paket, sepertiFLEX
,MONTHLY
, atauANNUAL
.NUMBER_OF_SLOTS
: jumlah slot yang akan dibeli.
Melihat komitmen kapasitas
Izin yang diperlukan
Untuk melihat komitmen, Anda memerlukan izin Identity and Access Management (IAM) berikut:
bigquery.capacityCommitments.list
pada project administrasi yang mengelola kepemilikan komitmen.
Setiap peran IAM berikut yang telah ditentukan sebelumnya menyertakan izin ini:
BigQuery Admin
BigQuery Resource Admin
BigQuery Resource Editor
BigQuery Resource Viewer
BigQuery User
Untuk mengetahui informasi selengkapnya tentang peran IAM di BigQuery, lihat Peran dan izin yang telah ditentukan sebelumnya.
Melihat komitmen kapasitas berdasarkan project
Untuk melihat komitmen kapasitas Anda berdasarkan project:
Konsol
Di konsol Google Cloud, buka halaman BigQuery.
Di panel navigasi, buka bagian Pengelolaan Kapasitas.
Klik tab Komitmen slot. Komitmen kapasitas Anda tercantum pada tabel di bagian Komitmen.
SQL
Untuk melihat komitmen suatu project administrasi, buat kueri
tabel virtual INFORMATION_SCHEMA.CAPACITY_COMMITMENTS_BY_PROJECT
.
Di Konsol Google Cloud, buka halaman BigQuery.
Di editor kueri, masukkan pernyataan berikut:
SELECT capacity_commitment_id FROM `region-LOCATION`.INFORMATION_SCHEMA.CAPACITY_COMMITMENTS_BY_PROJECT WHERE project_id = 'ADMIN_PROJECT_ID' AND slot_count = 100;
Ganti kode berikut:
LOCATION
: lokasi komitmenADMIN_PROJECT_ID
: project ID dari project administrasi yang memiliki komitmen
Klik
Run.
Untuk informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.
bq
Gunakan perintah bq ls
dengan
flag --capacity_commitment
untuk menampilkan komitmen project administrasi.
bq ls \ --capacity_commitment=true \ --location=LOCATION \ --project_id=ADMIN_PROJECT_ID
Ganti kode berikut:
LOCATION
: lokasi komitmenADMIN_PROJECT_ID
: project ID project administrasi yang memiliki komitmen
Memperbarui komitmen kapasitas
Anda dapat melakukan perubahan berikut pada komitmen kapasitas:
- Perpanjang komitmen yang ada.
- Melakukan konversi komitmen ke paket komitmen dengan durasi lebih lama.
- Memisahkan satu komitmen menjadi dua komitmen.
- Menggabungkan dua komitmen menjadi satu komitmen.
Izin yang diperlukan
Untuk memperbarui komitmen kapasitas, Anda memerlukan izin Identity and Access Management (IAM) berikut:
bigquery.capacityCommitments.update
pada project administrasi yang mengelola kepemilikan komitmen.
Setiap peran IAM berikut yang telah ditentukan sebelumnya menyertakan izin ini:
BigQuery Admin
BigQuery Resource Admin
Untuk mengetahui informasi selengkapnya tentang peran IAM di BigQuery, lihat Peran dan izin yang telah ditentukan sebelumnya.
Memperpanjang komitmen
Komitmen tahunan memiliki paket perpanjangan, yang perlu Anda tentukan saat membuat atau melakukan konversi ke komitmen tahunan. Anda dapat mengubah paket perpanjangan komitmen tahunan kapan saja sebelum tanggal akhir komitmen.
Konsol
Anda dapat mengubah paket perpanjangan komitmen tahunan melalui langkah berikut:
Di Konsol Google Cloud, buka halaman BigQuery.
Di panel navigasi, buka bagian Pengelolaan Kapasitas.
Klik tab Komitmen slot.
Temukan komitmen yang ingin diedit.
Klik
Tindakan, lalu pilih opsi Edit paket perpanjangan.Pilih paket perpanjangan baru.
bq
Untuk mengubah pilihan paket perpanjangan pada komitmen tahunan, gunakan
perintah bq update
dengan
flag --capacity_commitment
danflag --renewal_plan
.
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --renewal_plan=PLAN_TYPE \ --capacity_commitment=true \ COMMITMENT_ID
Ganti kode berikut:
ADMIN_PROJECT_ID
: project ID dari project administrasi yang akan mengelola kepemilikan komitmen iniLOCATION
: lokasi komitmenPLAN_TYPE
: jenis paket, sepertiFLEX
,MONTHLY
, atauANNUAL
.COMMITMENT_ID
: ID komitmenUntuk mendapatkan ID, lihat Melihat komitmen yang dibeli.
Mengonversi komitmen agar memiliki durasi lebih lama
Anda dapat memilih untuk mengonversi komitmen menjadi jenis komitmen berdurasi yang lebih lama kapan saja:
- Anda dapat mengonversi komitmen slot fleksibel menjadi komitmen bulanan atau tahunan.
- Anda dapat mengonversi komitmen bulanan menjadi komitmen tahunan.
Segera setelah memperbarui komitmen, Anda akan dikenai tarif yang berkaitan dengan paket baru, dan tanggal akhirnya akan direset.
Untuk mengonversi komitmen, gunakan
perintah bq update
dengan
flag --plan
.
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --plan=PLAN_TYPE \ --renewal_plan=RENEWAL_PLAN \ --capacity_commitment=true \ COMMITMENT_ID
Ganti kode berikut:
ADMIN_PROJECT_ID
: project IDLOCATION
: lokasi komitmenPLAN_TYPE
: jenis paket, sepertiFLEX
,MONTHLY
, atauANNUAL
.RENEWAL_PLAN
: paket perpanjanganIni hanya berlaku jika
PLAN_TYPE
adalahANNUAL
. JikaPLAN_TYPE
adalahMONTHLY
, hapus flag ini.COMMITMENT_ID
: ID komitmenUntuk mendapatkan ID, lihat Melihat komitmen yang dibeli.
Memisahkan komitmen
Anda dapat memisahkan satu komitmen menjadi dua komitmen. Tindakan ini dapat dilakukan jika Anda ingin memperpanjang bagian dari satu komitmen. Misalnya, jika memiliki komitmen tahunan sebanyak 1.000 slot, Anda dapat membagi 300 slot menjadi komitmen baru dan menyisakan 700 slot di komitmen awal. Anda kemudian dapat memperpanjang 700 slot dengan tarif tahunan, dan mengonversi 300 slot menjadi slot fleksibel setelah tanggal akhir.
Setelah melakukan pemisahan, komitmen baru akan memiliki paket dan tanggal akhir yang sama dengan komitmen awal.
Konsol
Di konsol Google Cloud, buka halaman BigQuery.
Di panel navigasi, buka bagian Pengelolaan Kapasitas.
Klik tab Komitmen slot.
Pilih komitmen yang ingin dipisahkan.
Klik Pisahkan.
Di halaman Memisahkan komitmen, gunakan penggeser Konfigurasi pemisahan untuk memilih jumlah slot yang masuk ke setiap pemisahan, dengan kelipatan 100 slot.
Klik Pisahkan untuk memisahkan komitmen. Komitmen baru akan tercantum di tab Komitmen slot.
bq
Untuk memisahkan komitmen, gunakan perintah bq update
.
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --split \ --slots=SLOTS_TO_SPLIT \ --capacity_commitment=true \ COMMITMENT_ID
Ganti kode berikut:
ADMIN_PROJECT_ID
: project IDLOCATION
: lokasi komitmenSLOTS_TO_SPLIT
: jumlah slot yang akan dipisahkan dari komitmen awal terkait ke komitmen baruCOMMITMENT_ID
: ID komitmenUntuk mendapatkan ID, lihat Melihat komitmen yang dibeli.
Menggabungkan dua komitmen
Anda dapat menggabungkan beberapa komitmen menjadi satu komitmen. Semua komitmen penggabungan
harus memiliki jenis yang sama (FLEX
, MONTHLY
, ANNUAL
, or THREE_YEAR
). Tanggal akhir
komitmen gabungan adalah tanggal akhir maksimum
komitmen awal. Jika salah satu komitmen memiliki tanggal akhir lebih awal,
komitmen tersebut akan diperpanjang hingga tanggal tersebut dan Anda akan dikenai jumlah prorata untuk
slot tersebut.
Konsol
Di konsol Google Cloud, buka halaman BigQuery.
Di panel navigasi, buka bagian Pengelolaan Kapasitas.
Klik tab Komitmen slot.
Pilih komitmen yang ingin digabungkan.
Klik Gabungkan.
DI halaman Menggabungkan komitmen, tinjau detail penggabungan, lalu klik Gabungkan. Komitmen gabungan baru akan tercantum di tab Komitmen slot.
bq
Untuk menggabungkan dua komitmen menjadi satu, gunakan perintah bq update
:
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --merge=true \ --capacity_commitment=true \ COMMITMENT1,COMMITMENT2
Ganti kode berikut:
ADMIN_PROJECT_ID
: project IDLOCATION
: lokasi komitmenCOMMITMENT1
: komitmen pertama yang akan digabungkanCOMMITMENT2
: komitmen kedua yang akan digabungkan
Menghapus komitmen
Anda dapat menghapus komitmen kapasitas jika tanggal akhirnya sudah terlewat. Tanggal akhir komitmen akan ditampilkan di Konsol Google Cloud. Sebelum menghapus komitmen, pastikan ada cukup slot yang belum dialokasikan. Jika tidak, Anda harus mengurangi jumlah slot dalam pemesanan atau menghapus pemesanan.
Izin yang diperlukan
Untuk menghapus komitmen kapasitas, Anda memerlukan izin Identity and Access Management (IAM) berikut:
bigquery.capacityCommitments.delete
pada project administrasi yang mengelola kepemilikan komitmen.
Setiap peran IAM berikut yang telah ditentukan sebelumnya menyertakan izin ini:
BigQuery Admin
BigQuery Resource Admin
Untuk mengetahui informasi selengkapnya tentang peran IAM di BigQuery, lihat Peran dan izin yang telah ditentukan sebelumnya.
Menghapus komitmen kapasitas
Konsol
Untuk menghapus komitmen kapasitas, ikuti langkah berikut:
Di Konsol Google Cloud, buka halaman BigQuery.
Di panel navigasi, buka bagian Pengelolaan kapasitas.
Klik tab Komitmen slot.
Di menu drop-down Lokasi, pilih lokasi yang sesuai.
Temukan komitmen yang ingin dihapus.
Perluas opsi
Tindakan.Klik Delete.
Ketik "REMOVE", lalu klik Lanjutkan.
SQL
Untuk menghapus komitmen kapasitas, gunakan
pernyataan DDL DROP CAPACITY
.
Di Konsol Google Cloud, buka halaman BigQuery.
Di editor kueri, masukkan pernyataan berikut:
DROP CAPACITY `ADMIN_PROJECT_ID.region-LOCATION.COMMITMENT_ID`;
Ganti kode berikut:
ADMIN_PROJECT_ID
: project yang memiliki komitmenLOCATION
: lokasi komitmenCOMMITMENT_ID
: ID komitmenUntuk mendapatkan ID, lihat Melihat komitmen yang dibeli.
Klik
Run.
Untuk informasi selengkapnya tentang cara menjalankan kueri, lihat Menjalankan kueri interaktif.
bq
Untuk menghapus komitmen kapasitas, gunakan perintah bq rm
dengan
flag --capacity_commitment
:
bq rm \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --capacity_commitment=true \ COMMITMENT_ID
Ganti kode berikut:
ADMIN_PROJECT_ID
: project IDLOCATION
: lokasi komitmenCOMMITMENT_ID
: ID komitmen yang ingin dihapusUntuk mendapatkan ID, lihat Melihat komitmen yang dibeli.
Memecahkan masalah komitmen kapasitas
Bagian ini menjelaskan langkah pemecahan masalah yang dapat dilakukan, jika mengalami masalah saat menggunakan Reservasi BigQuery.
Slot yang dibeli sedang menunggu
Slot dapat berubah tergantung kapasitas yang tersedia. Saat membeli komitmen slot dan BigQuery mengalokasikannya, kolom Status akan menampilkan tanda centang. Jika BigQuery tidak dapat langsung mengalokasikan slot yang diminta, kolom Status akan tetap tertunda. Anda mungkin harus menunggu beberapa jam hingga slot tersedia. Jika memerlukan akses ke slot lebih cepat, coba langkah berikut:
- Hapus komitmen yang tertunda.
- Beli komitmen baru untuk jumlah slot yang lebih kecil. Tergantung kapasitas yang tersedia, komitmen yang lebih kecil dapat langsung aktif.
- Beli sisa slot sebagai komitmen terpisah. Slot ini mungkin akan ditampilkan sebagai tertunda di kolom Status, tetapi umumnya akan aktif dalam beberapa jam.
- Opsional: Jika kedua komitmen tersedia, Anda dapat menggabungkannya menjadi satu komitmen, selama Anda membeli paket yang sama untuk keduanya.
Jika komitmen slot gagal atau memerlukan waktu lama untuk selesai, pertimbangkan untuk menggunakan harga on demand untuk sementara. Dengan solusi ini, Anda mungkin perlu menjalankan kueri penting pada project lain yang tidak ditetapkan ke pemesanan apa pun, atau Anda mungkin perlu menghapus penetapan project tersebut.