Cuotas y límites

En este documento, se describen los límites y las cuotas que se aplican a BigQuery.

Una cuota restringe cuánto de un recurso compartido de Google Cloud en particular puede usar tu proyecto de Cloud, incluidos los componentes de red, hardware y software.

Las cuotas son parte de un sistema que realiza las siguientes acciones:

  • Supervisa el uso o consumo de productos y servicios de Google Cloud.
  • Restringe el consumo de esos recursos por motivos como garantizar la equidad y reducir los picos de uso.
  • Mantiene las configuraciones que aplican automáticamente las restricciones prescritas.
  • Proporciona un medio para realizar o solicitar cambios en la cuota.

Cuando se excede una cuota, en la mayoría de los casos, el sistema bloquea de inmediato el acceso al recurso de Google correspondiente, y la tarea que intentas realizar falla. En la mayoría de los casos, las cuotas se aplican a cada proyecto de Cloud y se comparten entre todas las aplicaciones y direcciones IP que usan ese proyecto.

Muchos productos y servicios también tienen límites que no están relacionados con el sistema de cuotas. Estas son restricciones, como los tamaños máximos de archivos o las limitaciones del esquema de la base de datos, que, por lo general, no se pueden aumentar ni disminuir, a menos que se indique lo contrario.

De forma predeterminada, las cuotas y los límites de BigQuery se aplican por proyecto. Las cuotas y los límites que se aplican de forma diferente se indican como tales. por ejemplo, la cantidad máxima de columnas por tabla o la cantidad máxima de solicitudes a la API simultáneas por usuario. Las políticas específicas varían según la disponibilidad de los recursos, el perfil del usuario, el historial de Service Usage y otros factores. Además, están sujetas a cambios sin previo aviso.

Reabastecimiento de cuotas

Las cuotas diarias se restablecen en intervalos regulares durante el día a fin de reflejar su propósito de orientar comportamientos que limiten las frecuencias. También se realizan actualizaciones intermitentes para evitar interrupciones prolongadas cuando una cuota se agota. Por lo general, se habilita más capacidad de la cuota en unos minutos en lugar de restablecerla por completo una vez al día.

Solicita un aumento de la cuota

Para aumentar o disminuir la mayoría de las cuotas, usa Google Cloud Console. Algunas cuotas no se pueden aumentar por encima de sus valores predeterminados.

Para obtener más información, consulta las siguientes secciones en Trabaja con cuotas:

Si deseas obtener orientación paso a paso durante el proceso de solicitud de un aumento de cuota en Cloud Console, haz clic en Guiarme:

GUIARME

Permisos

Para ver y actualizar tus cuotas de BigQuery en Cloud Console, necesitas los mismos permisos que cualquier cuota de Google Cloud. Si deseas obtener más información, consulta Permisos de cuota de Google Cloud.

Trabajos de copia

Se aplican los siguientes límites a los trabajos de BigQuery para la copia de tablas. Los límites se aplican a los trabajos creados mediante la herramienta de línea de comandos de bq, Cloud Console o el método de API jobs.insert de tipo de copia. Todos los trabajos de copia se tienen en cuenta para este límite, ya sea que se completen correctamente o no.

Límite Predeterminada Notas
Trabajos de copia por tabla de destino por día Consulta Operaciones de tablas por día.
Trabajos de copia por día 100,000 trabajos Tu proyecto puede ejecutar hasta 100,000 trabajos de copia por día.
Trabajos de copia entre regiones por tabla de destino por día 100 trabajos Tu proyecto puede ejecutar hasta 100 trabajos de copia entre regiones para una tabla de destino por día.
Trabajos de copia entre regiones por día 2,000 trabajos Tu proyecto puede ejecutar hasta 2,000 trabajos de copia entre regiones por día.

Se aplican los siguientes límites a la copia de conjuntos de datos:

Límite Predeterminada Notas
Cantidad máxima de tablas en el conjunto de datos de origen 20,000 tablas Un conjunto de datos de origen puede tener hasta 20,000 tablas.
Cantidad máxima de tablas que se pueden copiar por ejecución en un conjunto de datos de destino en la misma región 20,000 tablas Tu proyecto puede copiar 20,000 tablas por ejecución a un conjunto de datos de destino que se encuentra en la misma región.
Cantidad máxima de tablas que se pueden copiar por ejecución en un conjunto de datos de destino ubicado en una región diferente 1,000 tablas Tu proyecto puede copiar 1,000 tablas por ejecución en un conjunto de datos de destino que se encuentre en una región diferente. Por ejemplo, si configuras una copia entre regiones de un conjunto de datos que tiene 8,000 tablas, el Servicio de transferencia de datos de BigQuery crea de forma automática ocho ejecuciones de manera secuencial. La primera ejecución copia 1,000 tablas. Veinticuatro horas después, la segunda ejecución copia 1,000 tablas. Este proceso continúa hasta que se copien todas las tablas del conjunto de datos hasta un máximo de 20,000 tablas por conjunto de datos.

Declaraciones de lenguaje de manipulación de datos (DML)

Se aplican los siguientes límites a las declaraciones de lenguaje de manipulación de datos (DML) de BigQuery:

Límite Predeterminada Notas
Declaraciones DML por día Ilimitado Las declaraciones DML se toman en cuenta en la cantidad de operaciones de tabla por día (o en la cantidad de operaciones de tablas particionadas por día para tablas particionadas). Sin embargo, la cantidad de declaraciones DML que tu proyecto puede ejecutar por día no es limitada. Una vez que se agota el límite diario de operaciones de tablas (u operaciones de tablas particionadas), obtienes errores para operaciones de tablas que no son de DML. Pero podrás seguir ejecutando declaraciones DML sin recibir errores.
Declaraciones DML simultáneas de mutación por tabla 2 declaraciones BigQuery ejecuta hasta dos declaraciones DML de mutación simultáneas (UPDATE, DELETE y MERGE) para cada tabla. Las declaraciones DML adicionales de mutación para una tabla están en cola.
Declaraciones DML de mutación en cola por tabla 20 declaraciones Una tabla puede tener hasta 20 declaraciones DML de mutación en la cola en espera de ejecución. Si envías declaraciones DML adicionales de mutación para la tabla, estas fallarán.
Tiempo máximo en cola para la declaración DML 6 horas Una declaración DML interactiva de prioridad puede esperar en la cola hasta por seis horas. Si la instrucción no se ejecuta después de seis horas, falla.

