Wybierz strukturę danych

Pamiętaj, że podczas porządkowania danych w Cloud Firestore masz kilka różnych opcji:

  • Dokumenty
  • Wiele kolekcji
  • Podzbiory w dokumentach

Rozważ zalety każdej opcji, ponieważ odnoszą się one do twojego przypadku użycia. W tym przewodniku przedstawiono kilka przykładowych struktur danych hierarchicznych.

Zagnieżdżone dane w dokumentach

W dokumentach można 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 swoich dokumentach, jest to łatwe do skonfigurowania i usprawnienia struktury danych.
  • Ograniczenia: nie jest to tak skalowalne, jak inne opcje, zwłaszcza jeśli Twoje dane z czasem się rozrastają. W przypadku większych lub rosnących list dokument również się powiększa, co może prowadzić do wolniejszego czasu pobierania dokumentów.
  • Jaki jest możliwy przypadek użycia? Na przykład w aplikacji czatu możesz przechowywać 3 ostatnio odwiedzane pokoje rozmów użytkownika jako zagnieżdżoną listę w jego profilu.
  • ukochana
    • Nazwa :
      pierwszy : "Ada"
      ostatni : "Lovelace"
      urodzony: 1815
      pokoje :
      0 : „Czat programowy”
      1 : „Słynne postacie”
      2 : „Słynne SWE”

Podkolekcje

Możesz tworzyć kolekcje w dokumentach, gdy masz dane, które z czasem mogą się powiększać.

  • Zalety: Wraz ze wzrostem listy rozmiar dokumentu nadrzędnego się nie zmienia. Otrzymujesz również pełne możliwości zapytań w kolekcjach podrzędnych i możesz wysyłać zapytania grup kolekcji w kolekcjach podrzędnych.
  • Ograniczenia: Nie można łatwo usunąć podkolekcji.
  • Jaki jest możliwy przypadek użycia? Na przykład w tej samej aplikacji czatu możesz tworzyć kolekcje użytkowników lub wiadomości w dokumentach pokoju rozmów.
  • nauka
    • oprogramowanie
      nazwa : "czat programowy"
      • użytkownicy
        • ukochana
          pierwszy : "Ada"
          ostatni : "Lovelace"
        • przejażdżka
          pierwszy : "Sally"
          ostatni : „Jazda”`


    • astrofizyki
      • ...

Kolekcje na poziomie głównym

Twórz kolekcje na poziomie głównym bazy danych, aby organizować różne zestawy danych.

  • Zalety: Kolekcje na poziomie głównym są dobre w przypadku relacji wiele-do-wielu i zapewniają zaawansowane zapytania w ramach każdej kolekcji.
  • Ograniczenia: Pobieranie danych, które są naturalnie hierarchiczne, może stać się coraz bardziej złożone w miarę wzrostu bazy danych.
  • Jaki jest możliwy przypadek użycia? Na przykład w tej samej aplikacji czatu możesz utworzyć jedną kolekcję dla użytkowników, a drugą dla pokojów i wiadomości.
  • użytkownicy
    • ukochana
      pierwszy : "Ada"
      ostatni : "Lovelace"
      urodzony: 1815
    • przejażdżka
      pierwszy : "Sally"
      Ostatnia przejażdżka"
      urodzony: 1951
  • pokoje
    • oprogramowanie
      • wiadomości
        • wiadomość
          od : "alovelace"
          zawartość : "..."
        • wiadomość
          od : "przejazd"
          zawartość : "..."