现已推出与 MongoDB 兼容的 Cloud Firestore 企业版!
了解详情。
  
         
     
  
  
  
    
  
  
  
    
      Scegli una struttura di dati
    
    
      
    
    
      
      Mantieni tutto organizzato con le raccolte
    
    
      
      Salva e classifica i contenuti in base alle tue preferenze.
    
  
  
      
    
  
  
  
  
  
    
  
  
    
    
    
    
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
  
Ricorda che, quando strutturi i dati in Cloud Firestore, hai a disposizione alcune opzioni diverse:
  - Documenti
- Più raccolte
- Sottoraccolte all'interno dei documenti
Valuta i vantaggi di ogni opzione in relazione al tuo caso d'uso. In questa guida sono descritte alcune strutture di esempio per i dati gerarchici.
Dati nidificati nei documenti
Puoi nidificare oggetti complessi come array o mappe all'interno dei documenti.
| 
Vantaggi:se hai elenchi di dati semplici e fissi che vuoi conservare nei tuoi documenti, questa opzione è facile da configurare e semplifica la struttura dei dati.
Limitazioni:
questa opzione non è scalabile come le altre,
soprattutto se i dati aumentano nel tempo. Con elenchi più grandi o in crescita, anche il documento cresce, il che può comportare tempi di recupero più lenti.
Qual è un possibile caso d'uso? In un'app di chat, ad esempio, potresti memorizzare le 3 chat room visitate più di recente da un utente come elenco nidificato nel suo profilo.
 |  class alovelace
     name :first : "Ada"
 last : "Lovelace"
 born : 1815
 rooms :
 0 : "Software Chat"
 1 : "Famous Figures"
 2 : "Famous SWEs"
 
 | 
Sottoraccolte
Puoi creare raccolte all'interno dei documenti quando hai dati che potrebbero espandersi
nel tempo.
| 
Vantaggi: man mano che gli elenchi crescono, le dimensioni del documento principale non cambiano. Inoltre, puoi eseguire query complete sulle raccolte secondarie
ed emettere 
query sui gruppi di raccolte nelle raccolte secondarie.
Limitazioni:non puoi eliminare facilmente le sottoraccolte.
Qual è un possibile caso d'uso? Nella stessa app di chat, ad esempio, puoi creare raccolte di utenti o messaggi all'interno dei documenti delle chat room.
 | 
collections_bookmark science
    class softwarename : "software chat"
 collections_bookmark
        utenti
            class
            alovelacefirst : "Ada"
 last : "Lovelace"
 
class
            sridefirst : "Sally"
 last : "Ride"`
 
 
class astrophysics
        
        
 | 
Raccolte a livello di radice
Crea raccolte a livello principale del database per organizzare set di dati disparati.
| 
Vantaggi:le raccolte a livello di radice sono adatte alle relazioni molti-a-molti e forniscono query efficaci all'interno di ogni raccolta.
Limitazioni: l'ottenimento di dati naturalmente gerarchici potrebbe
diventare sempre più complesso con la crescita del database.
Qual è un possibile caso d'uso? Nella stessa app di chat,
ad esempio, potresti creare una raccolta per gli utenti e un'altra per le stanze e i
messaggi.
 |  collections_bookmark
    utenti
     class alovelacefirst : "Ada"
 last : "Lovelace"
 born : 1815
 
class sridefirst : "Sally"
 last : "Ride"
 born : 1951
 
collections_bookmark stanze
    class software
        collections_bookmark
        messaggi
            class
            message1from : "alovelace"
 content : "..."
 
class
            message2from : "sride"
 content : "..."
 
 | 
  
  
  
    
  
 
  
    
    
      
       
    
    
  
  
  Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
  Ultimo aggiornamento 2025-10-31 UTC.
  
  
  
    
      [null,null,["Ultimo aggiornamento 2025-10-31 UTC."],[],[]]