Catch up on everthing we announced at this year's Firebase Summit. Learn more

Choisir une structure de données

N'oubliez pas que lorsque vous structurez vos données dans Cloud Firestore, plusieurs options s'offrent à vous :

  • Documents
  • Plusieurs collections
  • Sous-collections dans les documents

Considérez les avantages de chaque option en fonction de votre cas d'utilisation. Quelques exemples de structures de données hiérarchiques sont présentés dans ce guide.

Données imbriquées dans les documents

Vous pouvez imbriquer des objets complexes tels que des tableaux ou des cartes dans des documents.

  • Avantages: Si vous avez des listes simples, fixes de données que vous souhaitez conserver au sein de vos documents, c'est facile à mettre en place et rationalise votre structure de données.
  • Limitations: Ce n'est pas aussi évolutive que d' autres options, surtout si vos données se dilate au fil du temps. Avec des listes plus grandes ou croissantes, le document s'agrandit également, ce qui peut ralentir les temps de récupération des documents.
  • Quel est un cas d'utilisation possible ? Dans une application de chat, par exemple, vous pouvez stocker les 3 salons de chat les plus récemment visités d'un utilisateur sous forme de liste imbriquée dans son profil.
  • alovelace
    • Nom :
      premier : "Ada"
      dernier : "Lovelace"
      né : 1815
      pièces :
      0 : "Chat logiciel"
      1 : "Personnages Célèbres"
      2 : "Célèbres SWE"

Sous-collections

Vous pouvez créer des collections dans des documents lorsque vous disposez de données susceptibles de s'étendre au fil du temps.

  • Avantages: Comme vos listes se développent, la taille du document parent ne change pas. Vous pouvez également obtenir toutes les capacités de requête sur les sous - collections, et vous pouvez émettre des requêtes de groupe de collection à travers les sous - collections.
  • Limitations: Vous ne pouvez pas supprimer facilement des sous - collections.
  • Quel est un cas d'utilisation possible ? Dans la même application de discussion, par exemple, vous pouvez créer des collections d'utilisateurs ou de messages dans les documents de la salle de discussion.
  • la science
    • logiciels
      nom : "chat logiciel"
      • utilisateurs
        • alovelace
          premier : "Ada"
          dernier : "Lovelace"
        • sride
          premier : "Sally"
          dernier : "Ride"`


    • astrophysique
      • ...

Collections au niveau racine

Créez des collections au niveau racine de votre base de données pour organiser des ensembles de données disparates.

  • Avantages: collections de niveau racine sont bonnes pour beaucoup à de nombreuses relations et de fournir l' interrogation puissante au sein de chaque collection.
  • Limitations: Obtenir des données qui est naturellement hiérarchique pourrait devenir de plus en plus complexe que votre base de données augmente.
  • Quel est un cas d'utilisation possible ? Dans la même application de chat, par exemple, vous pouvez créer une collection pour les utilisateurs et une autre pour les salons et les messages.
  • utilisateurs
    • alovelace
      premier : "Ada"
      dernier : "Lovelace"
      né : 1815
    • sride
      premier : "Sally"
      dernier tour"
      né : 1951
  • chambres
    • logiciels
      • messages
        • message1
          de : "alovelace"
          teneur : "..."
        • message2
          de : "sride"
          teneur : "..."