Calcoli dello spazio di archiviazione

Questa pagina descrive le dimensioni dello spazio di archiviazione dei documenti, dei nomi dei documenti, dei campi e delle voci di indice in Firestore.

Per conoscere i costi di questo spazio di archiviazione, visita Firestore Prezzi.

Dimensioni stringa

Le dimensioni delle stringhe vengono calcolate come il numero di byte con codifica UTF-8 + 1.

I seguenti elementi vengono memorizzati come stringhe:

  • ID raccolta
  • ID documento stringa
  • Nomi dei documenti
  • Nomi dei campi
  • Valori dei campi di stringa

Ad esempio:

  • L'ID raccolta tasks utilizza 5 byte + 1 byte, per un totale di 6 byte.
  • Il nome del campo description utilizza 11 byte + 1 byte, per un totale di 12 byte.

Dimensioni ID documento

Le dimensioni di un ID documento corrispondono alle dimensioni della stringa per un ID stringa o a 8 byte per un ID intero.

Dimensioni nome documento

La dimensione del nome di un documento è la somma di:

  • Le dimensioni di ogni ID raccolta e ID documento nel percorso del documento
  • 16 byte aggiuntivi

Per un documento nella raccolta secondaria users/jeff/tasks con un ID documento stringa di my_task_id, la dimensione del nome del documento è 6 + 5 + 6 + 11 + 16 = 44 byte:

  • 6 byte per l'ID raccolta users
  • 5 byte per l'ID documento jeff
  • 6 byte per l'ID raccolta tasks
  • 11 byte per l'ID documento my_task_id
  • 16 byte aggiuntivi

Dimensione valore campo

La tabella seguente mostra le dimensioni dei valori dei campi per tipo.

Tipo Dimensioni
Array La somma delle dimensioni dei relativi valori
Booleano 1 byte
Byte Lunghezza in byte
Data e ora 8 byte
Numero in virgola mobile 8 byte
Punto geografico 16 byte
Numero intero 8 byte
Mappa Le dimensioni della mappa, calcolate nello stesso modo delle dimensioni del documento
Null 1 byte
Riferimento Le dimensioni del nome del documento
Stringa di testo Numero di byte codificati in UTF-8 + 1

Ad esempio, un campo booleano denominato done utilizzerebbe 6 byte:

  • 5 byte per il nome del campo done
  • 1 byte per il valore booleano

Dimensioni del documento

Le dimensioni di un documento corrispondono alla somma di:

Questo esempio si riferisce a un documento nella sottoraccolta users/jeff/tasks con un ID documento stringa di my_task_id:

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

La dimensione totale dei campi è di 71 byte:

Nome e valore del campo Dimensioni del campo in byte
"type": "Personal" 14
5 per il nome del campo + 9 per il valore stringa del campo
"done": false 6
5 per il nome del campo + 1 per il valore booleano del campo
"priority": 1 17
9 per il nome del campo + 8 per il valore intero del campo
"description": "Learn Cloud Firestore" 34
12 per il nome del campo + 22 per il valore stringa del campo

Pertanto, le dimensioni del documento sono 44 + 71 + 32 = 147 byte:

  • 44 byte per il nome del documento
  • 71 byte per i campi
  • 32 byte aggiuntivi

Dimensioni della voce dell'indice

Le dimensioni delle voci di indice vengono calcolate come segue per gli indici a campo singolo e composti.

Dimensioni delle voci dell'indice a campo singolo

La dimensione di una voce di indice a campo singolo dipende dall'ambito o meno di un indice una raccolta o un gruppo di raccolte.

Ambito della raccolta

La dimensione di una voce in un indice a campo singolo con ambito di raccolta corrisponde alla somma di:

Considera un documento nella raccolta secondaria users/jeff/tasks con un ID documento stringa di my_task_id:

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

Per un indice a campo singolo con ambito della raccolta che indicizza il campo done , le dimensioni totali della voce in questo indice sono 109 byte:

  • 44 byte per il nome del documento users/jeff/tasks/my_task_id
  • 27 byte per il nome del documento principale users/jeff
  • 5 byte per il nome del campo done
  • 1 byte per il valore del campo booleano
  • 32 byte aggiuntivi

Ambito del gruppo di raccolte

Le dimensioni di una voce in un indice a campo singolo con ambito del gruppo di raccolte sono somma di:

Prendi in considerazione un documento nella sottoraccolta users/jeff/tasks con un ID documento di stringa my_task_id:

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

Per un indice a campo singolo con ambito del gruppo di raccolte che indicizza il campo done , le dimensioni totali della voce in questo indice sono 98 byte:

  • 44 byte per il nome del documento users/jeff/tasks/my_task_id
  • 5 byte per il nome del campo done
  • 1 byte per il valore del campo booleano
  • 48 byte aggiuntivi

Dimensioni delle voci di indice composto

La dimensione di una voce in un indice composto dipende dal fatto che l'indice sia limitato a una raccolta o a un gruppo di raccolte.

Ambito della raccolta

La dimensione di una voce di indice in un indice composto con ambito della raccolta è somma di:

Considera un documento nella raccolta secondaria users/jeff/tasks con un ID documento stringa di my_task_id:

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

Per un indice composto con ambito di raccolta che indicizza done e priority campi (entrambi crescenti), la dimensione totale della voce in questo indice è 112 byte:

  • 44 byte per il nome del documento users/jeff/tasks/my_task_id
  • 27 byte per il nome del documento del documento principale users/jeff
  • 1 byte per il valore del campo booleano
  • 8 byte per il valore del campo intero
  • 32 byte aggiuntivi

Ambito del gruppo di raccolte

La dimensione di una voce di indice in un indice composto con ambito del gruppo di raccolte è la somma di:

Considera un documento nella raccolta secondaria users/jeff/tasks con un ID documento stringa di my_task_id:

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

Per un indice composto con ambito gruppo di raccolte che indicizza i campi done e priority (entrambi in ordine crescente), le dimensioni totali della voce di indice in questo indice sono 85 byte:

  • 44 byte per il nome del documento users/jeff/tasks/my_task_id
  • 1 byte per il valore del campo booleano
  • 8 byte per il valore del campo intero
  • 32 byte aggiuntivi

Passaggi successivi

Scopri di più sui prezzi di Firestore.