hadoop中多密钥的mapreduce等分

e37o9pze  于 2021-05-29  发布在  Hadoop
关注(0)|答案(0)|浏览(213)

目前,我正在使用默认的分区器运行一些hadoop作业,它通常为每个reducer提供相等的数据块。但是,我的reducer键包含两个字段:

1,foo
2,bar
1,baz

每个reducer根据第一个键写入不同的文件夹。
假设我有两个减速机,每个减速机得到50%的数据,并编写以下文件:

1/chunk-0     # first reducer
  chunk-1     # second reducer
2/chunk-0     # first reducer
 /chunk-1     # second reducer

但是,如果20%的第一个缩减器数据具有键1,80%具有键2,50%的第二个缩减器数据具有键1,50%具有键2,则 chunk-0 以及 chunk-1 在每个文件夹中都是不均匀的。
如何确保在最终输出中,每个文件夹中的块大小相等?似乎我需要一个分区函数,它可以做这样的事情:对于每个reducer,n%的reducer数据是key 1,m%的reducer数据是key 2。或者在hadoop之外做分区会更简单吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题