在Hadoop Map Reduce框架中,数据作为键/值对传递给映射器的意义何在?我知道键/值对在传递给reducer时具有重要意义,因为它们可以满足来自映射器的数据分区。属于同一个键的值将作为从映射器到reducer阶段的列表。但是在映射器阶段之前如何使用键?属于同一个键的值会发生什么变化?如果我们没有定义自定义输入格式,我假设Hadoop将输入文件中的记录号作为键,将文本行作为mapper函数中的值。但是,如果我们决定实现自定义输入格式,则可以自定义选择键,并且可能存在与相同键对应的值。
如何在映射器阶段处理现象?映射器是否忽略重复记录并将它们视为单独的记录,还是仅为每个键选择一个记录?
答案 0 :(得分:5)
输入拆分是由a处理的输入的一部分
单一地图。每个地图处理一次拆分。每个拆分分为记录和
地图依次处理每个记录 - 一个键值对。
因此mapper将具有相同键的记录视为单独的记录。