Wybierz strukturę danych

Pamiętaj, że podczas organizowania danych w sekcji Cloud Firestore masz do wyboru kilka opcji:

  • Dokumenty
  • Wiele kolekcji
  • Podkolekcji w dokumentach

Zastanów się nad zaletami każdej opcji w związku z Twoim przypadkiem użycia. W tym przewodniku znajdziesz kilka przykładowych struktur danych hierarchicznych.

Zagnieżdżone dane w dokumentach

W dokumentach możesz zagnieżdżać złożone obiekty, takie jak tablice czy mapy.

  • Zalety: jeśli masz proste, stałe listy danych, które chcesz zachować w dokumentach, możesz łatwo skonfigurować tę opcję i uprościć strukturę danych.
  • Ograniczenia: ta metoda nie jest tak elastyczna jak inne opcje, zwłaszcza jeśli z czasem przybywa Ci danych. W przypadku większych lub stale rosnących list dokument również się powiększa, co może spowodować wydłużenie czasu pobierania dokumentu.
  • Jaki jest możliwy przypadek użycia? W aplikacji do czatu możesz na przykład przechowywać 3 ostatnio odwiedzone pokoje czatu użytkownika jako listę zagnieżdżoną na jego profilu.
  • alovelace
    •     name :
            first : "Ada"
            last : "Lovelace"
          born : 1815
          rooms :
            0 : "Software Chat"
            1 : "Famous Figures"
            2 : "Famous SWEs"

Podkolekcji

Jeśli masz dane, które mogą się zmieniać w czasie, możesz tworzyć kolekcje w dokumentach.

  • Zalety: wraz ze zwiększaniem się liczby list rozmiar dokumentu nadrzędnego się nie zmienia. Masz też pełne możliwości wykonywania zapytań dotyczących podzbiorów oraz możesz wysyłać zapytania dotyczące grupy zbiorów w podzbiorach.
  • Ograniczenia: nie możesz łatwo usuwać podkolekcji.
  • Jaki jest możliwy przypadek użycia? W tej samej aplikacji do czatu możesz na przykład tworzyć kolekcje użytkowników lub wiadomości w dokumentach czatu.
  • nauka
    • software
        name : "software chat"
      • użytkowników
        • alovelace
              first : "Ada"
              last : "Lovelace"
        • sride
              first : "Sally"
              last : "Ride"`


    • astrofizyka

Kolekcje na poziomie katalogu źródeł

Aby uporządkować różne zbiory danych, twórz kolekcje na poziomie katalogu głównego bazy danych.

  • Zalety: kolekcje na poziomie katalogu głównego są przydatne w przypadku relacji „wiele do wielu” i umożliwiają tworzenie zapytań w ramach każdej kolekcji.
  • Ograniczenia: wraz z rozwojem bazy danych uzyskiwanie danych o hierarchii może stać się coraz bardziej skomplikowane.
  • Jaki jest możliwy przypadek użycia? W tej samej aplikacji do czatu możesz na przykład utworzyć jedną kolekcję dla użytkowników, a drugą dla pokoi i wiadomości.
  • użytkowników
    • alovelace
          first : "Ada"
          last : "Lovelace"
          born : 1815
    • sride
          first : "Sally"
          last : "Ride"
          born : 1951
  •  sal
    • oprogramowania
      • wiadomości
        • message1
              from : "alovelace"
              content : "..."
        • message2
              from : "sride"
              content : "..."