Crear un grupo de reservas

Crea un grupo de reservas en un proyecto y una ubicación concretos. Un grupo de reservas es un contenedor de reservas de BigQuery.

Código de ejemplo

Node.js

Antes de probar este ejemplo, sigue las Node.jsinstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

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

const client = new ReservationServiceClient();

/**
 * Creates a new reservation group.
 * A reservation group is a container for reservations. This can be useful for
 * managing reservations for different teams or workloads.
 *
 * @param projectId Google Cloud project ID, for example 'example-project-id'.
 * @param location The Google Cloud location where the reservation group will be created, for example 'us-central1'.
 * @param reservationGroupId The ID to use for the reservation group, for example 'example-reservation-group'.
 */
async function createReservationGroup(projectId,
  location = 'us-central1',
  reservationGroupId = 'example-group-reservation',) {
  const request = {
    parent: `projects/${projectId}/locations/${location}`,
    reservationGroupId,
    reservationGroup: {},
  };

  try {
    const [reservationGroup] = await client.createReservationGroup(request);
    console.log(`Created reservation group: ${reservationGroup.name}`);
  } catch (err) {
    if (err.code === status.ALREADY_EXISTS) {
      console.log(
        `Reservation group '${reservationGroupId}' already exists in project '${projectId}' in location '${location}'.`,
      );
    } else {
      console.error('Error creating reservation group:', err);
    }
  }
}

Python

Antes de probar este ejemplo, sigue las Pythoninstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Python de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

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


client = bigquery_reservation_v1.ReservationServiceClient()


def create_reservation_group(project_id: str, location: str, reservation_group_id: str):
    """Creates a reservation group.

    A reservation group is a container for reservations.

    Args:
        project_id: The Google Cloud project ID.
        location: The geographic location where the reservation group should be created.
        reservation_group_id: The ID of the reservation group to create.
            It must only contain lower case alphanumeric characters or dashes.
            It must start with a letter and must not end with a dash.
            Its maximum length is 64 characters.
    """
    parent = f"projects/{project_id}/locations/{location}"
    reservation_group = bigquery_reservation_v1.types.ReservationGroup()

    request = bigquery_reservation_v1.CreateReservationGroupRequest(
        parent=parent,
        reservation_group_id=reservation_group_id,
        reservation_group=reservation_group,
    )

    try:
        response = client.create_reservation_group(request=request)
        print(f"Created reservation group: {response.name}")
    except exceptions.AlreadyExists:
        full_reservation_group_name = client.reservation_group_path(
            project_id, location, reservation_group_id
        )
        print(f"Reservation group '{full_reservation_group_name}' already exists.")

Siguientes pasos

Para buscar y filtrar ejemplos de código de otros productos de Google Cloud , consulta el Google Cloud navegador de ejemplos.