Hadoop对文本文件的快速全局排序实现方法及分析
一、背景 Hadoop中实现了用于全局排序的InputSampler类和TotalOrderPartitioner类,调用示例是org.apache.hadoop.examples.Sort。 但是当我们以Text文件作为输入时,结果并非按Text中的string列排序,而且输出结果是SequenceFile。 原因: 1) hadoop在处理Text文件时,key是行号LongWritable类型,InputSampler抽样的是key,TotalOrderPartitioner也是用key去查找分区。这样,抽样得到的partition文件是对行号的抽样,结果自然是根据行号来排序。
下载地址
用户评论