Administración de cargas de trabajo con reservas

En esta página, se describe cómo usar las reservas de ranuras para administrar tus cargas de trabajo de BigQuery.

Reservas de ranuras

En BigQuery, las ranuras se asignan en grupos denominados reservas. Las reservas te permiten administrar la capacidad y aislar las cargas de trabajo de formas adecuadas para tu organización. Por ejemplo, puedes crear una reserva llamada prod para las cargas de trabajo de producción y otra llamada test para las pruebas, de modo que los trabajos de prueba no compitan por los recursos con los trabajos de producción. O bien, puedes crear reservas para diferentes departamentos de tu organización para asignar los costos de procesamiento.

A pesar de su nombre, la capacidad de una reserva no necesariamente está reservada. Cuando usas reservas con ajuste de escala automático, la capacidad se ajusta automáticamente según la demanda. Además, las ranuras inactivas se pueden compartir entre las reservas.

Asignaciones de reservas

Para usar las ranuras asignadas en una reserva, debes asignarla a uno o más proyectos, carpetas u organizaciones. Cuando se ejecuta un trabajo en un proyecto, usa ranuras de su reserva asignada. Los recursos pueden heredar asignaciones de su superior en la Google Cloud jerarquía de recursos. Si un proyecto no está asignado a una reserva, hereda la asignación de la organización o la carpeta principal, si existe.

Los proyectos usan la reserva única más específica de la jerarquía de recursos a la que están asignados. Una asignación de carpeta anula una asignación de organización y una asignación de proyecto anula una asignación de carpeta.

Si un proyecto no tiene una reserva asignada o heredada, el trabajo usa precios según demanda. Para obtener más información sobre la jerarquía de recursos, consulta Organiza recursos de BigQuery.

Los recursos se pueden asignar a None para representar la ausencia de una asignación. Los proyectos asignados a None siempre usan los precios según demanda. Un caso de uso común para las asignaciones None es asignar una organización a una reserva y, luego, usar None para inhabilitar ciertos proyectos o carpetas de esa reserva. Para obtener más información, consulta Asigna un proyecto a None.

Cuando creas una asignación, debes especificar el tipo de trabajo para esa asignación:

  • QUERY: Usa esta reserva para los trabajos de consulta no continuos, incluidas las consultas de SQL, DDL, DML y BigQuery ML (modelos integrados).

  • BACKGROUND_CHANGE_DATA_CAPTURE: Usa esta reserva cuando elijas usar tu propia reserva para ejecutar tus trabajos en segundo plano de captura de datos modificados (CDC) de BigQuery. Las reservas de BACKGROUND_CHANGE_DATA_CAPTURE no están disponibles en la edición Estándar.

  • BACKGROUND_COLUMN_METADATA_INDEX: Usa esta reserva cuando elijas usar tu propia reserva para ejecutar tus trabajos en segundo plano de caché de metadatos de BigLake. También usa esta reserva cuando repliques las bases de datos de origen en BigQuery con las operaciones de aplicación en segundo plano de Datastream. Las reservas de BACKGROUND_COLUMN_METADATA_INDEX no están disponibles en la edición Estándar.

  • BACKGROUND_SEARCH_INDEX_REFRESH: Usa esta reserva cuando elijas usar tu propia reserva para ejecutar tus trabajos en segundo plano de administración de índice de búsqueda de BigQuery. Las reservas de BACKGROUND_SEARCH_INDEX_REFRESH no están disponibles en la edición Estándar.

  • BACKGROUND: Usa esta reserva cuando elijas usar tu propia reserva para replicar bases de datos de origen en BigQuery con las operaciones de aplicación en segundo plano de Datastream. Esta reserva también se usará para los trabajos que se describen en BACKGROUND_CHANGE_DATA_CAPTURE, BACKGROUND_COLUMN_METADATA_INDEX y BACKGROUND_SEARCH_INDEX_REFRESH como alternativa si no existe una reserva más específica para esos tipos de trabajos. Las reservas de BACKGROUND no están disponibles en la edición Estándar.

  • CONTINUOUS: Usa esta reserva para trabajos de consulta continua.

  • ML_EXTERNAL: Usa esta reserva para las consultas de BigQuery ML CREATE MODEL que usan servicios externos a BigQuery. Para obtener más información, consulta Asigna ranuras a las cargas de trabajo de BigQuery ML. Las reservas de ML_EXTERNAL no están disponibles en la edición Estándar.

  • PIPELINE: usa esta reserva para los trabajos de carga y extracción.

    De forma predeterminada, los trabajos de carga y de exportación son gratuitos y usan un grupo compartido de ranuras. BigQuery no garantiza la disponibilidad de capacidad para este grupo compartido o la capacidad de procesamiento que observas. Si cargas grandes cantidades de datos, puede que el trabajo deba esperar a que las ranuras estén disponibles. En ese caso, se recomienda comprar ranuras dedicadas y asignarles trabajos de PIPELINE. Como práctica recomendada, crea una reserva dedicada adicional con la opción Ignorar ranuras inactivas habilitada. Para obtener más información sobre las ranuras inactivas, consulta Ranuras inactivas.

    Cuando los trabajos de carga y de extracción se asignan a una reserva, pierden acceso al grupo gratuito. Debes supervisar el uso y los trabajos de recursos para asegurarte de que tus reservas tengan suficiente capacidad para funcionar mejor que usar el grupo gratuito.

