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.

Aktifkan API.

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

  1. Di konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di panel navigasi, buka bagian Pengelolaan kapasitas.

  3. Klik Buat Komitmen.

  4. Di bagian Konfigurasikan:

    1. Pilih lokasi.
    2. Di bagian Model kapasitas, pilih model kapasitas.
    3. Pilih Durasi komitmen, yang menentukan paket komitmen Anda.
    4. Jika membeli komitmen Tahunan, pilih Paket perpanjangan yang ingin diterapkan saat komitmen berakhir:

      1. Jangan diperpanjang dan konversikan ke komitmen bulanan (Default). Saat masa berlaku komitmen tahunan berakhir, komitmen tersebut akan berubah menjadi komitmen bulanan.
      2. Perpanjang setiap tahun. Setelah masa berlaku tahunan berakhir, komitmen akan diperpanjang selama satu tahun lagi sebagai komitmen tahunan.
      3. 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.

    5. Masukkan Jumlah slot yang ingin dibeli.

    6. Klik Next.

  5. Tinjau perkiraan Biaya pembelian Anda.

  6. Di bagian Konfirmasi dan kirim:

    1. Ketik CONFIRM untuk mengonfirmasi pembelian.
    2. Klik Beli untuk membeli slot.
  7. Untuk melihat komitmen, klik Lihat komitmen slot. Setelah kapasitas disediakan, status komitmen kapasitas yang diminta akan menjadi hijau.

    Komitmen slot.

Saat pertama kali Anda membeli kapasitas, pemesanan default akan dibuat.

SQL

Untuk membuat komitmen kapasitas, gunakan pernyataan DDL CREATE CAPACITY.

  1. Di Konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. 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 ini
    • LOCATION: lokasi komitmen
    • COMMITMENT_ID: ID komitmen

      ID 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 dibeli
    • PLAN_TYPE: jenis paket, seperti FLEX, MONTHLY, atau ANNUAL.

  3. 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 ini
  • LOCATION: lokasi komitmen
  • PLAN_TYPE: jenis paket, seperti FLEX, MONTHLY, atau ANNUAL.
  • 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:

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

  1. Di konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di panel navigasi, buka bagian Pengelolaan Kapasitas.

  3. Klik tab Komitmen slot. Komitmen kapasitas Anda tercantum pada tabel di bagian Komitmen.

    Komitmen slot.

SQL

Untuk melihat komitmen suatu project administrasi, buat kueri tabel virtual INFORMATION_SCHEMA.CAPACITY_COMMITMENTS_BY_PROJECT.

  1. Di Konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. 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:

  3. 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:

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:

  1. Di Konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di panel navigasi, buka bagian Pengelolaan Kapasitas.

  3. Klik tab Komitmen slot.

  4. Temukan komitmen yang ingin diedit.

  5. Klik Tindakan, lalu pilih opsi Edit paket perpanjangan.

  6. 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:

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 ID
  • LOCATION: lokasi komitmen
  • PLAN_TYPE: jenis paket, seperti FLEX, MONTHLY, atau ANNUAL.
  • RENEWAL_PLAN: paket perpanjangan

    Ini hanya berlaku jika PLAN_TYPE adalah ANNUAL. Jika PLAN_TYPE adalah MONTHLY, hapus flag ini.

  • COMMITMENT_ID: ID komitmen

    Untuk 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

  1. Di konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di panel navigasi, buka bagian Pengelolaan Kapasitas.

  3. Klik tab Komitmen slot.

  4. Pilih komitmen yang ingin dipisahkan.

  5. Klik Pisahkan.

  6. Di halaman Memisahkan komitmen, gunakan penggeser Konfigurasi pemisahan untuk memilih jumlah slot yang masuk ke setiap pemisahan, dengan kelipatan 100 slot.

  7. 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 ID
  • LOCATION: lokasi komitmen
  • SLOTS_TO_SPLIT: jumlah slot yang akan dipisahkan dari komitmen awal terkait ke komitmen baru
  • COMMITMENT_ID: ID komitmen

    Untuk 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

  1. Di konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di panel navigasi, buka bagian Pengelolaan Kapasitas.

  3. Klik tab Komitmen slot.

  4. Pilih komitmen yang ingin digabungkan.

  5. Klik Gabungkan.

  6. 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 ID
  • LOCATION: lokasi komitmen
  • COMMITMENT1: komitmen pertama yang akan digabungkan
  • COMMITMENT2: 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:

  1. Di Konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di panel navigasi, buka bagian Pengelolaan kapasitas.

  3. Klik tab Komitmen slot.

  4. Di menu drop-down Lokasi, pilih lokasi yang sesuai.

  5. Temukan komitmen yang ingin dihapus.

  6. Perluas opsi Tindakan.

  7. Klik Delete.

  8. Ketik "REMOVE", lalu klik Lanjutkan.

SQL

Untuk menghapus komitmen kapasitas, gunakan pernyataan DDL DROP CAPACITY.

  1. Di Konsol Google Cloud, buka halaman BigQuery.

    Buka BigQuery

  2. Di editor kueri, masukkan pernyataan berikut:

    DROP CAPACITY
      `ADMIN_PROJECT_ID.region-LOCATION.COMMITMENT_ID`;

    Ganti kode berikut:

  3. 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:

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:

  1. Hapus komitmen yang tertunda.
  2. Beli komitmen baru untuk jumlah slot yang lebih kecil. Tergantung kapasitas yang tersedia, komitmen yang lebih kecil dapat langsung aktif.
  3. Beli sisa slot sebagai komitmen terpisah. Slot ini mungkin akan ditampilkan sebagai tertunda di kolom Status, tetapi umumnya akan aktif dalam beberapa jam.
  4. 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.