使用mapreduce执行组操作

o4hqfura  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(373)

我试图在mapreduce中实现一个序列图算法。
在这方面,我必须进行集体行动。请访问维基百科了解什么是集体行动。
假设我有组{a1,a2,a3},{b1,b2,b3},{c1,c2,c3}。让我们用g1,g2,g2来命名这个组。根据群体行动,g1可以分裂g2或g3。g2和g3也类似。我必须确定一个组gi是否可以拆分gj,然后输出所有组的拆分。
看来我得做(np2)排列了。将各组与所有其他组进行比较
假设输入是组列表。那么,我们如何使用mapreduce进行这种基于置换的计算和拆分呢。

bogh5gae

bogh5gae1#

这不是一个典型的mapreduce场景,因为如果我理解正确的话,这里没有键/值。如果我还想使用mapreduce,我会这样做:
预处理组-创建一个集合,其中包含所有i,j的所有gi,gj对。
{一个∈p | p是群的幂集∧ |a |=2}。
现在您已经安排好了输入,使得每个map任务可以接收2个组作为其输入。
工作中的Map器将有一个方法来决定gi是否可以分割gj-如果存在则发出分割。
不需要减速器

相关问题