更好的Hadoop MapReduce采样方式

时间:2014-06-25 19:30:33

标签: java hadoop mapreduce sampling

我想要输入数据集中20%的样本数据。

我想到了两种方法:

  1. 最初从每个映射器发出20%的数据(单个映射器发出20%的数据)。然后, 在shuffle和sort之后,reducer会找到20%的mapper数据。(Map和Reduce都适用相同的程序)

  2. 只需从mapper中发出每一行,然后从Reducer中的总数据中找到20%的样本数据。(仅处理完成为Reducer)

  3. 哪种方法更好?

1 个答案:

答案 0 :(得分:0)

我肯定会选择你的第一个选择。我不确定为什么你需要减速机。只需在地图阶段过滤20%并将其称为一天。