Strutturare i dati

Quando struttura i dati in Firestore, hai alcune opzioni diverse:

  • Documenti
  • Più raccolte
  • Sottoraccolte all'interno dei 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 nidificati nei documenti

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

  • Vantaggi: se disponi di elenchi semplici e fissi di dati che vuoi conservare nei documenti, è facile da configurare e snellisce la struttura dei dati.
  • Limitazioni: questa opzione non è scalabile quanto altre opzioni, soprattutto se i dati si espandono nel tempo. Con elenchi più lunghi o in crescita, anche il documento cresce, il che può rallentare i tempi di recupero dei documenti.
  • Qual è un possibile caso d'uso? In un'app di chat, ad esempio, puoi memorizzare le tre stanze virtuali visitate più di recente come elenco nidificato nel suo profilo.
  • alovelace
    • name :
      first : "Ada"
      last : "Lovelace"
      born : 1815
      rooms :
      0 : "Software Chat"
      1 : "Famous s"

Sottoraccolte

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

  • Vantaggi: man mano che gli elenchi aumentano, le dimensioni del documento principale non cambiano. Inoltre, puoi usufruire di funzionalità di query complete sulle sottoraccolte ed eseguire gruppo di raccolte raccolta nelle varie sottoraccolte.
  • 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 stanze virtuali.
  • scienze
    • software
      nome : "chat software"
      • utenti
        • alovelace
          first : "Ada"
          last : "Lovelace"
        • sride
          first : "Sally"
          last : "Ride"`


    • Astrofisica
      • ...

Raccolte a livello di directory principale

Crea raccolte a livello della directory principale del tuo database per organizzare set di dati disparati.

  • Vantaggi: le raccolte a livello di directory principale sono ideali per relazioni many-to-many e consentono di eseguire query efficaci all'interno di ogni raccolta.
  • Limitazioni: i dati naturalmente gerarchici potrebbero diventare sempre più complessi man mano che il database cresce.
  • Qual è un possibile caso d'uso? Nella stessa app di chat, ad esempio, puoi creare una raccolta per gli utenti e un'altra per le stanze virtuali e i messaggi.
  • utenti
    • alovelace
      first : "Ada"
      last : "Lovelace"
      nato il : 1815
    • sride
      first : "Sally"
      ultimo : "Ride"
      data di nascita : 1951
  • stanze
    • Software
      • messaggi
        • messaggio1
          da : "alovelace"
          content : "..."
        • messaggio2
          da : "sride"
          content : "..."

Video

Per ulteriori informazioni, guarda i seguenti video: