mapreduce代码

brjng4g3  于 2021-06-04  发布在  Hadoop
关注(0)|答案(1)|浏览(356)

我试图用hadoopmapreduce找到矩阵的x转置。输入文件为csv格式,带有 row_id, col_id, value . 行id和列id不必采用排序格式。问题是使用mapper发射什么。我不想存储整个矩阵。我用的是 MapWritable 发出窗体的输出
context.emit(列id,mapw)
其中mapw是map(row\u id,value),因为矩阵是使用列aij*bjk乘以的
我可以在一个可Map的可写文件中输出两个以上的值吗?我不知道怎么做?如果我有两个以上的值,那么我可以同时发出矩阵和它的转置,并且有一个字段来标识它是矩阵还是转置(比如mapw(m,i,val))
如果我不能做到这一点,有没有其他方法不存储矩阵,让矩阵和它的转置在一列j的所有值的归约器中。??

mcvgt66p

mcvgt66p1#

为什么不发出一个(列id,文本)。文本格式为m/m'+分隔符+行\ id+分隔符+值。

相关问题