繁体   English   中英

如何使用 MongoDB Map-Reduce 获得相同长度的单词数?

[英]How to get number of words with same length using MongoDB Map-Reduce?

我有一个关于 MongoDB 的 MapReduce function 的问题。

我有一个集合“书籍”,其中包含以下字段:

bookNameAuthorVersionproducedcontent

我需要为集合中的每本书编写一个 MapReduce function 来计算具有相同长度(在“内容”字段中)的单词数。

例子:

(考虑到我的收藏中只有一本书:)

content: "thanks in advance for helping me"

我希望得到的结果是:

[
  {length:"2",number:2},
  {length:"3",number:1},
  {length:"6",number:1}, 
  {length:"7",number:2}
]

到目前为止我写的代码...

mapper = function(){
var text = this.contant;
if(text){text = text.split(" ");
    for(var i = 0 ; i < text.length; i++)
    {
        if(text[i].length){
            emit(text[i].length,1);
        }
    }
}



reduce = function(key, values )
{
  var count = 0;
  for(var i = 0 ; i < function(v){}.length; i++)
  {
    count+=v;
  }
    return count;
}

提前致谢!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM