MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie ändere ich die Struktur der Map-Reduce-Ergebnisse von MongoDB?

MapReduce gibt nur Dokumente der Form {_id:some_id, value:some_value}

zurück

"some_value" muss nicht unbedingt ein eingebettetes Dokument sein, aber in den meisten Fällen soll es ermöglichen, dass mehrere Variablen von der Map Reduce-Funktion berechnet werden. Die von der Reduce-Funktion zurückgegebenen Dokumente müssen in der gleichen Form vorliegen, in der sie eingegeben wurden, da die Reduce-Funktion für jeden gegebenen _id-Wert wiederholt ausgeführt werden kann.

Eine Schritt-für-Schritt-Anleitung zur Funktionsweise von Map Reduce finden Sie im Abschnitt „Extras“ des MongoDB Cookbook-Rezepts mit dem Titel „Finding Max And Min Values ​​with Versioned Documents“ http://cookbook.mongodb.org/patterns/finding_max_and_min/ Dies sollte ein besseres Verständnis dafür vermitteln, wie Map Reduce funktioniert und warum die Ausgabe das Format {_id:some_id, value:some_value}

haben muss

Es ist möglich, eine inkrementelle MapReduce durchzuführen, die die Ergebnisse mehrerer MapReduce-Funktionen zusammenführt.http://www.mongodb.org/display/DOCS/MapReduce#MapReduce-IncrementalMapreduce

Schließlich ist es derzeit nicht möglich, mit Map Reduce auf mehrere Sammlungen gleichzeitig zuzugreifen. Es gibt eine Funktionsanfrage für diese Funktion, aber es ist nicht geplant, dass sie zu zukünftigen Versionen hinzugefügt wird.
https://jira.mongodb.org/browse/SERVER-970