No puedes asignar ranuras individuales a tareas específicas. El programador de BigQuery controla la asignación de ranuras para los trabajos que usan una reserva. Para obtener más información sobre cómo se usan las ranuras, consulta Programación justa en BigQuery.

Asigna reservas de forma flexible

BigQuery te permite especificar en qué reserva se debe ejecutar una consulta en el tiempo de ejecución. Esto te brinda más control sobre la asignación de recursos y te permite evitar la creación de proyectos innecesarios. Puedes especificar una reserva en el tiempo de ejecución con la CLI, la IU, SQL o la API, y anular la asignación de reserva predeterminada para tu proyecto, carpeta u organización. La reserva asignada debe estar en la misma región que la consulta que ejecutas. Estas asignaciones se admiten en todas las ediciones.

Debes tener acceso a la reserva para usarla cuando ejecutes tu consulta.

Para asignar reservas de forma flexible, ejecuta una consulta interactiva y especifica la reserva.

Combina reservas con facturación según demanda

Puedes usar la facturación basada en la capacidad en una región y la facturación según demanda en otra región. De forma predeterminada, todos los proyectos usan la facturación según demanda. Dentro de una región, puedes habilitar la facturación basada en la capacidad para un proyecto, una carpeta o una organización si lo asignas a una reserva. Por ejemplo, si adquieres un compromiso de ranuras en la multirregión de EE.UU. y asignas la organización a la reserva predeterminada, la organización usará la facturación basada en la capacidad en la multirregión de EE.UU., pero seguirá usando la facturación según demanda en todas las demás regiones.

Dentro de una región, puedes combinar la facturación basada en la capacidad y la facturación según demanda mediante la asignación explícita de proyectos a una reserva. Cualquier proyecto que no esté asignado a una reserva seguirá usando la facturación según demanda. También puedes asignar un proyecto para que use la facturación según demanda de forma explícita si asignas el ID de reserva none. Esto es útil si asignas una carpeta o una organización a una reserva, pero deseas que algunos proyectos dentro de alguna de estas usen la facturación según demanda. Para obtener más información, consulta Otorga una asignación None a un proyecto.

Los proyectos con facturación según demanda usan una capacidad distinta de tu capacidad comprometida. Esos proyectos no afectan la disponibilidad de carga de trabajo.

Cómo especificar un proyecto de administración

Cuando creas compromisos y reservas, estos se asocian a un Google Cloud proyecto. Este proyecto administra los recursos de las reservas de BigQuery y es su fuente principal de facturación. No es necesario que este proyecto sea el mismo que contiene los trabajos o conjuntos de datos de BigQuery.

Como práctica recomendada, crea un proyecto dedicado para los recursos de reserva. Este proyecto se conoce como el proyecto de administración, ya que centraliza la facturación y la administración de los compromisos. Otorga a este proyecto un nombre descriptivo como bq-COMPANY_NAME-admin. Luego, crea uno o más proyectos diferentes para conservar los trabajos de BigQuery.

Solo los proyectos dentro del mismo recurso de la organización que el proyecto de administración se pueden asignar a una reserva. Si el proyecto de administración no forma parte de una organización, solo ese proyecto puede usar las ranuras.

Al proyecto de administración se le cobra por las ranuras comprometidas. A los proyectos que usan las ranuras se les cobra por el almacenamiento, pero no se facturan por las ranuras. Puedes comprar más de un tipo de plan (por ejemplo, anual y por tres años) y colocar las ranuras en el mismo proyecto de administración.

