要查询沙发数据库数据库,您可以以
的方式发送http GET请求主机:5984 /分贝/ _design / some_view / _view /厂景键= “foo” 的
要创建一个名为view1的简单视图,我可以创建地图
function(doc){
emit(doc.bar,doc);
}
这将产生一个键值对列表,其中doc.bar是键,doc是值。在这种情况下,它是db的子集,其中doc.bar =“foo”
似乎emit函数将其参数与使用URL请求传递的关键参数进行比较。
如何从URL获取密钥的值并在将其传递给emit之前对其进行检查?
答案 0 :(得分:1)
MapReduce不能像这样工作。
每个对象的每个查询都不会调用Map(和reduce)函数。为每个更新的对象调用它们(在查询时)。
这意味着,只要不更改“文档”(aka对象),就会在索引中保留发出的键和值。缓存管理是MapReduce如此高效的原因。
换句话说,不要将索引视为查询结果,而应将其视为对所有可能结果的预期。
在文本框中进一步解释MapReduce几乎是不可能的:我建议您按照教程和视频进行操作。
虽然您已了解MapReduce的基础知识,但您将学习如何使用CouchDB query the index(key
,startkey
和endkey
),以及如何{ {3}}(如果需要,可使用自定义参数)。