MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Съхраняване на йерархия на директории в хранилище на данни ключ-стойност

Методът, който използвате в момента, се нарича модел на списък на съседство.

Друг модел за съхранение на йерархични данни в (релационна) база данни е моделът на вложен набор. Внедряването му в SQL бази данни е добре известно. Вижте също тази статия за модифицирания алгоритъм за обхождане на дърво за предварителна поръчка.

Много прост метод:можете да съхранявате път за всеки обект - с тях би трябвало да е лесно да заявявате дървета в бази данни на NOSQL:

{ path: "Color", ... }
{ path: "Color.Red", ... }
{ path: "Color.Red.Apple", ... }
{ path: "Color.Red.Cherry", ... }

Когато възлите ще бъдат премахнати или преименувани, някои пътища трябва да бъдат актуализирани. Но като цяло този метод изглежда обещаващ. Просто трябва да запазите специален символ като разделител. Мястото за съхранение отгоре трябва да е незначително.

редактиране:този метод се нарича материализиран път

И накрая, ето сравнение на различни методи за йерархични данни в NOSQL бази данни.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $gte Оператор на конвейер за агрегиране

  2. Включва резервно криптиране за MySQL, MongoDB и PostgreSQL - ClusterControl 1.5.1

  3. Получаване на резултат $group с брой групи

  4. Създайте многоезичен текстов индекс в MongoDB

  5. Проверете дали всеки елемент в масива отговаря на условието