map中键/值数据的重要特征
1.键必须是唯一的,而值并不一定是唯一的
2.每个值必须与键相关联,但键可能没有值(虽然在这个特定的例子中,没有出现这种情况)
3.对键值进行明确定义非常重要。它决定了计数是否分区大小写,这将产生不同的结果
MapReduce的系列键/值变换
{k1,v1} -> {k2,List<v2>} -> {k3,v3}
1.MapReduce作业的map方法的输入是一系列键值对,称之为K1和v1
2.map方法的输出(今后作为reduce方法的输入)是一系列键以及与之关联的值列表,称之为k2和v2。需要注意的是,每个mapper仅仅输出一些列单个的键值对,他们通过shuffle方法组合成键与值列表。
3.MapReduce作业的最终输出是另一串键值对,称之为k3和v3