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

Zalecenia dotyczące struktury drzewa tagów Mongoid/MongoDB

Czy musisz zaktualizować strukturę drzewa (tj. przenieść tag do innego rodzica)? Jeśli to możliwe, podejście osadzone stałoby się trudne, a podejście relacyjne/znormalizowane ma więcej sensu.

Prawdopodobnie zapisałbym same tagi w dokumencie (osadzone), ale jeśli jest jakaś szansa, że ​​muszę przenieść węzły drzewa wokół on-line, to przechowałbym hierarchię w innym dokumencie. Zapytania nie muszą być powolne, jeśli najpierw spłaszczysz zapytanie wyszukiwania (zgodnie z bieżącym drzewem), a następnie wyszukasz te tagi. To podejście prawdopodobnie nie skaluje się zbyt dobrze, jeśli spłaszczone zapytanie wyszukiwania zawiera setki tagów (jak wysokie jest twoje drzewo?).

Jeśli tagów nie można przenieść do nowych rodziców (lub tylko przez Ciebie, podczas zaplanowanej konserwacji), kontynuuj i osadź całą hierarchię.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak tworzyć sesje w Node.js

  2. używanie $i $match w mongodb

  3. Czy MongoDB może przechowywać i manipulować ciągami znaków UTF-8 z punktami kodowymi poza podstawową płaszczyzną wielojęzyczną?

  4. Przyspiesz wyszukiwanie ciągów regularnych w MongoDB

  5. Zainicjuj dane na zadokowanym mongo