Mencantumkan reservasi

Mencantumkan semua pemesanan BigQuery dalam project dan lokasi tertentu.

Contoh kode

Node.js

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Node.js API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

const {ReservationServiceClient} =
  require('@google-cloud/bigquery-reservation').v1;
const {status} = require('@grpc/grpc-js');

const client = new ReservationServiceClient();

/**
 * Lists all reservations for the project in the specified location.
 *
 * A reservation provides computational resource guarantees, in the form of
 * slots, to users.
 *
 * @param {string} projectId Google Cloud project ID. for example 'example-project-id'
 * @param {string} location Google Cloud location. for example 'us-central1'
 */
async function listReservations(projectId, location = 'us-central1') {
  const request = {
    parent: `projects/${projectId}/locations/${location}`,
  };

  try {
    const [reservations] = await client.listReservations(request);

    if (reservations.length === 0) {
      console.log(
        `No reservations found in project ${projectId} in location ${location}.`,
      );
      return;
    }

    console.log(
      `Reservations in project ${projectId} in location ${location}:`,
    );
    for (const reservation of reservations) {
      console.log(`- Reservation: ${reservation.name}`);
      console.log(`  Slot capacity: ${reservation.slotCapacity}`);
      console.log(`  Ignore idle slots: ${reservation.ignoreIdleSlots}`);
    }
  } catch (err) {
    if (err.code === status.NOT_FOUND) {
      console.log(`Project or location not found: ${request.parent}`);
    } else {
      console.error('An error occurred while listing reservations:', err);
    }
  }
}

Python

Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai BigQuery menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi BigQuery Python API.

Untuk melakukan autentikasi ke BigQuery, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk library klien.

from google.api_core import exceptions
from google.cloud import bigquery_reservation_v1

client = bigquery_reservation_v1.ReservationServiceClient()


def list_reservations(project_id: str, location: str):
    """Lists all reservations for a project and location.

    A reservation provides computational resource guarantees, in the form of
    slots, to users. This sample shows how to list existing reservations
    within a specific project and location.

    Args:
        project_id: The Google Cloud project ID.
        location: The geographic location of the reservations, for example, us-central1.
    """

    parent = f"projects/{project_id}/locations/{location}"

    try:
        print(f"Listing reservations for parent: '{parent}':")
        for reservation in client.list_reservations(parent=parent):
            print(f"\tReservation: {reservation.name}")
            print(f"\tSlot capacity: {reservation.slot_capacity}")

        print("Finished listing reservations.")
    except exceptions.NotFound:
        print(
            f"Parent resource '{parent}' was not found. Please check your project ID and location."
        )

Langkah berikutnya

Untuk menelusuri dan memfilter contoh kode untuk produk Google Cloud lainnya, lihat Google Cloud browser contoh.