Introducción a las reservas antiguas

Las reservas de BigQuery te permiten cambiar de los precios bajo demanda a los precios basados en la capacidad. Con los precios basados en la capacidad, pagas por la capacidad de procesamiento de consultas dedicada o autoescalada en lugar de pagar por cada consulta individualmente.

Las reservas te permiten asignar capacidad de consulta, medida en ranuras, a diferentes cargas de trabajo o a diferentes partes de tu organización.

Crear un compromiso de capacidad es opcional cuando se trabaja con reservas que aprovechan las ediciones de BigQuery, pero puede ahorrar costes en cargas de trabajo estables.

Información general

BigQuery ofrece dos modelos de precios de computación (análisis):

De forma predeterminada, se te factura de acuerdo con el modelo de precios bajo demanda. Con las reservas, puedes cambiar a los precios basados en la capacidad y usar el autoescalado de ranuras, así como comprar compromisos de capacidad con descuento. Cuando se usa el modelo basado en la capacidad, no se cobra por los bytes procesados.

Puedes combinar ambos modelos de facturación. Por ejemplo, puedes ejecutar algunas cargas de trabajo con precios bajo demanda y otras con precios basados en la capacidad. Como el modelo de facturación se especifica por proyecto, esto requeriría que usaras varios proyectos para tus tareas de consulta.

Ventajas de las reservas

Estas son algunas de las ventajas de usar reservas de BigQuery:

  • Predictibilidad. Los precios basados en la capacidad ofrecen costes predecibles y uniformes. Especifica tu presupuesto de coste máximo por adelantado y también puedes aprovechar los compromisos de espacio, que ofrecen capacidad continua dedicada a un precio con descuento.

  • Flexibilidad. Puedes elegir la cantidad de capacidad dedicada que quieres asignar a una carga de trabajo o dejar que BigQuery escale automáticamente la capacidad en función de los requisitos de tu carga de trabajo. Se te factura por las ranuras consumidas en incrementos de un segundo como mínimo.

  • Gestión de cargas de trabajo. Cada carga de trabajo tiene un grupo específico de recursos computacionales de BigQuery que puede usar. Al mismo tiempo, si una carga de trabajo no usa todas sus ranuras dedicadas, las ranuras que no se utilicen se compartirán automáticamente entre tus otras cargas de trabajo.

  • Compras centralizadas: puedes comprar y asignar ranuras para toda tu organización. No es necesario que compres ranuras para cada proyecto que use BigQuery.

Reservas

La capacidad de BigQuery se mide en ranuras, que representan las CPUs virtuales que usan las consultas. Por lo general, si aprovisionas más ranuras, podrás ejecutar más consultas simultáneas y las consultas complejas se podrán ejecutar más rápido.

Los slots se asignan en grupos llamados reservas. Las reservas te permiten asignar las ranuras de las formas que mejor se adapten a 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 esta forma, tus tareas de prueba no competirán por los recursos que necesitan tus cargas de trabajo de producción. También puedes crear reservas para diferentes departamentos de tu organización.

Las reservas pueden incluir ranuras de referencia, que siempre se asignan, así como ranuras con escalado automático, que se añaden o quitan de forma dinámica en función de las demandas de tu carga de trabajo.

Si compras compromisos de espacio antes de crear una reserva, se creará automáticamente una reserva llamada default. La reserva default no tiene nada de especial, se crea para mayor comodidad. Puedes decidir si necesitas reservas adicionales o si te basta con la reserva predeterminada.

Para usar los espacios que asignes, debes asignar uno o varios proyectos a una reserva, tal como se describe en la siguiente sección.

Una reserva es el nivel más bajo en el que puede especificar la asignación de espacios. El programador de BigQuery se encarga de asignar ranuras en una reserva.

Tareas

Para usar las ranuras que asignes, debes asignar uno o varios proyectos, carpetas u organizaciones a una reserva. Cada nivel de la jerarquía de recursos hereda la asignación del nivel superior. Es decir, si no se asigna un proyecto o una carpeta, ese proyecto o carpeta hereda la asignación de su carpeta o su organización principal, si la tiene. Para obtener más información sobre la jerarquía de recursos, consulta el artículo sobre cómo organizar recursos de BigQuery.

