1.优化时,把hive sql当做map reduce程序来读,会有很好的效果。
2.对job数比较多的作业运行效率比较低,即使有几百行的表,如果多次关联,多次汇总,作业执行时间还是比较长的。
3.对count(distinct),效率较低。
优化可以从几个方面着手:
1.好的模型设计事半功倍
2.解决数据倾斜问题
3.减少job数量
4.设置合理的map reduce的task数,能有效提升性能(10w级的计算,用一个reduce足够)
5.不适用count(distinct)
6.对小文件进行合并,是行之有效的提高效率的方法,
7.优化时把握整体,单个作业最优不如整体最优