我的群集中有大约25M文档。我需要一次读取1M文档而没有任何特定标准。我无法访问密钥。所以我需要创建一个视图,它将发出文件,直到我到达一个高达1M的计数器。
我编写了一个Map函数,其中我试图创建一个静态变量,但JS不支持静态变量。我不知道该怎么做这个操作。我写的map函数只是返回1000个文档而且充满了错误。有人可以帮我这个功能吗?
function (doc, meta) {
value = foo();
if(value < 1000)
{
emit(meta.id, null);
}else{
return;
}
}
function incrementor(){
if(typeof incrementor.counter == 'undefined'){
incrementor.counter = 0;
}
return ++incrementor.counter;
}
答案 0 :(得分:1)
使用分页阅读带有视图的文档子集可以使用分页来完成:http://blog.couchbase.com/pagination-couchbase 对存储在存储桶中的每个突变调用Map函数,因此像这样的计数器方法没有意义。如果要拆分索引,则需要根据文档的内容执行此操作。但你应该真的使用分页。顺便说一下,这也可以用N1Ql来实现。