Cálculos del tamaño de almacenamiento

Esta página describe el tamaño de almacenamiento de documentos, nombres de documentos, campos y entradas de índice en Cloud Firestore.

Puedes conocer los costos de este almacenamiento en Precios de Cloud Firestore .

Tamaño de cuerda

Los tamaños de cadena se calculan como el número de bytes codificados en UTF-8 + 1.

Lo siguiente se almacena como cadenas:

  • ID de colección
  • ID de documentos de cadena
  • Nombres de documentos
  • Nombres de campo
  • Valores de campo de cadena

Por ejemplo:

  • Las tasks de ID de colección utilizan 5 bytes + 1 byte, para un total de 6 bytes.
  • La description del nombre del campo utiliza 11 bytes + 1 byte, para un total de 12 bytes.

Tamaño de identificación del documento

El tamaño de un ID de documento es el tamaño de cadena para un ID de cadena u 8 bytes para un ID entero.

Tamaño del nombre del documento

El tamaño del nombre de un documento es la suma de:

  • El tamaño de cada ID de colección e ID de documento en la ruta al documento.
  • 16 bytes adicionales

Para un documento en la subcolección users/jeff/tasks con un ID de documento de cadena de my_task_id , el tamaño del nombre del documento es 6 + 5 + 6 + 11 + 16 = 44 bytes:

  • 6 bytes para el ID de colección users
  • 5 bytes para el ID del documento jeff
  • 6 bytes para el ID de colección tasks
  • 11 bytes para el ID del documento my_task_id
  • 16 bytes adicionales

Tamaño del valor del campo

La siguiente tabla muestra el tamaño de los valores de campo por tipo.

Tipo Tamaño
Formación La suma de los tamaños de sus valores.
Booleano 1 byte
bytes Longitud del byte
Fecha y hora 8 bytes
Número de punto flotante 8 bytes
punto geográfico 16 bytes
Entero 8 bytes
Mapa El tamaño del mapa, calculado de la misma manera que el tamaño del documento.
Nulo 1 byte
Referencia El tamaño del nombre del documento.
Cadena de texto Número de bytes codificados en UTF-8 + 1

Por ejemplo, un campo booleano llamado done usaría 6 bytes:

  • 5 bytes para el nombre del campo done
  • 1 byte para el valor booleano

Tamaño del documento

El tamaño de un documento es la suma de:

Este ejemplo es para un documento en la subcolección users/jeff/tasks con un ID de documento de cadena de my_task_id :

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

El tamaño total de los campos es de 71 bytes:

Nombre y valor del campo Tamaño del campo en bytes
"type": "Personal" 14
5 para el nombre del campo + 9 para el valor de cadena del campo
"done": false 6
5 para el nombre del campo + 1 para el valor booleano del campo
"priority": 1 17
9 para el nombre del campo + 8 para el valor entero del campo
"description": "Learn Cloud Firestore" 34
12 para el nombre del campo + 22 para el valor de cadena del campo

Entonces el tamaño del documento es 44 + 71 + 32 = 147 bytes:

  • 44 bytes para el nombre del documento.
  • 71 bytes para los campos
  • 32 bytes adicionales

Tamaño de entrada de índice

Los tamaños de entrada de índice se calculan de la siguiente manera para índices compuestos y de un solo campo.

Tamaño de entrada de índice de un solo campo

El tamaño de una entrada de índice de un solo campo depende de si un índice tiene como ámbito una colección o un grupo de colecciones.

Alcance de la colección

El tamaño de una entrada en un índice de un solo campo con alcance de colección es la suma de:

Considere un documento en la subcolección users/jeff/tasks con un ID de documento de cadena de my_task_id :

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

Para un índice de un solo campo con alcance de colección que indexa el campo done , el tamaño total de la entrada en este índice es 109 bytes:

  • 44 bytes para el nombre del documento users/jeff/tasks/my_task_id
  • 27 bytes para el nombre del documento principal users/jeff
  • 5 bytes para el nombre del campo done
  • 1 byte para el valor del campo booleano
  • 32 bytes adicionales

Alcance del grupo de colección

El tamaño de una entrada en un índice de un solo campo con alcance de grupo de colección es la suma de:

Considere un documento en la subcolección users/jeff/tasks con un ID de documento de cadena de my_task_id :

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

Para un índice de un solo campo con alcance de grupo de colección que indexa el campo done , el tamaño total de la entrada en este índice es 98 bytes:

  • 44 bytes para el nombre del documento users/jeff/tasks/my_task_id
  • 5 bytes para el nombre del campo done
  • 1 byte para el valor del campo booleano
  • 48 bytes adicionales

Tamaño de entrada del índice compuesto

El tamaño de una entrada en un índice compuesto depende de si el índice tiene como ámbito una colección o un grupo de colecciones.

Alcance de la colección

El tamaño de una entrada de índice en un índice compuesto con alcance de colección es la suma de:

Considere un documento en la subcolección users/jeff/tasks con un ID de documento de cadena de my_task_id :

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

Para un índice compuesto con alcance de colección que indexa los campos done y priority (ambos ascendentes), el tamaño total de la entrada en este índice es 112 bytes:

  • 44 bytes para el nombre del documento users/jeff/tasks/my_task_id
  • 27 bytes para el nombre del documento principal users/jeff
  • 1 byte para el valor del campo booleano
  • 8 bytes para el valor del campo entero
  • 32 bytes adicionales

Alcance del grupo de colección

El tamaño de una entrada de índice en un índice compuesto con alcance de grupo de colección es la suma de:

Considere un documento en la subcolección users/jeff/tasks con un ID de documento de cadena de my_task_id :

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

Para un índice compuesto con alcance de grupo de colección que indexa los campos done y priority (ambos ascendentes), el tamaño total de la entrada de índice en este índice es 85 bytes:

  • 44 bytes para el nombre del documento users/jeff/tasks/my_task_id
  • 1 byte para el valor del campo booleano
  • 8 bytes para el valor del campo entero
  • 32 bytes adicionales

Que sigue

Obtenga más información sobre los precios de Cloud Firestore .