Introducción a las reservas heredadas

Las reservas de BigQuery te permiten cambiar de precios según demanda a precios basados en la capacidad. Con los precios basados en la capacidad, pagas por la capacidad de procesamiento de consultas específica o con ajuste de escala automático en lugar de pagar por cada consulta de forma individual.

Las reservas te permiten asignar capacidad de consulta, que se mide en ranuras, a diferentes cargas de trabajo o 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 costos para cargas de trabajo de estado estable.

Descripción general

BigQuery ofrece dos modelos de precios de procesamiento (análisis):

De forma predeterminada, se te cobra de acuerdo con el modelo de precios según demanda. Mediante las reservas, puedes cambiar a los precios basados en la capacidad y usar el ajuste de escala automático de ranuras y comprar compromisos de capacidad con descuento. No se aplican cargos por los bytes procesados cuando se usa el modelo basado en la capacidad.

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

Beneficios de las reservas

Entre los beneficios de usar las reservas de BigQuery, se incluyen los siguientes:

  • Previsibilidad. Los precios basados en la capacidad ofrecen costos predecibles y coherentes. Especificas tu presupuesto de costo máximo por adelantado y también puedes aprovechar los compromisos de ranuras, que ofrecen capacidad en curso específica a una tarifa con descuento.

  • Flexibilidad. Puedes elegir cuánta capacidad específica asignar a una carga de trabajo o permitir que BigQuery escale la capacidad de forma automática según tus requisitos de carga de trabajo. Se te factura mediante las ranuras consumidas en incrementos de un segundo como mínimo.

  • Administración de cargas de trabajo. Cada carga de trabajo tiene un grupo específico de recursos de procesamiento de BigQuery disponibles para usar. A la vez, si una carga de trabajo no usa todas sus ranuras específicas, las que no se usen se compartirán de forma automática entre las demás cargas de trabajo.

  • Compras centralizadas. Puedes comprar ranuras y asignarlas en toda la 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 CPU virtuales que usan las consultas. Por lo general, si aprovisionas más ranuras, puedes ejecutar más consultas simultáneas y las consultas complejas pueden ejecutarse con mayor rapidez.

Las ranuras se asignan en grupos denominados reservas. Las reservas te permiten asignar las ranuras de formas adecuadas para tu organización en particular.

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 manera, los trabajos de prueba no compiten por los recursos que necesitan las cargas de trabajo de producción. O bien, puedes crear reservas para diferentes departamentos de la organización.

Las reservas pueden incluir ranuras de modelo de referencia, que siempre se asignan, además de ranuras con ajuste de escala automático, que se agregan o quitan de forma dinámica según las demandas de la carga de trabajo.

Una reserva denominada default se crea de forma automática si compras compromisos de ranuras antes de crear una reserva. La reserva default no tiene nada de especial; se crea por conveniencia. Puedes decidir si necesitas usar reservas adicionales o solo la reserva predeterminada.

Para usar las ranuras que asignas, debes asignar uno o más proyectos a una reserva, como se describe en la siguiente sección.

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

Asignaciones

Para usar las ranuras que asignas, debes asignar uno o más proyectos, carpetas u organizaciones a una reserva. Cada nivel de la jerarquía de recursos hereda la asignación del nivel superior. En otras palabras, si no se asigna un proyecto o carpeta, hereda la asignación de su organización o carpeta superior, si la hubiera. Para obtener más información sobre la jerarquía de recursos, consulta Organiza recursos de BigQuery.

Cuando se inicia un trabajo desde un proyecto asignado a una reserva, se usan las ranuras de esa reserva para el trabajo. Si un proyecto no se asigna a una reserva (ya sea directamente o mediante la herencia de la organización o la carpeta superior), se usan los precios según demanda para los trabajos de ese proyecto.

Las asignaciones None representan la ausencia de una asignación. Los proyectos con asignaciones None usan los precios según demanda. El caso de uso común para las asignaciones None es asignar una organización a la reserva y asignar None a algunos proyectos o carpetas para inhabilitarlos de esa reserva. Para obtener más información, consulta Otorga una asignación None a un proyecto.

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

  • QUERY: Usa esta reserva para los trabajos de consulta, incluidas las consultas de SQL, DDL, DML y BigQuery ML.

  • 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 capacidad disponible de este grupo compartido o la capacidad de procesamiento. 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 canalización. Te recomendamos crear una reserva dedicada adicional que tenga inhabilitado el uso compartido de ranuras inactivas.

    Cuando los trabajos de carga se asignan a una reserva, pierden acceso al grupo gratuito. Supervisa el rendimiento para asegurarte de que los trabajos tengan suficiente capacidad. De lo contrario, el rendimiento podría ser peor que el que se obtiene con el uso del grupo gratuito.

  • BACKGROUND: Usa esta reserva cuando elijas usar tu propia reserva para ejecutar tus trabajos de administración de índice de búsqueda de BigQuery o Trabajos de captura de datos modificados (CDC) de BigQuery en segundo plano. 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 no están disponibles en la edición Estándar.

  • ML_EXTERNAL: Usa esta reserva para las consultas de BigQuery ML 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.

No puedes distribuir ranuras a asignaciones específicas. El programador de BigQuery controla la distribución de ranuras para las asignaciones en una reserva.

Compromisos

Conceptos de reservas.

Un compromiso de capacidad es la compra de una cantidad fija de capacidad de procesamiento de BigQuery durante un período mínimo. Los compromisos de capacidad son opcionales para las reservas creadas con una edición, pero puede ahorrar costos para cargas de trabajo de estado estable.

