Scegli una struttura dati

Ricorda, quando strutturi i tuoi dati in Cloud Firestore, hai diverse opzioni:

  • Documenti
  • Collezioni multiple
  • Sottoraccolte all'interno di documenti

Considera i vantaggi di ciascuna opzione in relazione al tuo caso d'uso. In questa guida sono descritte alcune strutture di esempio per i dati gerarchici.

Dati annidati nei documenti

Puoi annidare oggetti complessi come array o mappe all'interno di documenti.

  • Vantaggi: se disponi di elenchi di dati semplici e fissi che desideri conservare all'interno dei tuoi documenti, questo è facile da configurare e ottimizza la struttura dei dati.
  • Limitazioni: non è scalabile come altre opzioni, soprattutto se i tuoi dati si espandono nel tempo. Con elenchi più grandi o in crescita, anche il documento cresce, il che può portare a tempi di recupero dei documenti 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 di un utente come un elenco nidificato nel suo profilo.
  • amore
    • nome :
      primo : "Ada"
      ultimo : "Lovelace"
      nato: 1815
      camere :
      0 : "Chat software"
      1: "Personaggi famosi"
      2 : "Famosi SWE"

Sottoraccolte

Puoi creare raccolte all'interno di documenti quando disponi di dati che potrebbero espandersi nel tempo.

  • Vantaggi: man mano che le tue liste crescono, la dimensione del documento principale non cambia. Ottieni anche funzionalità di query complete sulle sottoraccolte e puoi inviare query sui gruppi di raccolte tra le sottoraccolte.
  • Limitazioni: non è possibile eliminare facilmente le sottoraccolte.
  • Qual è un possibile caso d'uso? Nella stessa app di chat, ad esempio, potresti creare raccolte di utenti o messaggi all'interno di documenti di chat room.
  • scienza
    • software
      nome: "chat software"
      • utenti
        • amore
          primo : "Ada"
          ultimo : "Lovelace"
        • giro
          primo: "Sally"
          ultimo : "Corsa"`


    • astrofisica
      • ...

Raccolte a livello di radice

Crea raccolte al livello principale del tuo database per organizzare set di dati disparati.

  • Vantaggi: le raccolte a livello di radice sono utili per le relazioni molti-a-molti e forniscono potenti query all'interno di ciascuna raccolta.
  • Limitazioni: ottenere dati naturalmente gerarchici potrebbe diventare sempre più complesso man mano che il database cresce.
  • Qual è un possibile caso d'uso? Nella stessa app di chat, ad esempio, potresti creare una raccolta per gli utenti e un'altra per stanze virtuali e messaggi.
  • utenti
    • amore
      primo : "Ada"
      ultimo : "Lovelace"
      nato: 1815
    • giro
      primo: "Sally"
      ultima corsa"
      nato: 1951
  • stanze
    • software
      • messaggi
        • messaggio
          da: "avelace"
          contenuto : "..."
        • messaggio
          da: "sridere"
          contenuto : "..."