Hadoop Reducer的最终结果是什么?
当项基于键映射到减缩器时,单个减缩器是否接收到包含单个键的列表,或者减缩器是否包含散列到该减缩器的所有键 例如: 我有7个我正在映射的唯一ID 当我编写reduce方法时,我是否可以假设当我循环遍历列表中的所有元素时,我只有一个唯一的id?或者我可以在一个reducer中有多个id吗?每次调用Hadoop Reducer的最终结果是什么?,hadoop,mapreduce,Hadoop,Mapreduce,当项基于键映射到减缩器时,单个减缩器是否接收到包含单个键的列表,或者减缩器是否包含散列到该减缩器的所有键 例如: 我有7个我正在映射的唯一ID 当我编写reduce方法时,我是否可以假设当我循环遍历列表中的所有元素时,我只有一个唯一的id?或者我可以在一个reducer中有多个id吗?每次调用reduce()都将有一个键和一个或多个值。这从Map.reduce()方法的签名中可以明显看出:reduce(KEYIN键、Iterable值、上下文上下文) 一些例子: 如果映射程序使用相同的键和10
reduce()
都将有一个键和一个或多个值。这从Map.reduce()方法的签名中可以明显看出:reduce(KEYIN键、Iterable值、上下文上下文)
一些例子:
- 如果映射程序使用相同的键和10个不同的值调用
10次,reduce()方法将被调用一次,而Context.write()
迭代器将提供10个不同的值values
- 如果映射程序使用10个不同的键调用
10次,Context.write()
将被调用10次,每次使用不同的键reduce()