Wybierz strukturę danych

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

  • Dokumenty
  • Wiele kolekcji
  • Podzbiory 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 lub mapy.

  • Zalety: jeśli masz proste, stałe listy danych, które chcesz przechowywać w dokumentach, jest to łatwe w konfiguracji i upraszcza 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 prowadzić do wydłużenia czasu pobierania dokumentu.
  • Jaki jest możliwy przypadek użycia? Na przykład w aplikacji do obsługi czatu możesz zapisać 3 ostatnio odwiedzone pokoje czatu użytkownika jako zagnieżdżoną listę w 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ę zmienić w czasie, możesz tworzyć kolekcje w dokumentach.

  • Zalety: wraz ze zwiększaniem się liczby elementów na liście rozmiar dokumentu nadrzędnego się nie zmienia. Zyskasz też dostęp do wszystkich możliwości wysyłania zapytań dotyczących podkolekcji oraz wysyłania zapytań dotyczących grup kolekcji dotyczących podkolekcji.
  • 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 pokoju czatu.
  • nauka
    • software
        name : "software chat"
      • użytkowników
        • alovelace
              first : "Ada"
              last : "Lovelace"
        • sride
              first : "Sally"
              last : "Ride"`


    • – astrofizyka

Kolekcje na poziomie głównym

Aby uporządkować odmienne zbiory danych, utwórz kolekcje na poziomie głównym bazy danych.

  • Zalety: kolekcje na poziomie katalogu głównego nadają się do relacji „wiele do wielu” i umożliwiają tworzenie zapytań o dużej mocy 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
      pierwszy : „Sally”
      ostatnio: „Ride”
      ur. 1951
  •  sal
    • oprogramowania
      • wiadomości
        • message1
          from : "alovelace"
          content : "..."
        • message2
              from : "sride"
              content : "..."