MapReduce在reduce阶段需要分组,将key相同的放在一起进行规约,为了达到该目的,有两种算法:hashmap和sort
hashmap算法太耗内存,而sort通过外排可对任意数据量分组,只要磁盘够大就行。map端排序是为了减轻reduce端排序的压力。
注:在spark中,除了sort的方法,也提供hashmap,用户可配置,毕竟sort开销太大了。
MapReduce为什么要排序
于 2022-03-26 10:46:16 首次发布
MapReduce在reduce阶段需要分组,将key相同的放在一起进行规约,为了达到该目的,有两种算法:hashmap和sort
hashmap算法太耗内存,而sort通过外排可对任意数据量分组,只要磁盘够大就行。map端排序是为了减轻reduce端排序的压力。
注:在spark中,除了sort的方法,也提供hashmap,用户可配置,毕竟sort开销太大了。