Cuando se inicia una tarea desde un proyecto asignado a una reserva, la tarea usa las ranuras de esa reserva. Si un proyecto no se asigna a una reserva (ya sea directamente o por herencia de su carpeta o organización superior), los trabajos de ese proyecto usarán los precios bajo demanda.

Las tareas None representan la ausencia de una tarea. Los proyectos asignados a None usan los precios bajo demanda. El caso práctico habitual de las asignaciones de None es asignar una organización a la reserva y excluir algunos proyectos o carpetas de esa reserva asignándolos a None. Para obtener más información, consulta Asignar el valor "Ninguno" a un proyecto.

Cuando creas una tarea, debes especificar el tipo de trabajo que se va a realizar:

  • QUERY: usa esta reserva para las tareas de consulta, incluidas las consultas SQL, DDL, DML y BigQuery ML.

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

    De forma predeterminada, las tareas de carga y extracción son gratuitas y utilizan un grupo compartido de ranuras. BigQuery no garantiza la disponibilidad de este grupo compartido ni el rendimiento que muestre. Si cargas grandes cantidades de datos, es posible que tu trabajo tenga que esperar hasta que haya ranuras disponibles. En ese caso, puedes comprar ranuras dedicadas y asignarles tareas de la canalización. Te recomendamos que crees una reserva adicional específica con la opción de compartir ranuras inactivas inhabilitada.

    Cuando se asignan tareas de carga a una reserva, estas pierden el acceso al grupo gratuito. Monitoriza el rendimiento para asegurarte de que los trabajos tienen capacidad suficiente. De lo contrario, el rendimiento podría ser peor que si usaras el grupo gratuito.

  • BACKGROUND: usa esta reserva cuando quieras usar tu propia reserva para ejecutar trabajos de gestión de índices de búsqueda de BigQuery o trabajos en segundo plano de captura de datos modificados (CDC) de BigQuery. También puedes usar esta reserva cuando repliques bases de datos de origen en BigQuery con las operaciones de aplicación en segundo plano de Datastream. Las reservas de BACKGROUND no están disponibles en la edición Estándar.

  • ML_EXTERNAL: usa esta reserva para las consultas de BigQuery ML que utilicen servicios externos a BigQuery. Para obtener más información, consulta el artículo sobre cómo asignar ranuras a cargas de trabajo de BigQuery ML. Las reservas de ML_EXTERNAL no están disponibles en la edición Estándar.

No puedes asignar espacios a tareas específicas. El programador de BigQuery gestiona la asignación de ranuras de las asignaciones de una reserva.

Confirmaciones

Conceptos de reservas.

Un compromiso de capacidad es la compra de una cantidad fija de capacidad de cálculo de BigQuery durante un periodo mínimo. Los compromisos de capacidad son opcionales para las reservas creadas con una edición, pero pueden reducir los costes de las cargas de trabajo estables.

BigQuery ofrece varios planes de compromiso entre los que elegir. Se diferencian principalmente por el coste y la duración mínima del compromiso. Para obtener información sobre los precios actuales, consulta los precios de los compromisos de capacidad.

  • Compromiso anual. Adquieres un compromiso de 365 días. Puedes elegir si quieres renovar el plan o cambiar a otro tipo de plan de compromiso después de 365 días.

  • Compromiso mensual. Compra una confirmación de al menos 30 días. Después de 30 días, puedes eliminar el plan en cualquier momento.

  • Espacios flexibles. Compras una confirmación de 60 segundos. Puedes eliminarla en cualquier momento después de 60 segundos. Las ranuras flexibles son una buena forma de probar el rendimiento de tus cargas de trabajo con la facturación de tarifa fija antes de adquirir un compromiso a largo plazo. También son útiles para gestionar la demanda cíclica o estacional, o para eventos con mucha carga, como la temporada de impuestos.

Independientemente del plan que elijas, tus espacios no caducarán al final del periodo de compromiso. Conservarás los espacios y se te facturarán hasta que los elimines. También puedes cambiar el tipo de plan una vez que haya transcurrido la duración mínima.

Los slots están sujetos a la capacidad disponible. Por eso, no hay garantías de que puedas comprar compromisos de ranura. No obstante, cuando se acepte la compra, tendrás garantizada la capacidad hasta que elimines el compromiso.

Si quieres obtener más información sobre estos planes, consulta el artículo Planes con compromiso.

Asignación de slots en las reservas