Como práctica recomendada, limita la cantidad de proyectos de administración. Esto ayuda a simplificar la administración de facturación y la asignación de ranuras. Un proyecto de administración para todas las reservas de tu organización cuando sea posible. Las organizaciones complejas pueden requerir proyectos de administración adicionales para cumplir requisitos de administración o facturación.

Usa varios proyectos de administración

En algunos casos, es posible que desees crear más de un proyecto de administración:

  • Separar los costos de varias reservas y compromisos en diferentes unidades organizativas.
  • Asignar uno o más compromisos de ranuras a diferentes conjuntos de reservas.

La capacidad de la ranura de inactividad no se comparte entre reservas en diferentes proyectos de administración.

Cuando te encuentras en la página Administración de capacidad de la consola de BigQuery Google Cloud , puedes ver las reservas y los compromisos solo para el proyecto administrativo seleccionado.

Cómo determinar el tamaño de las reservas de ranuras

BigQuery está diseñado para escalar de forma lineal con más recursos. Según la carga de trabajo, es probable que la capacidad incremental te brinde un rendimiento incremental. Sin embargo, agregar capacidad también aumenta tus costos. Por lo tanto, elegir la cantidad óptima de ranuras que debes comprar depende de los requisitos de rendimiento, de capacidad de procesamiento y de utilidad.

Puedes experimentar con ranuras del modelo de referencia y de ajuste de escala automático para determinar la mejor configuración de ranuras. Por ejemplo, puedes probar la carga de trabajo con 500 ranuras del modelo de referencia, luego con 1,000 y, más adelante, con 1,500 y 2,000, y observar el impacto en el rendimiento.

Después de asignar ranuras y ejecutar tus cargas de trabajo durante al menos siete días, puedes usar el estimador de ranuras para analizar el rendimiento y modelar el efecto de agregar o reducir ranuras.

También puedes examinar el uso de ranuras actual de los proyectos, junto con el precio mensual que deseas pagar. Por el momento, las cargas de trabajo según demanda tienen un límite mínimo de 2,000 ranuras, pero es importante verificar cuántas ranuras realmente usan los proyectos con vistas INFORMATION_SCHEMA.JOBS*, Cloud Logging, la API de Jobs o los registros de auditoría de BigQuery. Para obtener más información, consulta Supervisa reservas.

Línea de tiempo de uso de ranuras.

Administra cargas de trabajo con reservas

Puedes usar las reservas de BigQuery para asignar capacidad entre cargas de trabajo, equipos o departamentos si creas reservas adicionales y asignas proyectos a estas reservas. Una reserva es un grupo aislado de recursos que tiene el beneficio adicional de poder aprovechar la capacidad inactiva en toda la organización.

Por ejemplo, puedes tener una capacidad comprometida total de 1,000 ranuras y tres tipos de cargas de trabajo: ciencia de datos, IE y ELT.

  • Puedes crear una reserva ds con 500 ranuras y asignar todos los proyectos Google Cloud relevantes a la reserva ds.
  • Puedes crear una reserva elt con 300 ranuras y asignar los proyectos que usas para cargas de trabajo de ELT a la reserva elt.
  • Puedes crear una reserva bi con 200 ranuras y asignar los proyectos conectados a tus herramientas de BI a la reserva bi.

Borrar compromisos.

En lugar de particionar tu capacidad entre los tipos de cargas de trabajo, puedes optar por crear reservas para equipos o departamentos individuales.

Administra las reservas en diferentes regiones

Las reservas son recursos regionales. Las ranuras compradas y las reservas creadas en una región no se pueden usar en otra. Los proyectos, las carpetas y las organizaciones se pueden asignar a las reservas de una región y ejecutar a pedido en otra. Para administrar las reservas en otra región, debes cambiar la región en la página Administración de capacidad de BigQuery:

  1. En la consola de BigQuery, haz clic en Reservas.
  2. Haz clic en el selector de Ubicación (Location) y selecciona la región en la que deseas administrar las reservas. Selecciona una región diferente.
  3. Después de seleccionar una región, puedes comprar ranuras, crear reservas y asignar un proyecto a una reserva.

Administra reservas en organizaciones complejas

