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 informazioni sui costi di questo spazio di archiviazione, consulta Prezzi di Firestore.Dimensioni stringa
Le dimensioni delle stringhe vengono calcolate come il numero di byte codificati 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 dell'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 del nome del 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 di 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 del valore del campo
La tabella seguente mostra le dimensioni dei valori dei campi in base al 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 | La dimensione del nome del documento |
Stringa di testo | Numero di byte codificati in UTF-8 + 1 |
Vettoriale | 8 byte per dimensione |
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:
- La dimensione del nome del documento
- La somma della dimensione della stringa di ogni nome di campo
- La somma delle dimensioni di ogni valore di campo
- 32 byte aggiuntivi
Questo esempio riguarda 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"
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 di 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
Le dimensioni di una voce dell'indice a campo singolo dipendono dall'ambito dell'indice, che può essere una raccolta o un gruppo di raccolte.
Ambito della raccolta
La dimensione di una voce in un indice a campo singolo con ambito della 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 dimensione della stringa del nome del campo indicizzato
- La dimensione del valore del campo indicizzato
- 32 byte aggiuntivi
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 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 la somma di:
- La dimensione del nome del documento del documento indicizzato
- La dimensione della stringa del nome del campo indicizzato
- La dimensione del valore del campo indicizzato
- 48 byte aggiuntivi
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 dell'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 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 di campo indicizzati
- 32 byte aggiuntivi
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 composto con ambito della raccolta che indicizza i campi done
e
priority
(entrambi in ordine crescente), le dimensioni totali della voce in questo indice sono
112 byte:
- 44 byte per il nome del documento
users/jeff/tasks/my_task_id
- 27 byte per il nome 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:
- La dimensione del nome del documento del documento indicizzato
- La somma dei valori di campo indicizzati
- 32 byte aggiuntivi
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 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
indici 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