BigQuery asigna capacidad de ranuras en una sola reserva mediante un algoritmo llamado programación equitativa.

El programador de BigQuery aplica el reparto equitativo de ranuras entre los proyectos con consultas en ejecución dentro de una reserva y, a continuación, entre las tareas de un proyecto concreto. El programador proporciona equidad eventual. Puede que haya periodos cortos en los que algunos trabajos obtengan una proporción desproporcionada de ranuras, pero el programador acabará corrigiendo esta situación. El objetivo del programador es encontrar un punto medio entre ser demasiado agresivo a la hora de desalojar tareas en ejecución (lo que provoca que se pierda tiempo de ranura) y ser demasiado permisivo (lo que provoca que las tareas de larga duración obtengan una parte desproporcionada del tiempo de ranura).

Si una tarea importante necesita constantemente más ranuras de las que recibe del programador, considera la posibilidad de crear una reserva adicional con un número garantizado de ranuras y asignar la tarea a esa reserva. Para obtener más información, consulta Gestión de cargas de trabajo.

Espacios inactivos

En un momento dado, puede que algunas ranuras estén inactivas. Esto puede incluir:

  • Compromisos de ranuras que no se han asignado a ninguna reserva.
  • Espacios asignados a una base de referencia de reserva, pero que no se están usando.

De forma predeterminada, las consultas que se ejecutan en una reserva usan automáticamente las ranuras inactivas de otras reservas del mismo proyecto de administración. Esto significa que un trabajo siempre se puede ejecutar mientras haya capacidad. La capacidad inactiva se puede expropiar inmediatamente y volver a la reserva original asignada según sea necesario, independientemente de la prioridad de la consulta que necesite los recursos. Esto ocurre automáticamente en tiempo real.

Para inhabilitar esta función y obligar a una reserva a usar solo los espacios que se le hayan asignado, asigna el valor true a ignore_idle_slots. Las reservas con ignore_idle_slots definido como true no reciben ranuras inactivas.

No puedes compartir ranuras inactivas entre reservas de diferentes ediciones. Solo puedes compartir las ranuras de referencia o las ranuras comprometidas. Las ranuras con escalado automático pueden estar disponibles temporalmente, pero no se pueden compartir, ya que pueden reducirse.

Mientras ignore_idle_slots sea false, una reserva puede tener un número de espacios de 0 y seguir teniendo acceso a los espacios no utilizados. Si solo utilizas la reserva default, te recomendamos que la configures de esta forma. Después, puedes asignar un proyecto o una carpeta a esa reserva, que solo usará las ranuras inactivas.

Las asignaciones de tipo ML_EXTERNAL son una excepción al comportamiento descrito anteriormente. Las ranuras que usan las tareas de creación de modelos externos de BigQuery ML no son interrumpibles. Es decir, las ranuras de una reserva con los tipos de asignación ml_external y query solo están disponibles para otras tareas de consulta cuando las tareas ML_EXTERNAL no las ocupan. Además, estas tareas no usan las ranuras inactivas de otras reservas.

Limitaciones

  • Las reservas que compres no se pueden compartir con otras organizaciones.
  • Debe crear una reserva y un proyecto de administración independientes para cada organización.
  • Cada organización puede tener un máximo de 10 proyectos de administración con compromisos activos en una sola ubicación.
  • La capacidad inactiva no se puede compartir entre organizaciones ni entre diferentes proyectos de administración de una misma organización.
  • 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.
  • Las confirmaciones compradas en un proyecto de administración no se pueden mover a otro proyecto de administración.
  • Las confirmaciones que se compren con una edición no se pueden usar con reservas de otra edición.
  • Las ranuras inactivas no se comparten entre reservas de diferentes ediciones.
  • Las ranuras con autoescalado no se pueden compartir, ya que se reducirán cuando ya no sean necesarias.

Cuotas

Tu cuota de ranuras es el número máximo de ranuras que puedes comprar en una ubicación. No se le cobrará por las cuotas, sino solo por las reservas y los compromisos. Para obtener más información, consulta las cuotas y los límites de las reservas. Para obtener información sobre cómo aumentar tu cuota de espacios publicitarios, consulta Solicitar un aumento de cuota.

Precios

Para obtener información sobre los precios de las reservas, consulta Tarifa fija.

Siguientes pasos