写mapreduce程序时,如果reduce个数>1,想要实现全排序需要控制好map的输出 现在学了Hive,写sql大家都很熟悉,如果一个order by解决了全排序还用那么麻烦写mapreduce函数吗? 事实上,hive使用order by会默认设置reduce的个数=1,既然reducer的个数都是1了,结果自然全排序! 这也违背了充分利用分布式计算进行海量数据排序的初衷,效率低下. 那么hive又提供了一个可供选择的方式:sort by 它会保证每个reducer的输出文件是有序的(其