MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB Schema Design — wiele małych dokumentów czy mniej dużych dokumentów?

Na pewno będziesz musiał zoptymalizować zapytania, które wykonujesz.

Oto moje najlepsze przypuszczenie na podstawie Twojego opisu.

Prawdopodobnie będziesz chciał znać wszystkie karty kredytowe dla każdego klienta, więc zachowaj ich tablicę w obiekcie klienta. Prawdopodobnie będziesz także chciał mieć referencje klienta dla każdej płatności. Dzięki temu dokument płatności będzie stosunkowo niewielki.

Obiekt Payment automatycznie będzie miał swój własny identyfikator i indeks. Prawdopodobnie będziesz chciał również dodać indeks do referencji klienta.

Umożliwi to szybkie wyszukiwanie Płatności według Klienta bez za każdym razem przechowywania całego obiektu klienta.

Jeśli chcesz odpowiedzieć na pytania typu „Jaka była średnia kwota zapłacona przez wszystkich klientów w zeszłym miesiącu” zamiast tego będziesz potrzebować mapy / redukcji dla dowolnego dużego zestawu danych. Nie otrzymujesz tej odpowiedzi „w czasie rzeczywistym”. Przekonasz się, że przechowywanie „odniesienia” do Klienta jest prawdopodobnie wystarczające dla tych redukcji map.

Odpowiadając bezpośrednio na Twoje pytanie:Czy MongoDB zaprojektowano tak, aby preferować wiele, wiele małych dokumentów czy mniej dużych dokumentów?

MongoDB jest przeznaczony do bardzo szybkiego wyszukiwania indeksowanych wpisów. MongoDB jest bardzo dobry w znajdowaniu kilku igły w dużym stogu siana. MongoDB nie bardzo dobry w znajdowaniu większości igieł w stogu siana. Dlatego buduj swoje dane wokół najczęstszych przypadków użycia i pisz zadania map/redukuj dla rzadszych przypadków użycia.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Aktualizacja słownika w Mongodb

  2. Sprawdzanie połączenia z MongoDB

  3. Wydajność MongoDB:uruchamianie agregacji MongoDB na serwerach pomocniczych

  4. Wyrażenie regularne dla MongoDB ObjectID

  5. Wyszukiwanie MongoDB, gdy obce pole jest tablicą obiektów