"상태"필드가 "녹색", "빨간색", "황색"인 문서가 있습니다.지도 및 축소를 사용하여 그룹화
MapReduce를 사용하여 각각의 상태에 하나씩 3 개의 키가 포함 된 그룹화 된 응답을 생성 할 수 있습니다. 각각의 키에는 해당 키가있는 모든 문서의 배열을 포함하는 값이 포함되어 있습니다. 그러나, 나는 re (reduce) 함수를 사용하는 방법에 고심하고있다.
지도 기능 :
function(doc) {
emit(doc.status, doc);
}
기능 감소 : ???
+1. CouchDB는 뚱뚱한 목록이 아닌 키가 큰 목록을 좋아합니다. '? reduce = false & key = "Green"'를 쿼리하면 이미 "그린"문서 배열을 가지고 있습니다. 그러면 문서 배열 (무시할 수있는 다른 데이터 또는 _list 함수로 제거 할 수있는 데이터)이 제공됩니다. – JasonSmith
? include_docs = true는 Couch가 디스크에서 뷰 행을 읽는 시간과 디스크에서 문서를 읽는 데 다시 돌아갈 시간 사이에 문서가 변경 될 수있는 경쟁 조건을 도입합니다. 의사는 짧은 시간에 변경 될 수 있습니다. 그러나 대다수의 애플리케이션에는 걱정할만한 것들이 많이 있다고 생각합니다. – JasonSmith