Hadoop MapReduce有条件打印名称对



所以我试图找出这个MapReduce程序问题的逻辑,我不需要代码,只需要逻辑的帮助,因为我仍然是MapReduce的新手,我不太熟悉所有可能的方法来解决问题。我试着查找类似的程序,但是没有找到。

问题:给定一个名称列表(为了简单起见,只考虑第一个字符)

输入:

A,B
D,F
P,E
A,B
A,C
B,A
E,P

我需要使用MapReduce只打印那些按字母顺序和相反顺序提到的对(按字母顺序)。

所以输出将是:

A,B
E,P

注意:E, p不是p,E,因为它必须按字母顺序排列。

有人能帮忙吗?

在Map-Reduce程序中,主要的问题是:什么是键,什么是值。Map-reduce程序在键/值规则上工作。您定义了键和值,下一步您可以定义其他键和值,依此类推。例如,在开始时,键是raw的索引(数字),值是该raw中的值。在map函数的代码中,你定义了新的键和值,然后进入reduce函数,在那里你遍历所有的键并对具有相同键的值进行一些操作。

map reduce的经典例子是单词计数程序。

在你的例子中,在你的映射函数中,你可以设置一个键a pair in alphabetical order,其值将是pair itself在reduce函数中,你遍历每个键的所有值并查找反向顺序,如果有反向顺序,则将此值写入result

后map函数输出将为:

A,B A,B 
A,B A,B
A,B B,A
A,C A,C
D,F D,F
E,P P,E
E,P E,P
减少后

:

A,B A,B
P,E P,E

相关内容

  • 没有找到相关文章

最新更新