Para obtener más información sobre la mutación de declaraciones DML, consulta Simultaneidad de DML UPDATE, DELETE, MERGE.

Conjuntos de datos

Se aplican los siguientes límites a los conjunto de datos de BigQuery.

Límite Predeterminada Notas
Cantidad máxima de conjuntos de datos Ilimitado No hay límite para la cantidad de conjuntos de datos que puede tener un proyecto.
Cantidad de tablas por conjunto de datos Ilimitado Cuando usas una llamada a la API, se ralentiza el rendimiento de la enumeración a medida que te acercas a las 50,000 tablas por conjunto de datos. Cloud Console puede mostrar hasta 50,000 tablas por cada conjunto de datos.
Cantidad de vistas autorizadas en la lista de control de acceso de un conjunto de datos 2,500 vistas autorizadas La lista de control de acceso de un conjunto de datos puede contener hasta 2,500 vistas autorizadas.
Cantidad de operaciones de actualización de conjuntos de datos por conjunto de datos cada 10 segundos 5 operaciones Tu proyecto puede realizar hasta cinco operaciones de actualización de conjuntos de datos cada 10 segundos. El límite de actualización del conjunto de datos incluye todas las operaciones de actualización de metadatos realizadas por lo siguiente:
Longitud máxima de la descripción de un conjunto de datos 16,384 caracteres Cuando agregas una descripción a un conjunto de datos, el texto puede tener, como máximo, 16,384 caracteres.

Trabajos de exportación

La siguiente cuota se aplica a los trabajos que exportan datos desde BigQuery mediante la exportación de datos con la herramienta de línea de comandos de bq, Cloud Console o método de exportación jobs.insert de la API.

Cuota Predeterminada Notas
La cantidad máxima de bytes exportados por día 50 TB Tu proyecto puede exportar hasta 50 terabytes por día.
Para exportar más de 50 TB de datos por día, usa la API de Storage Read o la declaración EXPORT DATA.
Ver la cuota en Cloud Console

Se aplican los siguientes límites a trabajos que exportan datos desde BigQuery mediante la herramienta de línea de comandos de bq, Cloud Console o el tipo de exportación jobs.insert.

Límite Predeterminada Notas
Cantidad máxima de exportaciones por día 100,000 exportaciones Tu proyecto puede ejecutar hasta 100,000 exportaciones por día.
URI comodín por exportación 500 URI Una exportación puede tener hasta 500 URI comodines.

Trabajos de carga

Se aplican los siguientes límites cuando cargas datos en BigQuery mediante Cloud Console, la herramienta de línea de comandos de bq o el tipo de carga del método jobs.insert de la API.

Límite Predeterminada Notas
Trabajos de carga diarios por tabla Consulta Cantidad máxima de operaciones en tablas por día. Los trabajos de carga fallidos se tienen en cuenta para este límite. Los trabajos de carga, incluidos los trabajos de carga con errores, se tienen en cuenta para el límite de la cantidad máxima de operaciones de tabla por día para la tabla de destino.
Trabajos de carga diarios 100,000 trabajos Tu proyecto puede ejecutar hasta 100,000 trabajos de carga por día. Los trabajos de carga con errores se tienen en cuenta para este límite.
Cantidad máxima de columnas por tabla: 10,000 columnas Una tabla puede tener hasta 10,000 columnas.
Tamaño máximo por trabajo de carga 15 TB El tamaño total de todos los archivos de entrada CSV, JSON, Avro, Parquet y ORC puede ser de hasta 15 TB.
Cantidad máxima de URI de origen en la configuración del trabajo 10,000 URI Una configuración de trabajo puede tener hasta 10,000 URI de origen.
Cantidad máxima de archivos por trabajo de carga 10,000,000 de archivos Un trabajo de carga puede tener hasta 10 millones de archivos en total, incluidos todos los archivos que coincidan con todos los URI comodín.
Límite de tiempo de ejecución del trabajo de carga 6 horas Un trabajo de carga falla si se ejecuta durante más de seis horas.
Avro: Tamaño máximo de bloques de datos de archivos 16 MB El límite de tamaño para los bloques de datos del archivo Avro es de 16 MB.
CSV: tamaño máximo de celdas 100 MB El tamaño de las celdas CSV puede ser de hasta 100 MB.
CSV: tamaño máximo de fila 100 MB Las filas de CSV pueden tener hasta 100 MB de tamaño.
CSV: Tamaño máximo del archivo comprimido 4 GB El límite de tamaño para un archivo CSV comprimido es de 4 GB.
CSV: Tamaño máximo del archivo sin comprimir 5 TB El límite de tamaño para un archivo CSV sin comprimir es de 5 TB.
JSON: Tamaño máximo de fila 100 MB Las filas de JSON pueden tener un tamaño de hasta 100 MB.
JSON: Tamaño máximo del archivo: comprimido 4 GB El límite de tamaño para un archivo JSON comprimido es de 4 GB.
JSON: Tamaño máximo del archivo sin comprimir 5 TB El límite de tamaño para un archivo JSON sin comprimir es de 5 TB.

Si superas los límites del trabajo de carga con regularidad debido a las actualizaciones frecuentes, considera transmitir datos a BigQuery en su lugar.

Trabajos de consulta

Se aplican las siguientes cuotas a los trabajos de consulta creados de forma automática mediante la ejecución de consultas interactivas, consultas programadas y trabajos enviados mediante jobs.query y el tipo de consulta Métodos de la API de jobs.insert:

