![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
hive
mengxb12138
这个作者很懒,什么都没留下…
展开
-
hive优化(一)
要点:优化时,把 hive sql 当做 map reduce 程序来读,会有意想不到的惊喜。 理解 hadoop 的核心能力,是 hive 优化的根本。 长期观察 hadoop 处理数据的过程,有几个显著的特征:1.不怕数据多,就怕数据倾斜。 2.对 jobs 数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联 多次汇总,产生十几个 jobs,没半小时是跑不完的。map re原创 2017-06-12 20:42:08 · 302 阅读 · 0 评论 -
hive优化(二)
问题 6:使用 map join 解决数据倾斜的常景下小表关联大表的问题,但如果小表很大, 怎么解决。这个使用的频率非常高,但如果小表很大,大到 map join 会出现 bug 或异常, 这时就需要特别的处理。以下例子:Select * from log a Left outer join members b On a.memberid = b.memberid. Members 有 600w原创 2017-06-13 09:24:28 · 301 阅读 · 0 评论 -
hive优化(三)
一. join 优化Join 查找操作的基本原则: 应该将条目少的表/子查询放在 Join 操作符的左边。原因 是在 Join 操作的 Reduce 阶段,位于 Join 操作符左边的表的内容会被加载进内存,将 条目少的表放在左边,可以有效减少发生内存溢出错误的几率。 Join 查找操作中如果存在多个 join,且所有参与 join 的表中其参与 join 的 key 都相 同,则会将所有的 joi原创 2017-06-13 09:29:37 · 278 阅读 · 0 评论