그래서 내가 일반적으로 MongoDB를하고 맵리 듀스와 새로 온 사람이 "특질"우연히 감소 전화 나던 하나의 키/하나의 값을 방출 (을 얻거나, 내 마음의 특질) MongoDB를 맵리 듀스 -
내가 개체가 말{ '키': 5, '값'5}
{ '키'5 '값'4}
{ '키'같은 내 컬렉션에 : 5, '값': 1}
{ '키'4 '값'6}
{ '키'4 '값'4}
{ '키'3 '값이'0}
내 지도 기능은 단순히 키와 값을 방출
내 기능은 단순히 기능을 줄이면 그 1 (나는 이것이 확인 할 않았다 추가합니다 반환하기 전에 값 및을 추가 감소 전자
{ '_id를': 3, '값을'0}
{ '_id를'4 '값을'11.0}
을 벤은내 결과에 따라)라는
{ '_id'5 '값': 11.0}
당신이 볼 수 있듯이, 키 4 & 5 내가 11하지만 일에 대한 예상 답변을 얻을 e 키 3 (그 키를 가진 콜렉션에 하나의 엔트리 만 있음) 나는 예기치 않은 0을 얻는다!
일반적으로 mapreduce의 자연스러운 동작입니까? MongoDB를 위해서? pymongo (내가 사용하고있는)를 위해?
분명히 알 수 있듯이지도 축소가 디자인 된 방식입니다. 고유 키 (예 : 키 3)로 문서를 수정하려면 finalize 함수 사용을 고려하십시오. http://www.mongodb.org/display/DOCS/MapReduce#MapReduce-FinalizeFunction – Jenna
포함하려는 솔루션 결과에 하나의 문서가있는 키 ??? –
@RaviKhakhkhar 단일 문서가 여전히 결과에 포함되지만 감축 기능은 호출되지 않습니다. – Cilvic