Hadoop MapReduce:两个值作为Mapper Reducer中的键

Hadoop MapReduce:两个值作为Mapper Reducer中的键,hadoop,mapreduce,Hadoop,Mapreduce,如何构建包含两个组件的密钥?原因是我有一个无向图。如果A和B通过通信关联,则两个节点A和B之间存在一条边(方向无关)。此通信具有数字参数。所以我想要实现的是有一个键,它将a和B组合在一起作为一个集合,这样从a到B和B到a的通信可以被认为是等价的,并被汇总得到统计数据 说: A B 5 B A 10 然后,键在语义上应该是“A或B在一起”,因此包含A和B作为键的集合的值应该是5+10=15 wordcount示例将特定单词作为关键字。在我的例子中,我希望有一个包含两个组件的密钥集。在map和red

如何构建包含两个组件的密钥?原因是我有一个无向图。如果A和B通过通信关联,则两个节点A和B之间存在一条边(方向无关)。此通信具有数字参数。所以我想要实现的是有一个键,它将a和B组合在一起作为一个集合,这样从a到B和B到a的通信可以被认为是等价的,并被汇总得到统计数据

说:

A B 5

B A 10

然后,键在语义上应该是“A或B在一起”,因此包含A和B作为键的集合的值应该是5+10=15

wordcount示例将特定单词作为关键字。在我的例子中,我希望有一个包含两个组件的密钥集。在map和reduce阶段,我想求和,只要A到B或B到A满足


谢谢

您需要具有自己的比较规则的自定义键。 您可以通过在包含图形链接信息的类上实现WritableComparable来实现它。 以下是示例/说明:

除了David(正确)的答案之外:如果你的问题与图表有关,那么也请看一看。

谢谢,因为你们总是惊讶于自己的反应如此之快!谢谢你的参考,绝对值得一看。你知道其他可以可视化大图的工具吗?假设我有一些格式的节点和边信息。我是说类似于Gephi的工具?谢谢。