Crear controles de costes personalizados

Si tienes varios proyectos y usuarios de BigQuery, y quieres gestionar los costes, puedes solicitar una cuota personalizada que limite la cantidad de datos de consultas que se procesan al día.

Si creas una cuota personalizada para los datos de consultas, podrás controlar los costes a nivel de proyecto o de usuario.

  • Las cuotas personalizadas a nivel de proyecto limitan el uso conjunto de todos los usuarios de un proyecto determinado.

  • Las cuotas personalizadas a nivel de usuario se aplican por separado a cada usuario o cuenta de servicio de un proyecto concreto.

Consulta la página de precios para ver las tarifas actuales de las consultas bajo demanda.

Fijar o modificar cuotas personalizadas

Para fijar o modificar una cuota personalizada, ve a la consola de Google Cloud. Los cambios realizados en las cuotas se aplican en cuestión de minutos.

Para cambiar las cuotas, debes contar con los permisos serviceusage.quotas.update. Los permisos serviceusage.quotas.update están incluidos en los siguientes roles predefinidos de Cloud IAM:

Aplicar cuotas personalizadas

Cuando hayas establecido una cuota personalizada, BigQuery mostrará un error si la superas.

Si superas la cuota personalizada del nivel de proyecto, BigQuery mostrará el siguiente error usageQuotaExceeded:

Custom quota exceeded: Your usage exceeded the custom quota for
    QueryUsagePerDay, which is set by your administrator. For more information,
    see https://cloud.google.com/bigquery/cost-controls

Si alguien supera una cuota personalizada a nivel de usuario, BigQuery devolverá un error usageQuotaExceeded con otro mensaje:

Custom quota exceeded: Your usage exceeded the custom quota for
    QueryUsagePerUserPerDay, which is set by your administrator. For more
    information, see https://cloud.google.com/bigquery/cost-controls

Si utilizas los filtros _PARTITIONTIME o _TABLE_SUFFIX en tu consulta, es posible que se produzca un error quotaExceeded de forma inesperada. Cuando BigQuery comprueba tu consulta para saber si superaría la cuota personalizada, ignora los filtros _PARTITIONTIME y _TABLE_SUFFIX que hayas aplicado.

Ejemplo

Supongamos que estableces las siguientes cuotas personalizadas para un proyecto con 10 usuarios, uno de los cuales es una cuenta de servicio:

  • Nivel de proyecto: 50 TB al día
  • Nivel de usuario: 10 TB al día

En la tabla siguiente se describe la cuota restante a medida que los 10 usuarios van ejecutando consultas durante el día.

Uso Cuota restante
Cada uno de los 10 usuarios acumula 4 TB de consultas Nivel de proyecto: quedan 10 TB.
Nivel de usuario: quedan 6 TB por usuario, pero solo 10 TB en total como máximo.
La cuenta de servicio acumula 6 TB de consultas Nivel de proyecto: quedan 4 TB.
Nivel de usuario: la cuenta de servicio ya no puede usar BigQuery. Quedan 6 TB para cada uno de los demás usuarios, pero solo 4 TB en total como máximo.
Un usuario realiza otros 4 TB de consultas Nivel de proyecto: quedan 0 TB.
Nivel de usuario: quedan varios TB, pero nadie puede usar BigQuery porque se ha superado la cuota a nivel de proyecto.

Cuando se agota la cuota, ningún miembro puede usar BigQuery en ese proyecto.

Preguntas frecuentes

¿Los clientes pueden aprovisionar sus propias cuotas personalizadas?

Sí, pueden hacerlo desde la consola de Google Cloud.

¿Cómo puedo saber cuáles son mis niveles de cuota personalizada?

Para ver los niveles de las cuotas, ve a la consola de Google Cloud.

¿Cuándo se repondrá mi cuota personalizada?

Las cuotas diarias se reinician a medianoche (hora del Pacífico).

¿Qué hago si supero mi cuota personalizada y quiero restablecerla?

Puedes ejecutar la consulta desde otro proyecto que tenga acceso a tus conjuntos de datos y que no tenga cuota personalizada o que aún no la haya superado.

¿La cuota personalizada es proactiva o reactiva? Es decir, ¿puedo realizar una consulta de 11 TB si tengo una cuota de 10 TB?

La cuota personalizada es proactiva, por lo que no puedes realizar una consulta de 11 TB si tienes una cuota de 10 TB.