Cuotas y límites
En esta página, se indican los límites y las cuotas de solicitudes de Firestore.
Cuota gratuita
Firestore ofrece cuotas gratuitas que te permiten comenzar a usar tu base de datos de (default)
sin costo. Las cantidades de la cuota gratuita se muestran a continuación.
Si necesitas aumentar la cuota, debes habilitar la facturación para tu proyecto de Google Cloud.
Las cuotas se aplican cada día y se restablecen a la medianoche, hora del Pacífico.
Solo la base de datos de (default)
califica para la cuota gratuita.
Nivel gratuito | Cuota |
---|---|
Datos almacenados | 1 GiB |
Operaciones de lectura de documentos | 50,000 por día |
Operaciones de escritura de documentos | 20,000 por día |
Operaciones de eliminación de documentos | 20,000 por día |
Transferencia de datos saliente | 10 GiB por mes |
Las siguientes operaciones y funciones no incluyen el uso gratuito. Debes habilitar la facturación para usar estas funciones:
- Uso de bases de datos con nombre (no predeterminadas)
- Eliminaciones de TTL
- Datos de PITR
- Crear copias de seguridad de los datos
- Operaciones de restablecimiento
Para obtener más información sobre cómo se facturan estas funciones, consulta Precios de almacenamiento.
Límites estándar
En las siguientes tablas, se muestran los límites que se aplican a Firestore. Son estrictos, a menos que se indique lo contrario.
Bases de datos
Límite | Detalles |
---|---|
Cantidad máxima de bases de datos por proyecto |
100 Puedes comunicarte con el equipo de asistencia para solicitar un aumento de este límite. |
Colecciones, documentos y campos
Límite | Detalles |
---|---|
Restricciones del ID de colección |
|
Profundidad máxima de subcolecciones | 100 |
Restricciones del ID de documento |
|
Tamaño máximo del nombre de un documento | 6 KiB |
Tamaño máximo de un documento | 1 MiB (1,048,576 bytes) |
Restricciones del nombre de un campo |
|
Tamaño máximo del nombre de un campo | 1,500 bytes |
Restricciones de la ruta de un campo |
` ). Por ejemplo, foo.`x&y` se refiere al campo x&y anidado en el campo foo . Para crear un nombre de campo con el carácter de acento grave, utiliza el carácter de barra inversa (\ ). Para mayor comodidad, puedes evitar los nombres de campo entrecomillados pasando la ruta del campo como un objeto FieldPath (por ejemplo, consulta JavaScript FieldPath).
|
Tamaño máximo de la ruta de un campo | 1,500 bytes |
Tamaño máximo del valor de un campo | 1 MiB - 89 bytes (1,048,487 bytes) |
Profundidad máxima de los campos en un mapa o arreglo | 20 Los campos de mapa y array agregan un nivel a la profundidad general de un objeto. Por ejemplo, el siguiente objeto tiene una profundidad total de tres niveles:
|
Escrituras y transacciones
Además de estos límites, también deberías consultar las prácticas recomendadas con el fin de diseñar para el escalamiento.
Límite | Detalles |
---|---|
Tamaño máximo de la solicitud a la API | 10 MiB |
Límite de tiempo de una transacción | 270 segundos, con un tiempo de vencimiento por inactividad de 60 segundos |
Cantidad máxima de transformaciones de campo que se pueden realizar en un único documento en una operación Commit o en una transacción |
500 |
Índices
Los siguientes límites se aplican a los índices de un único campo y a los compuestos:
En esta página, se indican los límites y las cuotas de solicitudes de Firestore.
Límite | Detalles |
---|---|
Cantidad máxima de índices compuestos que se permiten para una base de datos |
|
Cantidad máxima de parámetros de configuración de campo único para una base de datos |
Una configuración a nivel de campo puede contener varios parámetros de configuración para el mismo campo. Por ejemplo, una exención de la indexación de campo único y una política de TTL en el mismo campo se registran como un solo parámetro de configuración para el límite. |
Cantidad máxima de entradas de índice permitidas en cada documento |
40,000 La cantidad de entradas de índice en cada documento es la suma de los siguientes elementos:
Para ver cómo Firestore convierte un documento y un conjunto de índices en entradas en un índice, consulta este ejemplo de recuento de entradas de índice. |
Cantidad máxima de campos en un índice compuesto | 100 |
Tamaño máximo de una entrada de índice |
7.5 KiB Para saber cómo Firestore calcula el tamaño de las entradas en el índice, consulta Tamaño de una entrada del índice. |
Suma máxima de los tamaños de las entradas en un índice de un documento |
8 MiB El tamaño total corresponde a la suma de los siguientes elementos de un documento: |
Tamaño máximo del valor de un campo indexado |
1,500 bytes Se reducirán los valores de campo que superen los 1,500 bytes. Es posible que las consultas que tengan valores de campo reducidos muestren resultados incoherentes. |
Tiempo de actividad (TTL)
Límite | Detalles |
---|---|
Cantidad máxima de parámetros de configuración de campo único para una base de datos |
Una configuración a nivel de campo puede contener varios parámetros de configuración para el mismo campo. Por ejemplo, una exención de la indexación de campo único y una política de TTL en el mismo campo se registran como un solo parámetro de configuración para el límite. |
Operaciones de importación y exportación
Se aplican los siguientes límites a las operaciones administradas de importación y exportación:
Límite | Detalles |
---|---|
Cantidad máxima de solicitudes de importación y exportación que se permiten por minuto en un proyecto | 20 |
Cantidad máxima de importaciones y exportaciones simultáneas | 50 |
Cantidad máxima de filtros de ID de colecciones para solicitudes de importación y exportación | 100 |
Reglas de seguridad
Límite | Detalles |
---|---|
Cantidad máxima de llamadas exists() , get() y getAfter() por solicitud |
Si se excede alguno de esos límites, se obtiene un error de permiso denegado. Algunas llamadas de acceso a documentos se pueden almacenar en caché, y estas llamadas no cuentan para los límites. |
Profundidad máxima de las declaraciones match anidadas |
10 |
Longitud máxima de la ruta de acceso, en segmentos de ruta, permitida en un conjunto de declaraciones match anidadas: |
100 |
Cantidad máxima de variables de captura de rutas de acceso permitida en un conjunto de instrucciones match anidadas |
20 |
Profundidad máxima de las llamadas a funciones | 20 |
Cantidad máxima de argumentos de funciones | 7 |
Cantidad máxima de vinculaciones a variables let por función |
10 |
Cantidad máxima de llamadas recurrentes o cíclicas a una función | 0 (no permitidas) |
Cantidad máxima de expresiones evaluadas por solicitud | 1,000 |
Tamaño máximo de un conjunto de reglas | Los conjuntos de reglas deben cumplir con dos límites de tamaño:
|
Supervisa el uso
Puedes ver el uso de Firestore en la Cuotas de la API de Cloud Firestore y las Cuotas de App Engine.