Las reservas son recursos con alcance a nivel de la organización. Cuando creas reservas, puedes asignar capacidad a cualquier proyecto dentro de la misma organización Google Cloud. La mayoría de los usuarios de BigQuery utilizan un solo proyecto de administración para sus reservas y compromisos. Este proyecto de administración se asocia con una cuenta de Facturación de Cloud, a la que se le factura la capacidad.

Sin embargo, si tienes una organización compleja con varias divisiones que administran sus propias facturas, tal vez te convenga usar varios proyectos de administración. Ten en cuenta que las ranuras inactivas solo se pueden compartir entre las reservas creadas en el mismo proyecto de administración. Debes tener en cuenta las cuotas y los límites para los proyectos de administración y las reservas.

Si usas varias Google Cloud organizaciones, debes crear al menos un proyecto de administración para cada una y, luego, administrar las reservas y los compromisos de cada organización en su proyecto de administración relacionado. No puedes compartir capacidad entre organizaciones.

Administra el control mejorado sobre las reservas

Las reservas en BigQuery ofrecen un mayor control sobre cómo se usan y proporcionan funciones de seguridad adicionales. Puedes definir políticas que especifiquen qué usuarios o grupos pueden acceder a reservaciones específicas y usarlas. Esto garantiza que los datos y las cargas de trabajo sensibles estén aislados y protegidos. Como administrador de reservas, puedes controlar con precisión qué usuarios o cuentas de servicio (principales) están autorizados para usar reservas específicas. Para ello, debes usar las condiciones de IAM aplicadas al proyecto administrativo (el proyecto en el que se administran las reservas).

Por ejemplo, puedes crear una condición de IAM que otorgue el permiso reservations.use a un grupo específico de usuarios para todas las reservas cuyos nombres comiencen con un prefijo determinado. Esto te permite administrar el acceso a conjuntos de reservas relacionadas.

Los usuarios deben tener el permiso reservations.use para anular la reserva predeterminada de sus trabajos. Los roles roles/bigquery.resourceAdmin y roles/bigquery.resourceEditor proporcionan este permiso. Puedes otorgar acceso a usuarios, grupos o cuentas de servicio individuales. También puedes definir políticas basadas en atributos de reserva, como el nombre, ya que las condiciones de IAM admiten el control de acceso basado en atributos.

Para otorgar condiciones de IAM en las reservas, consulta Controla el acceso a las reservas.

Compromisos de ranuras

Un compromiso de ranuras es la compra de ranuras durante un período específico. Puedes comprar ranuras en incrementos de 50, hasta alcanzar el límite de tu cuota de ranuras regional. Los compromisos de capacidad son opcionales, pero pueden proporcionar ahorros de costos para las cargas de trabajo de estado estable. No hay límite en la cantidad de compromisos que puedes crear. Se te cobrará desde el momento en que adquieres el compromiso. Para obtener información de los precios actuales, consulta los precios de compromiso de capacidad.

  • Compromiso anual. Adquieres un compromiso de 365 días. Puedes elegir si deseas renovarlo o convertirlo en un tipo de plan de compromiso diferente después de 365 días.

  • Compromiso por tres años. Adquieres un compromiso de tres años. Puedes elegir si deseas renovarlo o convertirlo en un tipo de plan de compromiso diferente después de 3 años (1,095 días).

Al final del período de compromiso, este se renovará según el plan de renovación seleccionado.

Se te facturará mensualmente por planes de compromiso anuales o de tres años. Sin embargo, tu compromiso financiero es para todo el período del compromiso y no se puede cancelar mensualmente. El uso se actualiza a diario en el informe de facturación, que puedes consultar en cualquier momento.

Los compromisos de ranuras están sujetos a la disponibilidad de capacidad. Cuando intentes comprar compromisos de ranuras, no se garantizará el éxito de la compra. Sin embargo, si logras comprar un compromiso, la capacidad estará disponible hasta que venza.

Si compras compromisos de ranuras antes de crear una reserva, se crea una reserva llamada default de forma automática para tu conveniencia. La reserva default no tiene un comportamiento especial. Puedes crear reservas adicionales si es necesario o usar la reserva predeterminada.

