您的位置:首页 > 大数据

《数据算法-Hadoop/Spark大数据处理技巧》读书笔记(三)——Order Inverse

2018-01-30 14:36 239 查看
这章的名称叫反转排序,应该说让人非常的迷惑。

这里我觉得一篇Blog对Order Inverse的解释更合理一些(http://blog.csdn.net/hadoop_mapreduce/article/details/39802287),根据这篇文章实际上Order Inverse的实质是由开发者控制框架Partition的规则,来保证框架在Shuffle的时候能够按照期望将会被一起处理的数据Shuffle到同一个节点上。

实现方法,继承Partitioner类,重写getPartition()通过job的setPartitionerClass()方法替换默认的Partitioner。

书里给的相对词频计算在MapReduce的模式下必须使用Order Inverse这种方法,因为需要有做除法运算,所以要保证Key相同的数据要分到一个节点上计算,否则会出现错误。

但是Spark就没有这个问题,不需要通过自定义Partitioner,来达到这种计算效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Mapreduce
相关文章推荐