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

каква е истинската цел на $ref (DBRef) в MongoDb

По принцип DBRef е самоописващ се ObjectID, чийто помощник от страна на клиента, който съществува във всички драйвери (мисля, че всички), предоставя възможност във вашето приложение лесно да получавате свързани редове.

Те не са:

  • ПРИСЪЕДИНЯВАНЕ
  • Каскадни връзки
  • Отношения от страна на сървъра
  • Решено от страната на сървъра

Те също така не се използват в Map Reduce, функционалността беше премахната поради усложнения с шардинга.

Не винаги е чудесно да ги използвате обаче, понеже те заемат доста място, ако знаете колекцията, която е свързана с този ред, в сравнение с простото съхраняване на ObjectID. Не само това, но поради начина, по който се разрешават, всеки свързан запис трябва да се зарежда бавно един по един вместо това, ако може да формира диапазон (лесно) за заявка за свързани редове наведнъж, така че те могат да увеличат количеството заявки правите и към базата данни, като на свой ред увеличавате курсорите.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Средна заявка за агрегиране на Mongo без група

  2. изчисляване на честотата с помощта на сборна рамка на mongodb

  3. Не може да се стартира robomongo.sh с помощта на sh robomongo.sh в Ubuntu 14.04

  4. Как да създадете както клиент, така и карта с едно действие със Stripe?

  5. MongoDB Cloud Deployment - High TTFB