מחיקת קבוצת הזמנות

מחיקת קבוצת הזמנות מ-BigQuery Reservation API. אפשר למחוק קבוצת הזמנות רק אם היא לא מכילה הזמנות צאצא.

דוגמת קוד

Java

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Java API.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.

import com.google.api.gax.rpc.ApiException;
import com.google.api.gax.rpc.NotFoundException;
import com.google.cloud.bigquery.reservation.v1.DeleteReservationGroupRequest;
import com.google.cloud.bigquery.reservation.v1.ReservationGroupName;
import com.google.cloud.bigquery.reservation.v1.ReservationServiceClient;
import java.io.IOException;

public class DeleteReservationGroup {

  /**
   * Deletes a specified BigQuery reservation group. A reservation group cannot be deleted if it
   * contains any reservations.
   *
   * @param projectId The Google Cloud project ID (for example, "example-project-id").
   * @param location The geographic location of the reservation group (for example, "us-central1").
   * @param reservationGroupId The ID of the reservation group to delete (for example,
   *     "example-reservation-group").
   */
  public static void deleteReservationGroup(
      String projectId, String location, String reservationGroupId) {
    ReservationGroupName name =
        ReservationGroupName.of(projectId, location, reservationGroupId);

    DeleteReservationGroupRequest request =
        DeleteReservationGroupRequest.newBuilder().setName(name.toString()).build();

    try (ReservationServiceClient client = ReservationServiceClient.create()) {
      client.deleteReservationGroup(request);
      System.out.printf("Deleted reservation group: '%s'%n", name);
    } catch (NotFoundException err) {
      System.err.printf(
          "error: reservation group '%s' not found in location '%s' for project '%s': %s%n",
          reservationGroupId, location, projectId, err.getMessage());
    } catch (ApiException | IOException err) {
      System.err.printf(
          "error: failed to delete reservation group '%s' in location '%s' for project '%s': %s%n",
          reservationGroupId, location, projectId, err.getMessage());
    }
  }

Node.js

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Node.js API.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.

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

const client = new ReservationServiceClient();

/**
 * Deletes the specified reservation group.
 * A reservation group can only be deleted if it contains no reservations.
 * @param {string} projectId Google Cloud Project ID, for example 'example-project-id'.
 * @param {string} location Google Cloud Location, for example 'us-central1'.
 * @param {string} reservationGroupId The ID of the reservation group to delete, for example 'example-reservation-group'.
 */
async function deleteReservationGroup(
  projectId,
  location = 'us-central1',
  reservationGroupId = 'example-group-reservation',
) {
  const request = {
    name: client.reservationGroupPath(projectId, location, reservationGroupId),
  };

  try {
    await client.deleteReservationGroup(request);
    console.log(`Deleted reservation group: ${reservationGroupId}`);
  } catch (err) {
    if (err.code === status.NOT_FOUND) {
      console.log(
        `Reservation group ${reservationGroupId} does not exist in location ${location} of project ${projectId}.`,
      );
    } else {
      console.error(
        `Error deleting reservation group ${reservationGroupId}:`,
        err,
      );
    }
  }
}

Python

לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של BigQuery באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של BigQuery Python API.

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.

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


client = bigquery_reservation_v1.ReservationServiceClient()


def delete_reservation_group(project_id: str, location: str, reservation_group_id: str):
    """Deletes a reservation group.

    Note that a reservation group cannot be deleted if it contains any
    reservations.

    Args:
        project_id: The Google Cloud project ID.
        location: The geographic location of the reservation group, for example, us-central1.
        reservation_group_id: The ID of the reservation group to delete.
    """
    name = client.reservation_group_path(project_id, location, reservation_group_id)

    try:
        client.delete_reservation_group(name=name)
        print(f"Deleted reservation group: '{name}'")
    except NotFound:
        print(f"Reservation group '{name}' not found.")

המאמרים הבאים

כדי לחפש ולסנן דוגמאות קוד למוצרים אחרים של Google Cloud , ראו דפדפן לדוגמה שלGoogle Cloud .