计算mapreduce框架中每个作者的热门词汇

计算mapreduce框架中每个作者的热门词汇,mapreduce,word-count,Mapreduce,Word Count,我有一个文件集,每个文件都包含作者的名字和他使用的单词。现在我正试图编写一个map reduce代码来计算每个作者的前N个单词。棘手的是文件可能包含多个作者。 那么我应该如何设计我的map-reduce框架呢? 伪代码加上一点解释就足够了。感谢在一个MR作业中,通过创建一个复杂的author+单词和值计数键来计算每个作者使用的单词 第二个MR任务将读取这些对(author+word,count)并将它们映射到(author+count,word+count)。编写一个比较器,首先按作者对这些键进

我有一个文件集,每个文件都包含作者的名字和他使用的单词。现在我正试图编写一个map reduce代码来计算每个作者的前N个单词。棘手的是文件可能包含多个作者。 那么我应该如何设计我的map-reduce框架呢?
伪代码加上一点解释就足够了。感谢

在一个MR作业中,通过创建一个复杂的author+单词和值计数键来计算每个作者使用的单词

第二个MR任务将读取这些对(author+word,count)并将它们映射到(author+count,word+count)。编写一个比较器,首先按作者对这些键进行排序,然后按计数(从大到小)排序,并编写一个分组程序,将具有相同作者的两个键视为在同一个reduce组中,而不考虑它们的计数。您可能需要一个分区器来确保一个作者的所有对都指向同一个分区。然后,将为每个作者调用一次reducer,值(word+count)将首先由具有最大计数的iterable提供。在减缩器中,只需写作者、单词和计数,从Iterable的前N个记录开始