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

Dane referencyjne NoSql

Twoje dane są wyraźnie relacyjne:artykuł ma autora. Możesz modelować swoje dane w sklepie NOSQL, takim jak MongoDB, w taki sam sposób, jak w sklepie relacyjnym, ALE ponieważ w bazie danych nie ma złączeń, musisz wykonać dwa wywołania do bazy danych, więc nic nie zyskałeś.

ALE ... to, co MOŻESZ zrobić ze sklepem NOSQL, to nieco zdenormalizować dane, aby uzyskać lepszą wydajność (pojedyncza podróż w obie strony, aby uzyskać wszystko, czego potrzebujesz do wyświetlenia artykułu) ALE kosztem natychmiastowej spójności:wymiana zawsze dokładnego autora nazwiska dla ostatecznie dokładnych nazwisk autorów.

Możesz na przykład użyć tego w swoim artykule:

author: {firstName: "Smarty", lastName: "Pants", _id:DE342624EF }

Teraz możesz wyświetlić artykuł bardzo szybko, a gdy ktoś zmieni swoją nazwę, możesz albo uruchomić zadanie w tle, aby zaktualizować wszystkie istniejące artykuły, albo poczekać na okresowe przeglądy spójności, aby to naprawić.

Wiele głównych witryn internetowych nie zapewnia już natychmiastowej spójności. Wprowadzasz zmiany, które są ostatecznie widoczne tylko dla innych użytkowników witryny.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nie można połączyć Mongodb z kontenerem Springboot w dockerze

  2. Node mongodb:Błąd:połączenie zamknięte z powodu parseError

  3. Partycjonowanie rekordów w kolekcji w MongoDB

  4. REACT żądanie pobrania posta

  5. Czy muszę wyraźnie zamknąć połączenie?