Cuota Predeterminada Notas
Uso de consultas por día Ilimitado Tu proyecto puede ejecutar una cantidad ilimitada de consultas por día.
Consultar la cuota en Cloud Console
Uso de consultas por día por usuario Ilimitado Los usuarios pueden ejecutar una cantidad ilimitada de consultas por día.
Consultar la cuota en Cloud Console
Bytes interregionales de consulta federada de Cloud SQL 1 TB Si la ubicación de procesamiento de consultas de BigQuery y la ubicación de la instancia de Cloud SQL son distintas, la consulta será entre regiones. Tu proyecto puede ejecutar hasta 1 TB en consultas entre regiones por día. Revisa Consultas federadas de Cloud SQL.
Consultar la cuota en Cloud Console

Se aplican los siguientes límites a trabajos de consulta creados automáticamente mediante la ejecución de consultas interactivas y programadas, y trabajos enviados mediante jobs.query y métodos de tipo de consulta de la API jobs.insert:

Límite Predeterminada Notas
Límite de frecuencia de simultaneidad para consultas interactivas 100 consultas Tu proyecto puede ejecutar hasta 100 consultas interactivas simultáneas. Las consultas con resultados que se muestran desde la caché de consultas se descuentan de este límite por el tiempo que le lleve a BigQuery determinar si es un acierto de caché. Las consultas de prueba no se descuentan de este límite. Puedes especificar una consulta de ejecución de prueba mediante la marca --dry_run. Si deseas obtener información sobre las estrategias para permanecer dentro de este límite, consulta Soluciona problemas de errores de cuota.
Límite de frecuencia de simultaneidad para consultas interactivas en fuentes externas de datos de Cloud Bigtable 4 consultas Tu proyecto puede ejecutar hasta cuatro consultas simultáneas en una fuente externa de datos de Bigtable.
Límite de tamaño de consulta diaria Ilimitado De forma predeterminada, no hay un límite de tamaño de consulta diario. Sin embargo, puedes establecer límites en la cantidad de datos que los usuarios pueden consultar mediante la creación de cuotas personalizadas.
Límite de frecuencia de simultaneidad para consultas de SQL heredado que contienen UDF 6 consultas Tu proyecto puede ejecutar hasta seis consultas simultáneas de SQL heredado con funciones definidas por el usuario (UDF). Este límite incluye las consultas interactivas y de lotes. También se toman en cuenta las consultas interactivas que contienen UDF en el límite de frecuencia de simultaneidad de las consultas interactivas. No se aplica este límite a consultas de SQL estándar.
Límite diario de actualización de tablas de destino Consulta Cantidad máxima de operaciones en tablas por día. Las actualizaciones de las tablas de destino en un trabajo de consulta cuentan para el límite en la cantidad máxima de operaciones de tabla por día para las tablas de destino. Las actualizaciones de tablas de destino incluyen operaciones que agregan y reemplazan datos, las cuales se realizan mediante consultas que se ejecutan con Cloud Console, la herramienta de línea de comandos bq o mediante una llamada a los métodos de API jobs.query y jobs.insert de tipo de consulta.
Límite de tiempo de ejecución de consultas o secuencias de comandos 6 horas Una consulta o secuencia de comandos puede ejecutarse hasta por seis horas y, luego, falla. Sin embargo, a veces las consultas se reintentan. Una consulta se puede probar hasta tres veces, y cada intento puede ejecutarse hasta por seis horas. Como resultado, es posible que una consulta tenga un tiempo de ejecución total de más de seis horas.
Cantidad máxima de recursos referenciados por consulta 1,000 recursos Una consulta puede hacer referencia hasta en total de 1,000 tablas, vistas únicas, funciones definidas por el usuario (UDF) y funciones de tabla (TVF) únicas (Vista previa) después de una expansión completa. Este límite incluye lo siguiente:
  • Tablas, vistas, UDF y funciones de tabla a las que hace referencia la consulta de forma directa.
  • Tablas, vistas, UDF y funciones de tabla a las que hacen referencia otras funciones de vista/UDF/tabla a las que se hace referencia en la consulta.
  • Tablas que resultan de la expansión de tablas comodín que se usan en la consulta o las otras funciones de tabla, vistas o UDF referenciadas
Longitud máxima de las consultas de SQL heredado sin resolver 256 KB Una consulta de SQL heredado sin resolver puede tener hasta 256 KB. Si tu consulta es más larga, recibes el siguiente error: The query is too large. Para permanecer dentro de este límite, considera reemplazar arreglos o listas grandes por parámetros de consulta.
Longitud máxima de consulta de SQL estándar sin resolver 1 MB Las consultas de SQL estándar sin resolver pueden ocupar hasta 1 MB. Si tu consulta es más larga, recibes el siguiente error: The query is too large.. Para permanecer dentro de este límite, considera reemplazar arreglos o listas grandes con parámetros de consulta.
Longitud máxima de consulta de SQL estándar y heredado resuelta 12 MB El límite de la longitud de las consultas resueltas incluye la longitud de todas las vistas y tablas de comodines a las que se hace referencia en la consulta.
Cantidad máxima de parámetros de consulta de SQL estándar: 10,000 parámetros Una consulta de SQL estándar puede tener hasta 10,000 parámetros.
Tamaño máximo de respuesta 10 GB comprimidos Los tamaños varían según el índice de compresión de los datos. El tamaño real de respuesta puede ser mucho mayor que 10 GB. El tamaño máximo de respuesta es ilimitado cuando se escriben los resultados de una consulta grande en una tabla de destino.
Tamaño máximo de fila 100 MB El tamaño máximo de la fila es aproximado, ya que el límite se basa en la representación interna de los datos de la fila. Este se aplica durante ciertas etapas de la ejecución del trabajo de consulta.
Cantidad máxima de columnas en una tabla, resultado de consulta o definición de la vista 10,000 columnas Una definición de tabla, resultado de consulta o vista puede tener hasta 10,000 columnas.
Cantidad máxima de ranuras simultáneas para precios según demanda 2,000 ranuras Con los precios según demanda, tu proyecto puede tener hasta 2,000 ranuras simultáneas. Las ranuras de BigQuery se comparten entre todas las consultas de un mismo proyecto. BigQuery podría sobrepasar este límite en aumentos repentinos de actividad para acelerar las consultas. Para verificar cuántas ranuras estás usando, consulta cómo supervisar BigQuery mediante Cloud Monitoring.
Uso máximo de CPU por datos analizados para precios según demanda 256 segundos de CPU por MiB analizado Con los precios según demanda, tu consulta puede usar hasta 256 segundos de CPU por MiB de datos analizados. Si tu consulta requiere demasiado CPU para la cantidad de datos que se procesan, la consulta fallará con un error billingTierLimitExceeded. Para obtener más información, consulta billingTierLimitExceeded.

