Scegli una struttura dati

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

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

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

Dati nidificati nei documenti

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

  • Vantaggi: se disponi di elenchi di dati semplici e fissi che desideri conservare nei tuoi documenti, questo è facile da configurare e semplifica la struttura dei dati.
  • Limitazioni: non è scalabile come altre opzioni, soprattutto se i 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 da un utente come un elenco nidificato nel suo profilo.
  • amorosa
    • nome :
      primo: "Ada"
      ultimo: "Lovelace"
      nato: 1815
      camere :
      0: "Chat software"
      1: "Personaggi famosi"
      2: "SWE famosi"

Sottoraccolte

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

  • Vantaggi: man mano che i tuoi elenchi crescono, la dimensione del documento principale non cambia. Ottieni inoltre funzionalità di query complete sulle sottoraccolte e puoi inviare query ai gruppi di raccolte tra 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 dei documenti della chat room.
  • scienza
    • software
      nome: "chat software"
      • utenti
        • amorosa
          primo: "Ada"
          ultimo: "Lovelace"
        • cavalcata
          primo: "Sally"
          ultimo: "Cavalca"`


    • di astrofisica
      • ...

Raccolte a livello di root

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

  • Vantaggi: le raccolte a livello di root sono utili per le relazioni molti-a-molti e forniscono query potenti 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
    • amorosa
      primo: "Ada"
      ultimo: "Lovelace"
      nato: 1815
    • cavalcata
      primo: "Sally"
      ultima corsa"
      nato: 1951
  • stanze
    • software
      • messaggi
        • messaggio
          da: "alovelace"
          contenuto : "..."
        • messaggio
          da: "sride"
          contenuto : "..."