Te recomendamos que asignes un valor de referencia distinto de cero a tus reservas para obtener el rendimiento y la capacidad inicial más predecibles. Si bien puedes configurar una reserva con cero ranuras de referencia y establecer una capacidad máxima con la intención de usar las funciones de ajuste de escala automático, la eficacia de este enfoque depende por completo de que el ajuste de escala automático esté habilitado correctamente y adquiera ranuras de forma activa. Si el ajuste de escala automático no funciona de manera eficaz para una reserva de referencia cero, vuelve a depender únicamente de la capacidad de ranuras inactivas disponibles, lo que no ofrece ninguna garantía de rendimiento y puede generar velocidades de consulta impredecibles o degradadas.

Renueva compromisos

Selecciona un plan de renovación cuando compres un compromiso. Puedes cambiar el plan de renovación de un compromiso en cualquier momento hasta que venza. Los siguientes planes de renovación están disponibles:

  • Ninguno. Una vez finalizado el período compromiso, este se quita. Las reservas no se ven afectadas.
  • Anual. Una vez finalizado el período de compromiso, este se renueva por otro año.
  • Tres años. Una vez finalizado el período de compromiso, este se renueva por otros tres años.

Para obtener información sobre la compra y la renovación de compromisos, consulta Crea un compromiso de capacidad.

Por ejemplo, si compraste un compromiso anual a las 6:00 p.m. el 5 de octubre de 2019, se comenzará a cobrar en ese segundo. Puedes borrar o renovar el compromiso después de las 6:00 p.m. del 4 de octubre de 2020, lo que indica que 2020 es un año bisiesto. Puedes cambiar los planes de renovación antes del 4 de octubre de 2020 a las 6:00 p.m. de la siguiente manera:

  • Si decides renovar tu compromiso a un compromiso anual, el 4 de octubre de 2020 a las 6:00 p.m., tu compromiso se renovará por otro año.
  • Si eliges renovar un compromiso por tres años, el 4 de octubre de 2020 a las 6:00 p.m., tu compromiso se renovará por tres años.

Nota: El proceso de renovación puede tardar hasta una hora después de que venza el compromiso. Por ejemplo, si un compromiso vence a las 6:00 p.m. del 4 de octubre de 2020, el registro del compromiso renovado aparecerá en el sistema entre las 6:00 p.m. y las 7:00 p.m. del 4 de octubre de 2020. No se aplican cargos a pedido durante este período de actualización de datos, ya que la hora de inicio efectiva del compromiso creado es a las 6:00 p.m.

Vencimiento del compromiso

No puedes borrar un compromiso una vez que lo creas. Para borrar un compromiso anual o de tres años, establece su plan de renovación en NONE. Una vez que venza el compromiso, se borra de forma automática. Para obtener más información sobre los vencimientos de compromisos, consulta Vencimiento de compromisos.

Si compras un compromiso de forma accidental o cometiste un error cuando lo configuraste, comunícate con la Asistencia de Facturación de Cloud para obtener ayuda.

Limitaciones de las reservas

  • Las reservas de una organización no se pueden compartir con otras organizaciones.
  • Debes usar reservas y proyectos de administración independientes para cada organización.
  • Cada organización puede tener un máximo de 10 proyectos de administración con reservas activas en una sola ubicación.
  • La capacidad inactiva no se puede compartir entre organizaciones o entre diferentes proyectos de administración dentro de una sola organización.
  • Los compromisos y las reservas son recursos regionales. Los compromisos adquiridos en una o en varias regiones no se pueden usar para reservas en otras regiones ni multirregiones, incluso cuando la ubicación de una sola región se encuentra en la misma ubicación que la multirregional. Por ejemplo, no puedes usar un compromiso comprado en la multirregión EU para una reserva en europe-west4.
  • Los compromisos y las reservas no se pueden mover de una región o multirregión a otra.
  • Los compromisos adquiridos en un proyecto de administración no se pueden mover a otro proyecto de administración.
  • Los compromisos adquiridos con una edición no se pueden usar con reservas de otra edición.
  • Las ranuras inactivas no se comparten entre reservas de ediciones diferentes.
  • Las ranuras con ajuste de escala automático no se pueden compartir, ya que reducen la escala verticalmente cuando ya no son necesarias.

Previsibilidad de la reserva

Para usar la previsibilidad de reservas, primero debes habilitar la equidad de reservas.

La previsibilidad de las reservas te permite establecer la cantidad máxima absoluta de ranuras consumidas en una reserva. BigQuery ofrece ranuras básicas, ranuras inactivas y ranuras de ajuste de escala automático como posibles recursos de capacidad. Cuando crees una reserva con un tamaño máximo, confirma la cantidad de ranuras del modelo de referencia y la configuración adecuada del ajuste de escala automático y las ranuras inactivas según tus cargas de trabajo anteriores.

