Hadoop mapreduce编程

MRK*_*MRK 3 hadoop

如何使用Hadoop mapreduce编程获取排序的o/p.

有没有办法按排序顺序获得最终的键值对.(按键或值).

任何关于此的指针都非常感激.

谢谢你

aze*_*pdx 6

默认情况下,MapReduce将按键对输入记录进行排序.

但是,它可能会帮助您更多地下载最新的Hadoop版本并查看它们的示例.还有不同的排序示例.

如果您需要有关排序顺序的更多信息,可以通过以下方式进行更改.

键的排序顺序由RawComparator控制,如下所示:

  1. 如果设置了属性mapred.output.key.comparator.class,则使用该类的实例.(JobConf上的setOutputKeyComparatorClass()方法是设置此属性的便捷方法.)

  2. 否则,键必须是WritableComparable的子类,并使用键类的已注册比较器.

  3. 如果没有已注册的比较器,则使用RawComparator,将要比较的字节流反序列化为对象,并委托给WritableCompar的compareTo()方法.这些规则强调了为您自己的自定义Writable类注册优化版本的RawCompara tors的重要性,以及通过设置自己的比较器来直接覆盖排序顺序.