Aunque las consultas programadas usan las características del Servicio de transferencia de datos de BigQuery, las consultas programadas no son transferencias y no están sujetas a límites de trabajo de carga.

Seguridad a nivel de la fila

Se aplican los siguientes límites a las políticas de acceso a nivel de fila de BigQuery:

Límite Predeterminada Notas
Cantidad máxima de políticas de acceso de fila por tabla 100 políticas Una tabla puede tener hasta 100 políticas de acceso de fila.
Cantidad máxima de políticas de acceso de fila por consulta 100 políticas Una consulta puede acceder hasta un total de 100 políticas de acceso de fila.
Cantidad máxima de declaraciones DDL CREATE / DROP por política cada 10 segundos 5 declaraciones Tu proyecto puede realizar hasta cinco declaraciones CREATE o DROP por recurso de política de acceso de fila cada 10 segundos.
Declaraciones DROP ALL ROW ACCESS POLICIES por tabla cada 10 segundos 5 declaraciones Tu proyecto puede realizar hasta cinco declaraciones DROP ALL ROW ACCESS POLICIES por tabla cada 10 segundos.
Cantidad máxima de llamadas rowAccessPolicies.list Consulta Límites para todas las API de BigQuery.
Cantidad máxima de llamadas rowAccessPolicies.getIamPolicy Consulta Cuotas de la API de IAM.

Inserciones de transmisión

Se aplican los siguientes límites y cuotas para la transmisión de datos hacia BigQuery. Si quieres obtener información sobre las estrategias para no superar estos límites, consulta Soluciona problemas de errores de cuota.

Inserciones de transmisión sin campos insertId

Si no propagas el campo insertId cuando insertas las filas, se aplica el siguiente límite. Para obtener más información, consulta la sección Inhabilita la anulación de duplicación de mejor esfuerzo. Esta es la forma recomendada de usar BigQuery para aumentar los límites de cuota de transferencia de transmisión.

Límite Predeterminada Notas
Cantidad máxima de bytes por segundo 1 GB Si no propagas el campo insertId para cada fila insertada, tu proyecto puede transmitir hasta 1 GB por segundo. Si superas este límite, se generarán errores quotaExceeded.

Inserciones de transmisión con campos insertId

Si propagas datos al campo insertId cuando insertas las filas, se aplican las siguientes cuotas. Si excedes estas cuotas, recibirás errores quotaExceeded.

Cuota Predeterminada Notas
Cantidad máxima de filas por segundo y por proyecto en las multirregiones us y eu 50,000 filas

Si propagas datos al campo insertId para cada fila insertada, tendrás un límite de 500,000 filas por segundo en las multirregiones eu y us, por proyecto. Esta cuota es acumulativa en una multirregión determinada. Es decir, el límite de 500,000 se aplica a la suma de filas por segundo que se transmiten a todas las tablas de un proyecto determinado en una multirregión. Cada tabla tiene un límite adicional de 100,000 filas por segundo.

Si superas el límite por proyecto o por tabla, se generarán errores quotaExceeded.

Cantidad máxima de filas por segundo y por proyecto en todas las demás ubicaciones 100,000 filas

Si propagas datos al campo insertId para cada fila insertada, tendrás un límite de 100,000 filas por segundo en todas las ubicaciones, excepto en las multirregiones us y eu, por proyecto o tabla. Esta cuota es acumulativa en una región determinada. Es decir, el límite de 100,000 se aplica a la suma de filas por segundo que se transmiten a todas las tablas de un proyecto determinado en una región.

Si superas esta cantidad, se generarán errores quotaExceeded.

Cantidad máxima de filas por segundo y por tabla 100,000 filas

Si propagas datos al campo insertId para cada fila insertada, tendrás un límite de 100,000 filas por segundo y por tabla.

Si superas esta cantidad, se generarán errores quotaExceeded.

Cantidad máxima de bytes por segundo 100 MB

Si propagas datos al campo insertId para cada fila insertada, tendrás un límite de 100 MB por segundo y por tabla.

Si superas esta cantidad, se generarán errores quotaExceeded.

Todas las inserciones de transmisión

Se aplican los siguientes límites de transmisión sin importar si propagas datos al campo insertId:

Límite Predeterminada Notas
Tamaño máximo de fila 10 MB Si superas este valor, se generarán errores invalid.
Límite de tamaño de la solicitud HTTP 10 MB

Si superas este valor, se generarán errores invalid.

La solicitud se traduce de manera interna de HTTP JSON a una estructura de datos propia. La estructura de datos traducida tiene su propio límite de tamaño aplicado. Es difícil predecir el tamaño de la estructura de datos interna que se generará, pero si mantienes las solicitudes HTTP en 10 MB o menos, las probabilidades de alcanzar el límite interno serán bajas.