Para habilitar la previsibilidad de las reservas, debes establecer el valor de las ranuras máximas y el modo de ajuste de escala en la reserva. La cantidad máxima de ranuras debe ser un número positivo y mayor que la cantidad de ranuras del modelo de referencia asignadas a la reserva. Para obtener más información sobre cómo trabajar con la previsibilidad de las reservas, consulta Crea una reserva con ranuras dedicadas. No puedes configurar el valor de autoscale_max_slots cuando estableces el valor máximo de espacios en la reserva.

El valor de ignore_idle_slots debe alinearse con el modo de ajuste. Si el modo de ajuste es ALL_SLOTS o IDLE_SLOTS_ONLY, ignore_idle_slots debe ser falso. Si el modo de ajuste de escala es AUTSOCALE_ONLY, ignore_idle_slots debe ser verdadero.

Puedes configurar tus reservas para que consuman solo las siguientes combinaciones de recursos de capacidad hasta el máximo definido:

  • Ranuras del modelo de referencia + ranuras inactivas: La capacidad de ranuras de la reserva es mayor que cero y el modo de ajuste de escala es IDLE_SLOTS_ONLY. La reserva consume la cantidad configurada de ranuras inactivas disponibles y del modelo de referencia hasta la cantidad máxima de ranuras. Es posible que la reserva no alcance el máximo si no hay suficientes ranuras inactivas disponibles.

  • Ranuras de referencia + ranuras inactivas + ranuras de ajuste de escala automático: La capacidad de ranuras de la reserva es mayor que cero y el modo de ajuste de escala es ALL_SLOTS. Primero, la reserva consume la cantidad configurada de ranuras del modelo de referencia, luego todas las ranuras inactivas disponibles y, por último, las ranuras de ajuste de escala automático.

  • Ranuras de referencia + ranuras de ajuste de escala automático: La capacidad de ranuras de la reserva es mayor que cero y el modo de ajuste de escala es AUTOSCALE_ONLY. Primero, la reserva consume las ranuras de referencia configuradas y, luego, las ranuras de ajuste de escala automático.

  • Ranuras inactivas + ranuras de ajuste de escala automático: La capacidad de ranuras de la reserva es cero y el modo de ajuste de escala es ALL_SLOTS. Primero, la reserva consume todas las ranuras inactivas disponibles y, luego, las ranuras de ajuste de escala automático.

  • Ranuras inactivas: La capacidad de ranuras de la reserva es cero y el modo de ajuste es IDLE_SLOTS_ONLY. La reserva consume todas las ranuras inactivas disponibles hasta el máximo configurado. Es posible que la reserva no alcance el máximo si no hay suficientes ranuras inactivas disponibles.

En el siguiente diagrama, se muestran las diferentes opciones de configuración disponibles:

Opciones de configuración de reservas predecibles.

En el diagrama, las cinco opciones de configuración muestran cómo BigQuery consume ranuras hasta el máximo configurado. Las primeras tres opciones contienen ranuras de referencia, mientras que las otras no tienen ranuras de referencia configuradas.

Limitaciones

La previsibilidad de las reservas está sujeta a las siguientes limitaciones:

  • La previsibilidad de las reservaciones solo está disponible con las ediciones Enterprise y Enterprise Plus, a menos que elijas la opción AUTOSCALE_ONLY.

  • La previsibilidad de las reservas es el mejor esfuerzo. Es posible que el uso general siga superando el máximo configurado.

¿Qué sigue?

Soluciona problemas con las reservas

El objetivo de esta sección es ayudarte a solucionar problemas habituales que surgen cuando interactúas con las reservas, como determinar los motivos por los que no se usa una reserva para un trabajo de BigQuery, identificar reservas desconocidas o problemas cuando se agregan ranuras.

No se pueden agregar más ranuras al tamaño de la reserva

Si encuentras errores como Failed to allocate slots for reservation in the current system state o Failed to update reservation: Failed to allocate slots for reservation cuando intentas agregar más espacios a tu reserva, suele tratarse de un problema transitorio. Para mitigar este problema, haz lo siguiente:

  • Vuelve a intentarlo con una cantidad menor de ranuras
  • Si falla el intento con una cantidad menor de espacios, espera 15 minutos y vuelve a intentarlo.

