摘要: Partitioner: Partitioner的作用是决定Map Task产生的数据记录交给哪个Reduce Task处理。默认实现是:(key)mod R,其中R是Reduce Task个数。一般情况下,当需要按照key的一部分(不是全部,比如key的前三个字节)进行partition,或者按照 阅读全文
posted @ 2019-03-01 11:52 Vowzhou 阅读(135) 评论(0) 推荐(0)
摘要: 解决方案二1. 增加reduce 的jvm内存2. 增加reduce 个数3. customer partition4. 其他优化的讨论.5. reduce sort merge排序算法的讨论6. 正在实现中的hive skewed join.7. pipeline8. distinct9. ind 阅读全文
posted @ 2019-03-01 11:52 Vowzhou 阅读(3407) 评论(0) 推荐(0)
摘要: combiner是发生在map的最后一个阶段,其原理也是一个小型的reducer,主要作用是减少输出到reduce的个数,减少reducer的输入,提高reducer的执行效率。注意:mapper的输出为combiner的输入,reducer的输入为combiner的输出。 求平均值的时候不用 聚合 阅读全文
posted @ 2019-03-01 09:43 Vowzhou 阅读(241) 评论(0) 推荐(0)
摘要: MapReduce map100% Reduce 66% 卡死 如果你碰到map100%,reduce 66% 然后程序就貌似停止在这里了,可能是由于在Reduce类里使用了String造成的 根据一位外国友人的说明,在reduce阶段 ,0-33%阶段是 shuffle 阶段,就是根据键值 来讲本 阅读全文
posted @ 2019-03-01 09:35 Vowzhou 阅读(308) 评论(0) 推荐(0)