Máximo de filas por solicitud 50,000 filas Se recomienda una cantidad máxima de 500 filas. La agrupación en lotes puede aumentar el rendimiento y la capacidad de procesamiento hasta cierto punto, pero en detrimento de la latencia por solicitud. Una baja cantidad de filas por solicitud y la sobrecarga de cada solicitud pueden llevar a que la transferencia sea ineficiente. Si una solicitud abarca demasiadas filas, es posible que observes una disminución en la capacidad de procesamiento. Experimenta con datos representativos (esquema y tamaño de datos) para determinar el tamaño de lote ideal para tus datos.
Longitud del campo insertId 128 caracteres Si superas este valor, se generarán errores invalid.

Si necesitas un aumento en la cuota de transmisión para tu proyecto, puedes inhabilitar la deduplicación de mejor esfuerzo. Si deseas obtener una cuota de transmisión adicional, consulta Solicita un aumento de la cuota.

Funciones de tabla

Se aplican los siguientes límites a las funciones de tabla de BigQuery:

Límite Predeterminada Notas
Longitud máxima de un nombre de función de tabla 256 caracteres El nombre de una función de tabla puede tener hasta 256 caracteres de longitud.
Longitud máxima de un nombre de argumento 128 caracteres El nombre de un argumento de función de tabla puede tener hasta 128 caracteres de longitud.
Cantidad máxima de argumentos 256 argumentos Una función de tabla puede tener hasta 256 argumentos.
Profundidad máxima de una cadena de referencia de función de tabla 16 referencias Una cadena de referencia de función de tabla puede tener hasta 16 referencias de profundidad.
Profundidad máxima del argumento o resultado de tipo STRUCT: 15 niveles Un argumento STRUCT para una función de tabla puede tener hasta 15 niveles de profundidad. De manera similar, un registro STRUCT en el resultado de una función de tabla puede tener hasta 15 niveles de profundidad.
Cantidad máxima de campos en un argumento o tabla de muestra de tipo STRUCT por función de tabla 1,024 campos Un argumento STRUCT para una función de tabla puede tener hasta 1,024 campos. De manera similar, un registro STRUCT en el resultado de una función de tabla puede tener hasta 1,024 campos.
Cantidad máxima de columnas en la tabla de retorno 1,024 columnas Una tabla que muestra una función de tabla puede tener hasta 1,024 columnas.
Longitud máxima de los nombres de las columnas de la tabla de retorno 128 caracteres Los nombres de columna en las tablas mostradas pueden tener hasta 128 caracteres.
Cantidad máxima de actualizaciones por función de tabla cada 10 segundos 5 actualizaciones Tu proyecto puede actualizar una función de tabla hasta cinco veces cada 10 segundos.

Tablas

Todas las tablas

Se aplican los siguientes límites a todas las tablas de BigQuery.

Límite Predeterminada Notas
Longitud máxima de la descripción de una columna 1,024 caracteres Cuando agregas una descripción a una columna, el texto puede tener 1,024 caracteres como máximo.
Profundidad máxima de los registros anidados 15 niveles Las columnas de tipo RECORD pueden contener tipos RECORD anidados, también llamados registros secundarios. El límite de profundidad de anidado máximo es de 15 niveles. Este límite es independiente de si los registros son escalares o basados en arrays (repetidos).

Tablas externas

Se aplican los siguientes límites a las tablas almacenadas en Cloud Storage en los formatos Parquet, ORC, Avro, CSV o JSON.

Límite Predeterminada Notas
Cantidad máxima de URI fuente por tabla externa 10,000 URI Cada tabla externa puede tener hasta 10,000 URI de origen.
Cantidad máxima de archivos por tabla externa 10,000,000 de archivos Una tabla externa puede tener hasta 10 millones de archivos, incluidos todos los archivos que coincidan con todos los URI comodines.
Tamaño máximo de los datos almacenados en Cloud Storage por tabla externa 600 TB Una tabla externa puede tener hasta 600 terabytes en todos los archivos de entrada. Este límite se aplica a los tamaños de archivos según lo almacenado en Cloud Storage. Este tamaño no es el mismo que se usó en la fórmula para calcular los precios de las consultas. En el caso de las tablas particionadas de forma externa, se aplica el límite después de la reducción de particiones.

Tablas particionadas

Se aplican los siguientes límites a las tablas particionadas de BigQuery.

Los límites de partición se aplican al total combinado de todos los Trabajos de carga, trabajos de copia y Trabajos de consulta que agreguen o reemplacen una partición de destino o que usen un DML DELETE ,INSERT ,MERGE ,TRUNCATE TABLE o UPDATE para escribir datos en una tabla.

Las declaraciones DML se toman en cuenta en los límites de partición, pero no están limitadas por ellos. Es decir, estas declaraciones se incluyen en la cantidad total de operaciones diarias que se tienen en cuenta para el límite, pero no fallarán debido al límite. Por ejemplo, si ejecutas 500 trabajos de copia que agregan datos a mytable$20210720 y 1,000 trabajos de consulta que agregan datos a mytable$20210720, alcanzas el límite diario para las operaciones de partición.

Un solo trabajo puede afectar a varias particiones. Por ejemplo, una declaración DML puede actualizar datos en múltiples particiones (tanto para tablas de tiempo de transferencia como para tablas particionadas). Los trabajos de carga y de consulta también pueden escribir en múltiples particiones, pero solo en tablas particionadas.

BigQuery usa la cantidad de particiones que afecta un mismo trabajo para determinar qué cantidad de límite consume el trabajo. Las inserciones de transmisión no afectan a este límite.

Si deseas obtener información sobre las estrategias para permanecer dentro de los límites de las tablas particionadas, consulta Soluciona problemas de errores de cuota.

Límite Predeterminada Notas
Cantidad máxima de modificaciones por día por partición 1,500 operaciones

Tu proyecto puede realizar hasta 1,500 actualizaciones diarias por partición, ya sea que la actualización agregue datos a la partición o la trunque.