Si después de varios intentos y de esperar 30 minutos sigues recibiendo el mismo error, comunícate con el equipo de asistencia de BigQuery.

No hay suficiente cuota para completar esta solicitud

Si el mensaje de error indica There is insufficient quota to complete this request, significa que la solicitud supera el límite de cuota establecido para el proyecto.

Para resolver este error, realiza una de las siguientes acciones:

  1. Agrega una cantidad menor de ranuras a la reserva para no superar el límite de cuota.
  2. Solicita un aumento de cuota en la región correspondiente. Consulta Solicita un aumento de la cuota.

Reserva que BigQuery no usa para ejecutar un trabajo

Existen varias situaciones en las que un trabajo puede ejecutarse con recursos a pedido o un grupo de ranuras compartidas gratuito en lugar de usar la reserva que se creó.

La búsqueda y la reserva se encuentran en regiones diferentes

Las reservas son recursos regionales. La consulta se ejecuta en la misma ubicación que las tablas a las que se hace referencia en ella.

Si la ubicación de una tabla no coincide con la de la reserva, la consulta se ejecutará con el grupo de ranuras compartidas y no usará la reserva.

Cómo consultar tablas de BigQuery Omni

Cuando consultes una tabla de BigQuery Omni, asegúrate de que la reserva se cree en la misma región que la tabla, no en una región ubicada en la misma ubicación. Si creas la reserva en la región de BigQuery ubicada en el mismo lugar, la consulta se ejecutará a pedido.

Se creó la reserva, pero no se le asignó el proyecto.

Para usar las ranuras que compraste, debes crear una asignación que asigne el proyecto a la reserva específica. Asegúrate de que el proyecto tenga una asignación correspondiente para la reserva.

No coincide el tipo de empleo

Asegúrate de seleccionar el tipo de trabajo correcto cuando crees una asignación. De lo contrario, los trabajos se ejecutarán con el grupo de ranuras compartidas.

Por ejemplo, si seleccionas PIPELINE como el tipo de trabajo, todos los trabajos de consulta se ejecutarán a pedido. Cambia el tipo de asignación a QUERY para que los trabajos de consulta se ejecuten con la reserva.

Consultas de varias declaraciones

Si ejecutas consultas de varias instrucciones, el objeto de trabajo principal no tendrá una reserva asociada, incluso si los trabajos secundarios se ejecutaron con una reserva.

Para confirmar si el trabajo realmente usó una reserva, consulta los metadatos del trabajo secundario para obtener más información.

Cómo recuperar resultados almacenados en caché

Cuando el trabajo de consulta recupera resultados almacenados en caché, el campo de reserva estará vacío porque no se realiza ningún cálculo real y los resultados se recuperan directamente de la tabla temporal.

Operaciones de modificación de filas de captura de datos modificados

Si tienes tablas de captura de datos modificados (CDC), BigQuery aplicará las modificaciones de filas pendientes dentro del intervalo max_staleness como trabajos en segundo plano que usarán el tipo de asignación BACKGROUND. Si no hay asignaciones de BACKGROUND, se usarán los precios según demanda. Considera crear una asignación de BACKGROUND para el proyecto y evitar costos altos según demanda. Puedes identificar estos trabajos con la subcadena queueworker_cdc_background_merge_coalesce dentro del identificador de trabajo.

Tipos de modelos de BigQuery ML que usan servicios externos

Si no se encuentra ninguna asignación de reserva con un tipo de trabajo ML_EXTERNAL en el proyecto, el trabajo de consulta se ejecuta con precios según demanda. La asignación de tipo de trabajo QUERY solo se puede usar para los modelos de BigQuery ML que no sean modelos externos ni de factorización de matrices. Lee la documentación de Reservation Assignment para obtener más información.

Reservas no reconocidas identificadas en el proyecto

BigQuery tiene reservas que representan un grupo de ranuras compartido gratuito que se usa para ciertas operaciones en BigQuery:

default-pipeline

De forma predeterminada, la carga o exportación de datos por lotes en BigQuery usa un grupo de ranuras compartidas gratuitas. Si inspeccionas estos trabajos de carga o extracción, la reserva utilizada aparecerá como default-pipeline.

No se aplican cargos por usar el grupo de ranuras compartidas. Si deseas un rendimiento constante y predecible, considera comprar una reserva de PIPELINE.