sql >> Database >  >> NoSQL >> MongoDB

Hoe de structuur van MongoDB's kaartverminderende resultaten veranderen?

MapReduce retourneert alleen documenten met de vorm {_id:some_id, value:some_value}

"some_value" hoeft niet per se een ingesloten document te zijn, maar in de meeste gevallen is het om meerdere variabelen te laten berekenen door de functie Map Reduce. De documenten die door de functie Reduce worden geretourneerd, moeten dezelfde vorm hebben als waarin ze zijn ingevoerd, omdat de functie Reduce herhaaldelijk kan worden uitgevoerd voor elke gegeven _id-waarde.

Voor een stapsgewijze beschrijving van hoe Map Reduce werkt, raadpleegt u het gedeelte "Extra's" van het MongoDB Cookbook-recept met de titel "Maximum- en minimumwaarden vinden met versiedocumenten" http://cookbook.mongodb.org/patterns/finding_max_and_min/ Dit zou een beter begrip moeten geven van hoe Map Reduce werkt en waarom de uitvoer de indeling {_id:some_id, value:some_value}

moet hebben.

Het is mogelijk om een ​​incrementele Map Reduce uit te voeren, waarbij de resultaten van meerdere Map Reduce-functies worden samengevoegd.http://www.mongodb.org/display/DOCS/MapReduce#MapReduce-IncrementalMapreduce

Ten slotte is het momenteel niet mogelijk om meerdere collecties tegelijk te openen met Map Reduce. Er is een functieverzoek voor deze mogelijkheid, maar het is niet gepland om deze aan toekomstige versies toe te voegen.
https://jira.mongodb.org/browse/SERVER-970



  1. DbRef met Mongoose - mangoest-dbref of bevolken?

  2. Kaart-Reduce-prestaties in MongoDb 2.2, 2.4 en 2.6

  3. Is het Mongodb Aggregation-framework sneller dan kaart/verkleinen?

  4. MongoDB opvragen om overeen te komen in het eerste item in een array