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

Как да актуализирам полета на документи в mongo db с помощта на java драйвера?

Чудя се дали драйверът е достатъчно умен, за да актуализира само най-малката част от промените или просто сляпо актуализира цялото нещо?

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

Това, което можете да направите, е да използвате функциите "атомен модификатор на актуализиране". Документацията на Java е малко по-лека за тях, но тъй като драйверът просто предава JSON, нещата от не-Java уроци трябва да работят, например:

shapes.update((DBObject)JSON.parse(    "{ 'foo' : 'bar'}"),  
    (DBObject) JSON.parse(          "{ '$set' : { 'foo': 'bat'}}")   );


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $ltrim

  2. Mongodb Aggregation Framework | Групиране върху множество стойности?

  3. Как мога да споделям колекции на MongoDB между приложения на Meteor?

  4. промяна на типа mongodb в масив

  5. Как да намерите подниз в поле в Mongodb