Cantidad máxima de particiones por tabla particionada: 4,000 particiones Cada tabla particionada puede tener hasta 4,000 particiones. Si superas este límite, considera usar el agrupamiento en clústeres además de la partición o en lugar de hacerlo.
Cantidad máxima de particiones modificadas mediante un solo trabajo 4,000 particiones Cada operación de trabajo (de consulta o carga) puede afectar hasta 4,000 particiones. BigQuery rechaza cualquier trabajo de consulta o carga que intente modificar más de 4,000 particiones.
Modificaciones de particiones por tabla particionada por tiempo de transferencia por día 5,000 modificaciones. Tu proyecto puede realizar hasta 5,000 modificaciones de particiones por día en una tabla particionada por tiempo de transferencia.
Modificaciones de particiones por tabla particionada por día 30,000 modificaciones

Tu proyecto puede realizar hasta 30,000 modificaciones de particiones por día en una tabla particionada por columnas.

Cantidad de operaciones de partición por tabla de 10 segundos por tabla 50 operaciones Tu proyecto puede ejecutar hasta 50 operaciones de partición por tabla particionada cada 10 segundos.
Cantidad de rangos posibles para la partición de rangos 10,000 rangos Una tabla particionada por rango puede tener hasta 10,000 rangos posibles. Este límite se aplica a la especificación de partición cuando creas la tabla. Después de crear la tabla, el límite también se aplica a la cantidad real de particiones.

Tablas estándar

Se aplican los siguientes límites a las tablas estándares de BigQuery.

Límite Predeterminada Notas
Operaciones de tabla por día 1500 operaciones

Tu proyecto puede realizar hasta 1,500 veces por tabla por día, ya sea que la operación agregue datos a la tabla o la trunque. Este límite incluye el total combinado de todos los trabajos de carga, trabajos de copia y rabajos de consulta que anexan o reemplazan una tabla de destino o que usan una DML DELETE, INSERT, MERGE, TRUNCATE TABLE o UPDATE para escribir datos en una tabla.

Las declaraciones DML se toman en cuenta en este límite, pero no están limitadas por él. En otras palabras, las operaciones diarias totales que se consideran para el límite incluyen declaraciones DML, pero estas no fallan debido a este límite. Por ejemplo, si ejecutas 500 trabajos de copia que agregan datos a mytable y 1,000 trabajos de consulta que agregan datos a mytable, habrás alcanzado el límite.

Para obtener información sobre las operaciones de tabla por día de las tablas particionadas, consulta Operaciones de tablas particionadas por día.

Frecuencia máxima de operaciones de actualización de metadatos en una tabla 5 operaciones cada 10 segundos Tu proyecto puede realizar hasta cinco operaciones de actualización de metadatos en tablas cada 10 segundos por tabla. Este límite se aplica a todas las operaciones de actualización de metadatos de la tabla, realizadas por los siguientes métodos: Este límite también incluye el total combinado de todos los trabajos de carga, de copia y de consulta que agregan datos a una tabla de destino o la reemplazan. Este límite no se aplica a las operaciones DML.

Si superas este límite, recibirás un mensaje de error como Exceeded rate limits: too many table update operations for this table. Este error es transitorio. puedes volver a intentarlo con una retirada exponencial.

Para identificar las operaciones que se consideran en este límite, puedes inspeccionar tus registros.

Cantidad máxima de columnas por tabla 10,000 columnas Cada tabla, resultado de la consulta o definición de la vista puede tener hasta 10,000 columnas.

Instantáneas de tablas

Se aplican los siguientes límites a las instantáneas de tabla de BigQuery:

Límite Predeterminada Notas
Cantidad máxima de trabajos de instantáneas de tablas simultáneas 100 trabajos Tu proyecto puede ejecutar hasta 100 trabajos de instantáneas de tablas simultáneos.
Cantidad máxima de trabajos de instantáneas de tablas por día 50,000 trabajos Tu proyecto puede ejecutar hasta 50,000 trabajos de instantáneas de tablas por día.
Cantidad máxima de trabajos por instantánea de tabla por día 50 trabajos Tu proyecto puede ejecutar hasta 50 trabajos diarios por instantánea de tabla.
Cantidad máxima de actualizaciones de metadatos por instantánea de tabla cada 10 segundos 5 actualizaciones Tu proyecto puede actualizar los metadatos de una instantánea de tabla hasta cinco veces cada 10 segundos.

UDF

Se aplican los siguientes límites a las funciones definidas por el usuario (UDF), tanto temporales como persistentes, en las consultas de SQL de BigQuery.

Límite Predeterminada Notas
Máximo de resultados por fila 5 MB La cantidad máxima de datos que tu UDF de JavaScript puede generar cuando procesa una única fila es de alrededor de 5 MB.
Cantidad máxima de consultas simultáneas de SQL heredado con UDF de JavaScript 6 consultas Tu proyecto puede tener hasta seis consultas de SQL heredado simultáneas que contengan UDF en JavaScript. Este límite incluye consultas tanto interactivas como por lotes. También se toman en cuenta las consultas interactivas que contienen UDF en el límite de frecuencia de simultaneidad de las consultas interactivas. No se aplica este límite a consultas de SQL estándar.
Recursos máximos de UDF de JavaScript por consulta 50 recursos Un trabajo de consulta puede tener hasta 50 recursos de UDF de JavaScript, como BLOB de código intercalado o archivos externos.
Tamaño máximo del BLOB de código intercalado 32 KB Un BLOB de código intercalado en una UDF puede tener un tamaño de hasta 32 KB.
Tamaño máximo de cada recurso de código externo 1 MB El tamaño máximo de cada recurso de código JavaScript es de un MB.

Se aplican los siguientes límites a las UDF persistentes:

Límite Predeterminada Notas
Longitud máxima de un nombre de UDF 256 caracteres Los nombres de las UDF pueden tener hasta 256 caracteres.
Cantidad máxima de argumentos 256 argumentos Una UDF puede tener hasta 256 argumentos.
Longitud máxima de un nombre de argumento 128 caracteres Los nombres de los argumentos de las UDF pueden tener hasta 128 caracteres.
Profundidad máxima de una cadena de referencia de UDF 16 referencias Una cadena de referencia de UDF puede tener hasta 16 referencias de profundidad.
Profundidad máxima de un argumento de tipo STRUCT o un resultado 15 niveles Un argumento o resultado de UDF de tipo STRUCT puede tener hasta 15 niveles de profundidad.
Cantidad máxima de campos en los argumentos de tipo STRUCT o el resultado por UDF 1,024 campos Una UDF puede tener hasta 1,024 campos en los argumentos de tipo STRUCT y el resultado.
Cantidad máxima de bibliotecas de JavaScript en una instrucción CREATE FUNCTION 50 bibliotecas Una instrucción CREATE FUNCTION puede tener hasta 50 bibliotecas de JavaScript.
Longitud máxima de las rutas de acceso de la biblioteca JavaScript incluidas 5,000 caracteres La ruta de acceso a una biblioteca de JavaScript incluida en una UDF puede tener hasta 5,000 caracteres.
Frecuencia de actualización máxima por UDF cada 10 segundos 5 actualizaciones Tu proyecto puede actualizar una UDF hasta cinco veces cada 10 segundos.

Vistas

Se aplican los siguientes límites a las vistas de BigQuery.

Límite Predeterminada Notas
Cantidad máxima de niveles de vistas anidadas 16 niveles BigQuery admite un máximo de 16 niveles de vistas anidadas. Si hay más de 16 niveles, se mostrará un error de INVALID_INPUT.
Longitud máxima de una consulta de SQL estándar usada para definir una vista 256,000 caracteres El texto de una consulta de SQL estándar que define una vista puede tener hasta 256,000 caracteres.
Cantidad máxima de vistas autorizadas por conjunto de datos 2,500 vistas autorizadas La lista de control de acceso de un conjunto de datos puede tener hasta 2,500 vistas autorizadas.

API de BigQuery

En esta sección se describen las cuotas y los límites que se aplican a todas las solicitudes a la API de BigQuery, y las cuotas y los límites que se aplican a los tipos específicos de solicitudes a la API.

Todas las API de BigQuery

Se aplica la siguiente cuota a todas las solicitudes a la API de BigQuery:

Cuota Predeterminada Notas
Solicitudes por día Ilimitado Tu proyecto puede realizar una cantidad ilimitada de solicitudes a la API de BigQuery por día.
Consultar la cuota en Cloud Console
Se aplican los siguientes límites a todas las solicitudes a la [API de BigQuery](https://cloud.google.com/bigquery/docs/reference/rest):
Límite Predeterminada Notas
Cantidad máxima de solicitudes a la API por segundo y por usuario 100 solicitudes Si un usuario realiza más de 100 solicitudes por segundo, es posible que se les aplique un límite. No se aplica este límite a las inserciones de transmisión.
Cantidad máxima de solicitudes a la API simultáneas por usuario 300 solicitudes Si un usuario realiza más de 300 solicitudes simultáneas, puede ocurrir una limitación. Este límite no se aplica a inserciones de transmisión.
Tamaño máximo del encabezado de solicitud 16 KiB Tu solicitud a la API de BigQuery puede ser de hasta 16 KiB, incluida la URL de la solicitud y todos los encabezados. Este límite no se aplica al cuerpo de la solicitud, por ejemplo, en una solicitud POST.

Solicitudes jobs.get

Se aplica el siguiente límite a las solicitudes a la API jobs.get:

Límite Predeterminada Notas
Cantidad máxima de solicitudes jobs.get por segundo 1,000 solicitudes Tu proyecto puede realizar hasta 1,000 solicitudes jobs.get por segundo.

Solicitudes jobs.query

Se aplica el siguiente límite a las solicitudes a la API jobs.query:

Límite Predeterminada Notas
Tamaño máximo de respuesta de jobs.query 10 MB De forma predeterminada, no hay un recuento de filas máximo para la cantidad de filas de datos que se muestran en jobs.query por cada página de resultados. Sin embargo, estás limitado a un tamaño máximo de respuesta de 10 MB. Puedes modificar la cantidad de filas que se muestran mediante el parámetro maxResults.

Solicitudes projects.list

Se aplica el siguiente límite a las solicitudes a la API projects.list:

Límite Predeterminada Notas
Cantidad máxima de solicitudes projects.list por segundo 2 solicitudes Tu proyecto puede realizar hasta dos solicitudes projects.list por segundo.

Solicitudes tabledata.list

Se aplica la siguiente cuota a las solicitudes tabledata.list. Otras API, incluidas jobs.getQueryResults y que recuperan resultados de jobs.query y jobs.insert también puede consumir esta cuota.

Cuota Predeterminada Notas
Bytes de listas de tablas por minuto 3.6 GB Tu proyecto puede mostrar un máximo de 3.6 GB de datos de filas de la tabla por minuto. Esta cuota se aplica al proyecto que contiene la tabla que se lee.
Consultar la cuota en Cloud Console

Se aplican los siguientes límites a las solicitudes tabledata.list:

Límite Predeterminada Notas
La cantidad máxima de solicitudes tabledata.list por segundo 1,000 solicitudes Tu proyecto puede realizar hasta 1,000 solicitudes tabledata.list por segundo.
Cantidad máxima de filas que muestran tabledata.list solicitudes por segundo 150,000 filas Tu proyecto puede mostrar hasta 150,000 filas por segundo mediante las solicitudes tabledata.list. Este límite se aplica al proyecto que contiene la tabla que se está leyendo.
Cantidad máxima de filas por respuesta tabledata.list 100,000 filas Una llamada tabledata.list puede mostrar hasta 100,000 filas de la tabla. Para obtener más información, consulta Desplázate por los resultados mediante la API.

Solicitudes tables.insert

Con el método tables.insert, se crea una nueva tabla vacía dentro del conjunto de datos. El siguiente límite se aplica a las solicitudes tables.insert. Este límite incluye las instrucciones de SQL que crean tablas, como CREATE TABLE, y las consultas con las que se escriben resultados en tablas de destino.

Límite Predeterminada Notas
Cantidad máxima de solicitudes tables.insert por segundo 10 solicitudes Tu proyecto puede realizar hasta 10 solicitudes tables.insert por segundo.

API de BigQuery Connection

Se aplican las siguientes cuotas a las llamadas a la API de conexión de BigQuery:

Cuota Predeterminada Notas
Solicitudes de lectura por minuto 1,000 solicitudes Tu proyecto puede realizar hasta 1,000 solicitudes por minuto a los métodos de la API de conexión de BigQuery que leen datos de conexión.
Consultar la cuota en Cloud Console
Solicitudes de escritura por minuto 100 solicitudes por minuto Tu proyecto puede realizar hasta 100 solicitudes por minuto a los métodos de la API de conexión de BigQuery que crean o actualizan conexiones.
Consultar la cuota en Cloud Console

API de reserva de BigQuery

Se aplican las siguientes cuotas a la API de BigQuery Reservation:

Cuota Predeterminada Notas
Solicitudes por minuto, por región 100 solicitudes Tu proyecto puede realizar un total de hasta 100 llamadas a los métodos de la API de BigQuery Reservations por minuto y por región.
Ver cuotas en Cloud Console
Cantidad de llamadas a SearchAllAssignments por minuto y por región 100 solicitudes Tu proyecto puede realizar hasta 100 llamadas al método SearchAllAssignments por minuto y por región.
Ver cuotas en Cloud Console
Solicitudes de SearchAllAssignments por minuto, por región y por usuario 10 solicitudes Cada usuario puede realizar hasta 10 llamadas al método SearchAllAssignments por minuto y por región.
Visualiza las cuotas en Cloud Console
(En los resultados de la búsqueda de Google Cloud Console, busca por usuario).
Cantidad total de ranuras para cada región (excepto la región de EE.UU. y la UE) por región 0 ranuras La cantidad máxima de ranuras de BigQuery que puedes comprar en cada región con Google Cloud Console.
Ver cuotas en Cloud Console
Cantidad total de ranuras para la región de la UE 1,000 ranuras La cantidad máxima de ranuras de BigQuery que puedes comprar en la multirregión de la UE mediante Google Cloud Console.
Ver cuotas en Cloud Console
Cantidad total de ranuras para la región de EE.UU. 4,000 ranuras La cantidad máxima de ranuras de BigQuery que puedes comprar en la multirregión de EE.UU. con Google Cloud Console.
Ver cuotas en Cloud Console

API de IAM

Las siguientes cuotas se aplican cuando usas la funcionalidad de administración de identidades y accesos en BigQuery a fin de recuperar y establecer políticas de IAM y para probar permisos de IAM.

Cuota Predeterminada Notas
Solicitudes IamPolicy por minuto 3,000 solicitudes Tu proyecto puede realizar hasta 3,000 solicitudes de IAM por segundo.
Consultar la cuota en Cloud Console
Cantidad de solicitudes de IamPolicy por minuto por usuario 1,500 solicitudes Cada usuario puede realizar hasta 1,500 solicitudes de IAM por minuto por proyecto.
Consultar la cuota en Cloud Console

API de lectura de almacenamiento

Las siguientes cuotas se aplican a las solicitudes a la API de lectura de almacenamiento de BigQuery:

Cuota Predeterminada Notas
Solicitudes de lectura de plano de datos por minuto y por usuario 5,000 solicitudes Cada usuario puede realizar hasta 5,000 llamadas a ReadRows por minuto y por proyecto.
Consultar la cuota en Cloud Console
Solicitudes del plano de control de lectura por minuto y por usuario 5,000 solicitudes Cada usuario puede realizar hasta 5,000 llamadas de operaciones de metadatos de la API de almacenamiento de lectura por minuto, por proyecto. Las llamadas de metadatos incluyen los métodos CreateReadSession y SplitReadStream.
Consultar la cuota en Cloud Console

Se aplica el siguiente límite a las solicitudes a la API de lectura de almacenamiento de BigQuery:

Límite Predeterminada Notas
Longitud máxima de fila/filtro 1 MB Cuando usas la llamada CreateReadSession de la API de lectura de almacenamiento, tienes un límite de longitud de 1 MB para cada fila o filtro.

API de escritura de almacenamiento

Se aplican las siguientes cuotas a las solicitudes a la API de Storage Write (vista previa):

Cuota Predeterminada Notas
CreateWriteStream solicitudes por minuto 100 solicitudes Tu proyecto puede realizar hasta 100 llamadas a CreateWriteStream por minuto. Si recibes un error porque superaste este límite, vuelve a intentar la operación con una retirada exponencial. Además, trata de espaciar las llamadas a CreateWriteStream. La transmisión predeterminada no está sujeta a esta cuota. Si no necesitas la anulación de duplicación de datos con el modo de confirmación, considera usar la transmisión predeterminada.
Consultar la cuota en Cloud Console
FlushRows solicitudes por minuto 10,000 solicitudes Tu proyecto puede realizar hasta 10,000 llamadas al método FlushRows por minuto.
Ver la cuota en Cloud Console
Bytes pendientes 100 GB Tu proyecto puede escribir hasta 100 GB en modo pendiente antes de confirmar las transmisiones.
Ver la cuota en Cloud Console

El siguiente límite se aplica a las solicitudes a la API de Storage Write (vista previa):

Límite Predeterminada Notas
Conexiones simultáneas 1,000 conexiones Tu proyecto puede tener hasta 1,000 conexiones simultáneas.

Limitar el uso de cuota

Para aprender a limitar el uso de un recurso en particular mediante la especificación de una cuota más pequeña que la predeterminada, consulta Limita el uso.

Solucionar problemas

Si quieres obtener más información para solucionar errores relacionados con las cuotas y los límites, consulta Soluciona problemas de errores de cuota de BigQuery.