这是一个非常基本的问题Hadoop
:
假设我有 3mappers
和 2 reducers
。映射器产生以下输出:
映射器 1 输出:{1 -> "a1", 2 -> "b1"}, 映射器 2 输出:{2 -> "b2", 3 -> "c2"}, 映射器 3 输出:{1 -> "a3", 3 -> "c3"}
现在,据我了解,框架将输出分成 2 部分(每个部分reducer
)。框架是否在分区之前对所有输出进行排序?是否有可能获得以下输入?reducers
减速器 1 输入:{1 -> "a1", 2 -> "b1", "b2"} 减速器 2 输入:{1 -> "a3", 3 -> "c2", "c3"}