Comprar y gestionar compromisos de ranura antiguos
La API BigQuery Reservation te permite comprar ranuras dedicadas (llamadas compromisos), crear grupos de ranuras (llamados reservas) y asignar proyectos, carpetas y organizaciones a esas reservas.
Una confirmación de capacidad es una compra de capacidad de computación de BigQuery durante un periodo mínimo. Comprar una confirmación de capacidad es opcional al crear una reserva con una edición, pero puede suponer un ahorro de costes.
Los compromisos son recursos regionales. Los compromisos que se compren en una región o en varias regiones no se pueden utilizar en otras regiones o multirregiones. Los compromisos no se pueden mover entre regiones ni entre regiones y multirregiones.
Habilitar la API Reservations
La API Reservation de BigQuery es distinta de la API de BigQuery y debe habilitarse por separado. Para obtener más información, consulta el artículo sobre cómo habilitar e inhabilitar las APIs.
- El nombre de la API es "API BigQuery Reservations".
- El endpoint de la API Reservation de BigQuery es
bigqueryreservation.googleapis.com
.

Comprar slots
Para reservar capacidad durante un periodo mínimo, puedes comprar un compromiso de capacidad. De esta forma, se aplica un descuento y se ahorran costes. Para obtener más información sobre los costes específicos, consulta los precios de BigQuery.
Permisos obligatorios
Para crear un compromiso de capacidad, necesitas el siguiente permiso de gestión de identidades y accesos (IAM):
bigquery.capacityCommitments.create
en el proyecto de administración que mantiene la propiedad de los compromisos.
Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye este permiso:
BigQuery Admin
BigQuery Resource Admin
Para obtener más información sobre los roles de gestión de identidades y accesos en BigQuery, consulta el artículo sobre roles y permisos predefinidos.
Crear una confirmación de capacidad
Los compromisos son recursos regionales. Los compromisos que se compren en una región o en varias regiones no se pueden utilizar en otras regiones o multirregiones. Los compromisos no se pueden mover entre regiones ni entre regiones y multirregiones.
Consola
En la Google Cloud consola, ve a la página BigQuery.
En el menú de navegación, haz clic en Gestión de la capacidad.
Haz clic en Crear compromiso.
En Configurar:
- Selecciona la ubicación.
- En la sección Modelo de capacidad, seleccione el modelo de capacidad.
- Selecciona la Duración del compromiso, que especifica tu plan de compromiso.
Si vas a comprar un compromiso anual, selecciona el plan de renovación que quieras que se aplique cuando venza el compromiso:
- Cancelar renovación y pasar a confirmación mensual (opción predeterminada). Cuando vence el compromiso anual, se convierte en un compromiso mensual.
- Renovar anualmente. Cuando vence el compromiso anual, se renueva por otro año como compromiso anual.
- Cancelar renovación y pasar a ranuras flexibles. Cuando vence el compromiso anual, se convierte en un compromiso de slots flexibles.
Para obtener más información, consulta el artículo Compromisos de espacio publicitario.
Introduce el Número de ranuras que quieras comprar.
Haz clic en Siguiente.
Revisa la estimación del coste de tu compra.
En Confirmar y enviar:
- Escribe CONFIRM para confirmar la compra.
- Haz clic en Comprar para comprar los espacios.
Para ver el compromiso, haz clic en Ver confirmaciones de ranuras. Una vez que se ha aprovisionado la capacidad, el compromiso de capacidad solicitado tiene el estado verde.
La primera vez que compres capacidad, se creará una default
reserva.
SQL
Para crear un compromiso de capacidad, usa la declaración de DDL CREATE CAPACITY
.
En la Google Cloud consola, ve a la página BigQuery.
En el editor de consultas, introduce la siguiente instrucción:
CREATE CAPACITY `ADMIN_PROJECT_ID.region-LOCATION.COMMITMENT_ID` OPTIONS ( slot_count = NUMBER_OF_SLOTS, plan = 'PLAN_TYPE');
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el ID del proyecto de administración que mantendrá la propiedad de este compromisoLOCATION
: la ubicación del compromisoCOMMITMENT_ID
: el ID del compromisoDebe ser único en el proyecto y la ubicación. Debe empezar y acabar con una letra minúscula o un número, y solo puede contener letras minúsculas, números y guiones.
NUMBER_OF_SLOTS
: el número de ranuras que quieres comprarPLAN_TYPE
: el tipo de plan, comoFLEX
,MONTHLY
oANNUAL
.
Haz clic en
Ejecutar.
Para obtener más información sobre cómo ejecutar consultas, consulta Ejecutar una consulta interactiva.
bq
Usa el comando bq mk
con la
marca --capacity_commitment
para comprar espacios.
bq mk \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --capacity_commitment=true \ --plan=PLAN_TYPE \ --slots=NUMBER_OF_SLOTS
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el ID del proyecto de administración que mantendrá la propiedad de este compromiso.LOCATION
: la ubicación del compromisoPLAN_TYPE
: el tipo de plan, comoFLEX
,MONTHLY
oANNUAL
.NUMBER_OF_SLOTS
: número de espacios publicitarios que se van a comprar.
Ver confirmaciones de capacidad
Permisos obligatorios
Para ver los compromisos, necesitas el siguiente permiso de Gestión de Identidades y Accesos (IAM):
bigquery.capacityCommitments.list
en el proyecto de administración que mantiene la propiedad de los compromisos.
Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye este permiso:
BigQuery Admin
BigQuery Resource Admin
BigQuery Resource Editor
BigQuery Resource Viewer
BigQuery User
Para obtener más información sobre los roles de gestión de identidades y accesos en BigQuery, consulta el artículo sobre roles y permisos predefinidos.
Ver confirmaciones de capacidad por proyecto
Para ver tus compromisos de capacidad por proyecto, sigue estos pasos:
Consola
En la Google Cloud consola, ve a la página BigQuery.
En el menú de navegación, haz clic en Gestión de la capacidad.
Haz clic en la pestaña Compromisos de espacio publicitario. Tus confirmaciones de capacidad se muestran en la tabla de la sección Confirmaciones.
SQL
Para ver los compromisos de un proyecto de administración, consulta la vista INFORMATION_SCHEMA.CAPACITY_COMMITMENTS_BY_PROJECT
.
En la Google Cloud consola, ve a la página BigQuery.
En el editor de consultas, introduce la siguiente instrucción:
SELECT capacity_commitment_id FROM `region-LOCATION`.INFORMATION_SCHEMA.CAPACITY_COMMITMENTS_BY_PROJECT WHERE project_id = 'ADMIN_PROJECT_ID' AND slot_count = 100;
Haz los cambios siguientes:
LOCATION
: la ubicación de los compromisos.ADMIN_PROJECT_ID
: el ID de proyecto del proyecto de administración que tiene las confirmaciones
Haz clic en
Ejecutar.
Para obtener más información sobre cómo ejecutar consultas, consulta Ejecutar una consulta interactiva.
bq
Usa el comando bq ls
con la
marca --capacity_commitment
para enumerar los compromisos de un proyecto de administración.
bq ls \ --capacity_commitment=true \ --location=LOCATION \ --project_id=ADMIN_PROJECT_ID
Haz los cambios siguientes:
LOCATION
: la ubicación de los compromisosADMIN_PROJECT_ID
: el ID de proyecto del proyecto de administración que tiene las confirmaciones
Actualizar confirmaciones de capacidad
Puede hacer los siguientes cambios en una confirmación de capacidad:
- Renovar un compromiso.
- Convertir un compromiso en un plan sujeto a un compromiso con una duración mayor.
- Dividir un compromiso en dos.
- Combinar dos compromisos en uno solo.
Permisos obligatorios
Para actualizar los compromisos de capacidad, necesitas el siguiente permiso de gestión de identidades y accesos (IAM):
bigquery.capacityCommitments.update
en el proyecto de administración que mantiene la propiedad de los compromisos.
Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye este permiso:
BigQuery Admin
BigQuery Resource Admin
Para obtener más información sobre los roles de gestión de identidades y accesos en BigQuery, consulta el artículo sobre roles y permisos predefinidos.
Renovar un compromiso
Los compromisos anuales tienen un plan de renovación que se especifica al crear o convertir un compromiso anual. Puedes cambiar el plan de renovación de tu compromiso anual en cualquier momento antes de la fecha de finalización del compromiso.
Consola
Para cambiar tu plan de renovación de un compromiso anual, sigue estos pasos:
En la Google Cloud consola, ve a la página BigQuery.
En el menú de navegación, haz clic en Gestión de la capacidad.
Haz clic en la pestaña Compromisos de espacio publicitario.
Busca el compromiso que quieras editar.
Haz clic en
Acciones y, a continuación, selecciona la opción Editar plan de renovación.Selecciona el nuevo plan de renovación.
bq
Para cambiar el plan de renovación de un compromiso anual, usa el comando bq update
con la marca --capacity_commitment
y la marca --renewal_plan
.
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --renewal_plan=PLAN_TYPE \ --capacity_commitment=true \ COMMITMENT_ID
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el ID del proyecto de administración que mantendrá la propiedad de este compromiso.LOCATION
: la ubicación del compromisoPLAN_TYPE
: el tipo de plan, comoFLEX
,MONTHLY
oANNUAL
.COMMITMENT_ID
: el ID del compromisoPara obtener el ID, consulta Ver compromisos comprados.
Convertir un compromiso en uno de mayor duración
Puedes convertir tu compromiso en un tipo de compromiso de mayor duración en cualquier momento:
- Puedes convertir tu compromiso de espacios flexibles en un compromiso mensual o anual.
- Puedes convertir tu compromiso mensual en un compromiso anual.
En cuanto actualices tu compromiso, se te cobrará la tarifa asociada al nuevo plan y se restablecerá la fecha de finalización.
Para convertir un compromiso, usa el
comando bq update
con la
marca --plan
.
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --plan=PLAN_TYPE \ --renewal_plan=RENEWAL_PLAN \ --capacity_commitment=true \ COMMITMENT_ID
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el ID del proyectoLOCATION
: la ubicación del compromisoPLAN_TYPE
: el tipo de plan, comoFLEX
,MONTHLY
oANNUAL
.RENEWAL_PLAN
: el plan de renovaciónEsto solo se aplica si
PLAN_TYPE
esANNUAL
. SiPLAN_TYPE
esMONTHLY
, omite esta marca.COMMITMENT_ID
: el ID del compromisoPara obtener el ID, consulta Ver compromisos comprados.
Dividir una confirmación
Puedes dividir tu compromiso en dos. Esto puede ser útil si quieres renovar parte de un compromiso. Por ejemplo, si tienes un compromiso anual de 1000 ranuras, puedes dividir 300 ranuras en un nuevo compromiso y dejar 700 ranuras en el compromiso original. De este modo, podrías renovar 700 ranuras con la tarifa anual y convertir 300 ranuras en ranuras flexibles después de la fecha de finalización.
Cuando divides un compromiso, el nuevo compromiso tiene el mismo plan y la misma fecha de finalización que el compromiso original.
Consola
En la Google Cloud consola, ve a la página BigQuery.
En el menú de navegación, haz clic en Gestión de la capacidad.
Haz clic en la pestaña Compromisos de espacio publicitario.
Selecciona el compromiso que quieras dividir.
Haz clic en Dividir.
En la página Dividir compromiso, usa el control deslizante Configurar división para seleccionar cuántos espacios publicitarios se incluirán en cada división, en incrementos de 100 espacios.
Haz clic en Dividir para dividir el compromiso. El nuevo compromiso se muestra en la pestaña Compromisos de ranuras.
bq
Para dividir los compromisos, usa el comando bq update
.
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --split \ --slots=SLOTS_TO_SPLIT \ --capacity_commitment=true \ COMMITMENT_ID
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el ID del proyectoLOCATION
: la ubicación del compromisoSLOTS_TO_SPLIT
: número de ranuras que se van a dividir del compromiso original en un nuevo compromisoCOMMITMENT_ID
: el ID del compromisoPara obtener el ID, consulta Ver compromisos comprados.
Combinar dos compromisos
Puedes combinar varios compromisos en uno solo. Todos los compromisos que se combinen deben ser del mismo tipo (FLEX
, MONTHLY
, ANNUAL
o THREE_YEAR
). La fecha de finalización del compromiso combinado es la fecha de finalización máxima de los compromisos originales. Si alguno de los compromisos tiene una fecha de finalización anterior, se ampliará hasta la fecha posterior y se te cobrará un importe prorrateado por esos espacios.
Consola
En la Google Cloud consola, ve a la página BigQuery.
En el menú de navegación, haz clic en Gestión de la capacidad.
Haz clic en la pestaña Compromisos de espacio publicitario.
Selecciona los compromisos que quieras combinar.
Haz clic en Combinar.
En la página Combinar compromisos, revisa los detalles de la combinación y haz clic en Combinar. El nuevo compromiso combinado se muestra en la pestaña Compromisos de ranuras.
bq
Para combinar dos compromisos en uno, usa el comando bq update
:
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --merge=true \ --capacity_commitment=true \ COMMITMENT1,COMMITMENT2
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el ID del proyectoLOCATION
: la ubicación de los compromisosCOMMITMENT1
: la primera confirmación de la combinaciónCOMMITMENT2
: el segundo compromiso que se va a combinar
Eliminar un compromiso
Puedes eliminar una confirmación de capacidad si su fecha de finalización ya ha pasado. La fecha de finalización del compromiso se muestra en la Google Cloud consola. Antes de eliminar un compromiso, asegúrate de que haya suficientes espacios sin asignar. Si no es así, debes reducir el número de espacios de una reserva o eliminar las reservas por completo.
Permisos obligatorios
Para eliminar compromisos de capacidad, necesitas el siguiente permiso de gestión de identidades y accesos (IAM):
bigquery.capacityCommitments.delete
en el proyecto de administración que mantiene la propiedad de los compromisos.
Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye este permiso:
BigQuery Admin
BigQuery Resource Admin
Para obtener más información sobre los roles de gestión de identidades y accesos en BigQuery, consulta el artículo sobre roles y permisos predefinidos.
Eliminar una confirmación de capacidad
Consola
Para eliminar un compromiso de capacidad, sigue estos pasos:
En la Google Cloud consola, ve a la página BigQuery.
En el menú de navegación, haz clic en Gestión de la capacidad.
Haz clic en la pestaña Compromisos de espacio publicitario.
En la lista desplegable Ubicación, selecciona la ubicación adecuada.
Busca el compromiso que quieras eliminar.
Abre la opción
Acciones.Haz clic en Eliminar.
Escribe "ELIMINAR" y haz clic en Continuar.
SQL
Para eliminar una confirmación de capacidad, usa la declaración de DDL DROP CAPACITY
.
En la Google Cloud consola, ve a la página BigQuery.
En el editor de consultas, introduce la siguiente instrucción:
DROP CAPACITY `ADMIN_PROJECT_ID.region-LOCATION.COMMITMENT_ID`;
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el proyecto al que pertenece el compromisoLOCATION
: la ubicación del compromisoCOMMITMENT_ID
: el ID del compromisoPara obtener el ID, consulta Ver compromisos comprados.
Haz clic en
Ejecutar.
Para obtener más información sobre cómo ejecutar consultas, consulta Ejecutar una consulta interactiva.
bq
Para eliminar una confirmación de capacidad, usa el comando bq rm
con la marca --capacity_commitment
:
bq rm \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --capacity_commitment=true \ COMMITMENT_ID
Haz los cambios siguientes:
ADMIN_PROJECT_ID
: el ID del proyectoLOCATION
: la ubicación del compromisoCOMMITMENT_ID
: el ID del compromiso que quieres eliminarPara obtener el ID, consulta Ver compromisos comprados.
Solucionar problemas con los compromisos de capacidad
En esta sección se describen los pasos para solucionar problemas que pueden resultarte útiles si tienes algún problema mientras usas las reservas de BigQuery.
Los espacios comprados están pendientes
Los slots están sujetos a la capacidad disponible. Cuando compras compromisos de ranuras y BigQuery los asigna, en la columna Estado se muestra una marca de verificación. Si BigQuery no puede asignar los slots solicitados inmediatamente, la columna Estado se mantendrá en estado pendiente. Es posible que tengas que esperar varias horas hasta que los slots estén disponibles. Si necesitas acceder a los espacios antes, prueba lo siguiente:
- Elimina el compromiso pendiente.
- Adquiere un nuevo compromiso con un número menor de ranuras. En función de la capacidad, el compromiso más pequeño puede activarse inmediatamente.
- Compra los espacios restantes con un compromiso independiente. Es posible que estos espacios aparezcan como pendientes en la columna Estado, pero suelen activarse en un plazo de unas horas.
- Opcional: Cuando ambas opciones estén disponibles, puedes combinarlas en una sola, siempre que hayas comprado el mismo plan para ambas.
Si una reserva de espacio falla o tarda mucho en completarse, considera la posibilidad de usar los precios bajo demanda temporalmente. Con esta solución, puede que tengas que ejecutar consultas críticas en un proyecto diferente que no esté asignado a ninguna reserva o que tengas que eliminar la asignación del proyecto por completo.