hive使用总结

从接触hive到今天也快一年了。把工作中的用到一些经验例如以下:

1)牢记一点hive仅仅是一个基于hadoop的数据仓库工具,把sql转换成mapreduce,它的强项在于数据统计、方便灵活开发測试。对于复杂的etl逻辑建议用暂时表分阶段去处理或者编写mapreduce程序处理。

2)关注hive sql是否造成数据倾斜。 解决数据倾斜的办法。了解你的数据分布如:是否某些key是其它key的多倍。或者关联的key为空等等。

3)稳定的调度系统很重要。由于hive,tez执行的时候可能造成意外的错误,所以调度系统对已经上线的脚步自己主动重跑2,3遍就很的好。

4)perl,python脚步执行hql尽量一个脚步执行一段hql,对于意外发生的错误追数方便非常多。

5)尽量理解hql怎么转化成mapreduce的,有助于性能调优、排错等。

6)尽早的过滤数据。不单单指某条hql过滤数据。而是从总体架构中考虑怎样过滤数据。我们点击流日志每天17亿条(800G)左右的日志,选择过滤日志的方法就是,按日志类型拆分、一天一个分区、不同的业务类型拆分等相关手段。

这样按日汇总、按月汇总数据easy非常多。

posted on 2017-06-03 19:45  wgwyanfs  阅读(113)  评论(0编辑  收藏  举报

导航