Calcoli dello spazio di archiviazione
Questa pagina descrive le dimensioni di archiviazione di documenti, nomi di documenti, campi e voci di indice in Firestore.
Per informazioni sui costi di archiviazione, vedi Prezzi di Firestore.Dimensione stringa
Le dimensioni delle stringhe vengono calcolate come il numero di byte codificati in UTF-8 + 1.
Le seguenti stringhe vengono memorizzate come stringhe:
- ID raccolta
- ID documento stringa
- Nomi dei documenti
- Nomi dei campi
- Valori dei campi stringa
Ad esempio:
- L'ID raccolta
tasks
usa 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
La dimensione di un ID documento corrisponde alla dimensione stringa per un ID stringa o a 8 byte per un ID intero.
Dimensione 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 ID documento stringa 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 di seguito mostra le dimensioni dei valori dei campi per tipo.
Tipo | Dimensioni |
---|---|
Array | La somma delle dimensioni dei suoi valori |
Booleano | 1 byte |
Byte | Lunghezza byte |
Data e ora | 8 byte |
Numero con virgola mobile | 8 byte |
Punto geografico | 16 byte |
Numero intero | 8 byte |
Mappa | Le dimensioni della mappa, calcolate come le dimensioni del documento. |
Null | 1 byte |
Riferimento | Le dimensioni del nome del documento. |
Stringa di testo | Numero di byte con codifica UTF-8 + 1 |
Ad esempio, un campo booleano denominato done
utilizzerà 6 byte:
- 5 byte per il nome del campo
done
- 1 byte per il valore booleano
Dimensioni del documento
La dimensione di un documento è la somma di:
- Le dimensioni del nome del documento.
- La somma delle dimensioni della stringa di ciascun nome del campo.
- La somma delle dimensioni di ogni valore campo
- 32 byte aggiuntivi
Questo esempio si riferisce a un documento nella raccolta secondaria users/jeff/tasks
con ID documento stringa 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 | Dimensione campo in byte |
---|---|
"type": "Personal" |
14 5 per il nome del campo + 9 per il valore della 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 |
Quindi la dimensione del documento è 44 + 71 + 32 = 147 byte:
- 44 byte per il nome del documento
- 71 byte per i campi
- 32 byte aggiuntivi
Dimensioni voce di indice
Le dimensioni delle voci di indice vengono calcolate come segue per gli indici a campo singolo e composti.
Dimensione voce indice a campo singolo
La dimensione di una voce di indice a campo singolo dipende dal fatto che l'ambito di un indice sia 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 è la somma di:
- La dimensione del nome del documento del documento indicizzato.
- La dimensione del nome del documento del documento principale del documento indicizzato
- Le dimensioni della stringa del nome del campo indicizzato.
- La dimensione del valore del campo indicizzato.
- 32 byte aggiuntivi
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 di raccolta che indicizza il campo done
, la dimensione totale della voce in questo indice è di 109 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
- 5 byte per il nome del campo
done
- 1 byte per il valore del campo booleano
- 32 byte aggiuntivi
Ambito del gruppo di raccolte
La dimensione di una voce in un indice a campo singolo con ambito del gruppo di raccolte è la somma di:
- La dimensione del nome del documento del documento indicizzato.
- Le dimensioni della stringa del nome del campo indicizzato.
- La dimensione del valore del campo indicizzato.
- 48 byte aggiuntivi
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 del gruppo di raccolte che indicizza il campo done
, la dimensione totale della voce in questo indice è di 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
Dimensione delle voci di indice composto
La dimensione di una voce in un indice composto dipende dall'ambito dell'indice, che può essere una raccolta o un gruppo di raccolte.
Ambito della raccolta
La dimensione di una voce di indice in un indice composto con ambito di raccolta è la somma di:
- La dimensione del nome del documento del documento indicizzato.
- La dimensione del nome del documento del documento principale del documento indicizzato
- La somma dei valori dei campi indicizzati
- 32 byte aggiuntivi
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 i campi done
e priority
(entrambi in ordine crescente), la dimensione totale della voce in questo indice è di 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 a livello di gruppo di raccolte è la somma di:
- La dimensione del nome del documento del documento indicizzato.
- La somma dei valori dei campi indicizzati
- 32 byte aggiuntivi
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 del gruppo di raccolte che indicizza i campi done
e priority
(entrambi in ordine crescente), la dimensione totale della voce di indice in questo indice è di 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