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

Вградени или препратени релации

Във вашия случай бих ви посъветвал да използвате референтни данни. Тъй като предполагам, че трябва да манипулирате всяка от тези колекции сама по себе си (трябва да можете да редактирате/изтривате/актуализирате „продукти“ от _id и да правите някои други сложни заявки, което е много по-лесно и ефективно, когато имате отделни колекция).

В същото време бих съхранил някои пълни вградени данни в колекцията на потребителите, само за ускоряване на показването в браузъра на посетителя. Да приемем, че имате страница на потребител, където искате да покажете профила на потребителя и топ 5 пазара и топ 20 продукта. Можете да вградите тези най-нови топ-5 и топ-20 в документа на потребителя и да актуализирате тези вградени обекти, когато има нови пазари/продукти. В този случай - когато показвате потребителска страница, трябва да направите само 1 заявка към MongoDB. Така че това работи като кеш. Ако посетителят трябва да види още продукти, той отива на следващата страница „Продукти“ и прави заявка за отделна колекция „Продукти“ в MongoDB.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да форматирате датата в MongoDB

  2. MongoDB $concat

  3. Намиране на MongoDB в колекция с неизвестен ключ

  4. Как да намеря nscanned в mongoose?

  5. MongoDB C# драйвер 2.0 InsertManyAsync срещу BulkWriteAsync