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

Изместване на множество записи с MongoDb

Това - правилно - няма да вмъкне никакви записи с event_id 1 или 2, ако те вече не съществуват

db.foo.update({event_id: { $in: [1,2]}}, {$inc: {visit:1}}, true, true)

Това е така, защото objNew част от заявката (вижте http://www.mongodb.org/display /DOCS/Updating#Updating-UpsertswithModifiers ) няма стойност за поле event_id . В резултат на това ще имате нужда от поне X+1 пътувания до базата данни, където X е броят на event_ids, за да сте сигурни, че вмъквате запис, ако такъв не съществува за определен event_id (+1 идва от заявката по-горе , което увеличава брояча на посещенията за съществуващи записи). За да го кажем по различен начин, как MongoDB знае, че искате да използвате стойност 2 за event_id, а не 1? А защо не 6?

W.r.t. пакетно вмъкване с ruby, мисля, че е възможно, както подсказва следната връзка - въпреки че съм използвал само Java драйвера:Пакетно вмъкване/актуализация с помощта на Mongoid?



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. как мога да се свържа с отдалечен монго сървър от терминал на Mac OS

  2. pymongo + gevent:хвърли ми банан и просто monkey_patch?

  3. MongoDB - Индекс на пълен текст - Търсене на пълен текст - корен

  4. mongodb:конвертиране на идентификатори на обекти в BSON::ObjectId

  5. Защо Spring Data MongoDB не може да инстанцира тази структура от вложен тип?