sql >> Databáze >  >> NoSQL >> MongoDB

Jak změnit strukturu výsledků MongoDB map-reduce?

MapReduce vrací pouze dokumenty ve tvaru {_id:some_id, value:some_value}

"nějaká_hodnota" nemusí být nutně vložený dokument, ale ve většině případů umožňuje vypočítat více proměnných pomocí funkce Map Reduce. Dokumenty vrácené funkcí Reduce musí být ve stejném tvaru, v jakém jsou zadány, protože funkci Reduce lze spouštět opakovaně pro jakoukoli danou hodnotu _id.

Podrobné informace o tom, jak Map Reduce funguje, naleznete v části „Doplňky“ receptu kuchařky MongoDB s názvem „Hledání maximálních a minimálních hodnot pomocí verzovaných dokumentů“ http://cookbook.mongodb.org/patterns/finding_max_and_min/ To by mělo poskytnout lepší pochopení toho, jak Map Reduce funguje a proč musí být výstup ve formátu {_id:some_id, value:some_value}

Je možné provést inkrementální Map Reduce, které sloučí výsledky více funkcí Map Reduce.http://www.mongodb.org/display/DOCS/MapReduce#MapReduce-IncrementalMapreduce

A konečně, v současné době není možné pomocí Map Reduce přistupovat k více sbírkám najednou. Existuje požadavek na funkci pro tuto funkci, ale není naplánováno její přidání do žádné nadcházející verze.
https://jira.mongodb.org/browse/SERVER-970



  1. Laravel - Vymaže všechny klíče cache / redis, které obsahují konkrétní řetězec

  2. Komunikace mezi aplikací a webovou stránkou v reálném čase

  3. Serializujte jednu třídu dvěma různými způsoby s Jacksonem

  4. Znovu prozkoumat agregovaný návrat 5 nejlepších z každé skupiny