BigQuery ofrece varios planes de compromisos para elegir. Se diferencian principalmente por el costo y la duración mínima del 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 mensual. Adquieres un compromiso mínimo de 30 días. Después de los 30 días, puedes borra el plan en cualquier momento.

  • Ranuras flexibles. Adquieres un compromiso de 60 segundos. Puedes borrarlo en cualquier momento después de los 60 segundos. Las ranuras flexibles son una buena forma de probar el rendimiento de las cargas de trabajo con la facturación de tasa fija antes de adquirir un compromiso a largo plazo. También son útiles para controlar la demanda por ciclo o por temporada, o para eventos con una carga alta, como la temporada de impuestos.

Sin importar el plan que elijas, las ranuras no vencerán al final del período de compromiso. Puedes conservar las ranuras, y se te cobrará por ellas hasta que las borres. También puedes cambiar el tipo de plan después de la duración mínima.

Las ranuras están sujetas a la disponibilidad de la capacidad. Cuando intentes comprar compromisos de ranuras, no se garantizará el éxito de la compra. Sin embargo, si logras comprar un compromiso, se garantizará la capacidad hasta que lo borres.

Para obtener más detalles sobre estos planes, consulta Planes de compromiso.

Asignación de ranuras dentro de las reservas

BigQuery asigna la capacidad de ranuras dentro de una sola reserva mediante un algoritmo llamado programación equilibrada.

El programador de BigQuery aplica el uso compartido equitativo de ranuras entre proyectos con consultas en ejecución dentro de una reserva y, luego, dentro de los trabajos de un proyecto determinado. El programador proporciona equidad eventual. Puede haber períodos breves en los que algunos trabajos tengan un porcentaje desproporcionado de ranuras, pero el programador lo corregirá con el tiempo. El objetivo del programador es encontrar un punto medio entre ser demasiado agresivo a la hora de expulsar las tareas en ejecución (lo que da como resultado una pérdida de tiempo de ranura) y ser demasiado tolerante (lo que da como resultado que los trabajos con tareas de larga duración obtengan un porcentaje desproporcionado del tiempo de ranura).

Si un trabajo importante necesita más ranuras de las que recibe del programador con regularidad, considera crear una reserva adicional con una cantidad garantizada de ranuras y asignar el trabajo a esa reserva. Para obtener más información, consulta Administración de cargas de trabajo.

Ranuras inactivas

En un momento determinado, es posible que algunas ranuras estén inactivas. Esto puede incluir lo siguiente:

  • Compromisos de ranuras que no están asignados a ninguna reserva.
  • Las ranuras que se asignaron a un modelo de referencia de reserva, pero no se encuentran en uso en el momento.

De forma predeterminada, las consultas que se ejecutan en una reserva usan ranuras inactivas de otras reservas dentro del mismo proyecto de administración de forma automática. Esto significa que un trabajo puede ejecutarse siempre que haya capacidad. La capacidad inactiva se interrumpe de inmediato para la reserva asignada original, según sea necesario, sin importar la prioridad de la consulta que necesita los recursos. Esto sucede de forma automática en tiempo real.

Si deseas inhabilitar esta funcionalidad y forzar una reserva a usar solo las ranuras que se le aprovisionaron, configura ignore_idle_slots como true. Las reservas que tienen ignore_idle_slots configurado como true no reciben ranuras inactivas.

No puedes compartir ranuras inactivas entre reservas de ediciones diferentes. Solo puedes compartir las ranuras del modelo de referencia o las ranuras confirmadas. Las ranuras con ajuste de escala automático pueden estar disponibles temporalmente, pero no se pueden compartir, ya que pueden reducir la escala verticalmente.

Siempre que ignore_idle_slots sea falso, una reserva puede tener un recuento de ranuras de 0 y aun así tener acceso a las ranuras sin usar. Si solo usas la reserva default, te recomendamos configurarla de esta manera. Luego, puedes asignar un proyecto o una carpeta a esa reserva y solo usará las ranuras inactivas.

Las asignaciones de tipo ML_EXTERNAL son una excepción al comportamiento que se describió. Las ranuras que usan los trabajos de creación de modelos externos de BigQuery ML no son interrumpibles, es decir, las ranuras de una reserva que tiene los tipos de asignación ml_external y query solo están disponibles para otros trabajos de consulta cuando los trabajos ML_EXTERNAL no están ocupando las ranuras. Además, para estos trabajos, no se usan ranuras inactivas de otras reservas.

Limitaciones

  • Las reservas que compres no se pueden compartir con otras organizaciones.
  • Debes crear una reserva independiente y un proyecto de administración independiente 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 o entre diferentes proyectos de administración dentro de una sola organización.
  • Los compromisos son un recurso regional. Los compromisos adquiridos en una o en varias regiones no se pueden usar en otras regiones ni multirregiones. Los compromisos no se pueden mover entre regiones o entre regiones ni multirregiones.
  • 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 reducirán la escala verticalmente cuando ya no sean necesarias.

Cuotas

Tu cuota de ranuras es la cantidad máxima de ranuras que puedes comprar en una ubicación. No se te cobrarán las cuotas. Solo se te cobrarán las reservas y los compromisos. Para obtener más información, consulta Cuotas y límites. Si deseas obtener información para aumentar la cuota de tus ranuras, consulta Solicita un aumento de la cuota.

Precios

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

¿Qué sigue?