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

MongoDB:Какъв е смисълът да се използва MapReduce без паралелизъм?

Основната причина да използвате MapReduce вместо по-прости или по-традиционни заявки е, че той просто може да прави неща (т.е. агрегиране), които обикновените заявки не могат.

След като имате нужда от агрегиране, има две опции за използване на MongoDB:MapReduce и командата group. Командата group е аналогична на SQL "group by" и е ограничена, тъй като трябва да върне всичките си резултати в единичен отговор на базата данни. Това означава, че групата може да се използва само когато имате по-малко от 4MB резултати. MapReduce, от друга страна, може да прави всичко, което "групиране по" може, но извежда резултатите в нова колекция, така че резултатите да бъдат толкова големи, колкото е необходимо.

Освен това паралелизмът идва, така че е добре да имате малко практика :)



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

  2. Mongodb:извикване на db.printShardingStatus() / sh.status() в Java (и JavaScript)

  3. Защо Spark Mongo конекторът не натиска надолу филтрите?

  4. C# - Генериране на самоличност като Id с NoSQL (MongoDB)?

  5. Как да използвам fetchNewObject с update.one ReactiveMongo?