Hive | 优化

作者: icebreakeros | 来源:发表于2019-07-05 06:32 被阅读0次

优化

  • 列裁剪(Column Pruning
    读取数据时,只读取需要用到的列,而忽略其他列。例如:SELECT a,b FROM t WHERE e<10;
  • 分区裁剪(Partition Pruning
    在查询过程中减少不必要的分区。例如:SELECT * FROM (SELECT c1, COUNT(1) FROM T GROUP BY c1) subq WHERE subq.prtn=100;
    要实现分区裁剪,须设置hive.optimize.pruner=true
  • Join操作
    进行JOIN操作时,应将记录少的表/子查询放在Join操作符的左边。
    对于一条语句中有多个Join的情况,如果Join的条件相同,不管有多少个表,都会合并成为一个MapReduce
  • Map Join操作
    Map Join操作无须reduce操作就可以在map阶段全部完成,前提是在map过程中可以访问到全部需要的数据。例如:INSERT OVERWRITE TABLE pv_users SELECT pv.pageid,u.age FROM user u ON (pv.userid=u.userid);
  • Group By操作
    Map端部分聚合。很多聚合操作都可以先在map端进行部分聚合,然后在reduce端得出最终结果。相关参数:hive.map.aggr=true,hive.groupby.mapaggr.checkinterval=100000
    有数据倾斜(数据分布不均匀)时进行负载均衡。相关参数:hive.groupby.skewindata=true(默认为false
  • 合并小文件
    相关的参数:hive.merge.mapfiles=true,hive.merge.mapredfiles=true(默认false),hive.merge.size.per.task=256000000

相关文章

  • 数仓--Hive-面试之Hive优化策略

    Hive的优化策略大致分为:配置优化(hive-site.xml和hive-cli执行前配置)、表优化、hive数...

  • Hive优化

    Hive简单优化与定期ETL Hive优化 Hive的执行依赖于底层的MapReduce作业,因此对Hadoop作...

  • Hive优化

    Hive优化 今天的主要内容——Hive优化 Fetch抓取Hive 中对某些情况的查询可以不必使用 MapRed...

  • Hive优化

    Hive数据倾斜优化总结 Hive数据倾斜优化分为配置优化和SQL优化 优先原则: 数据不怕多,避免倾斜。 减少J...

  • Hive 企业使用优化一

    Hive优化之一fetch task。 优化场景, 1、当在hive中执行select * from emp全部查...

  • Hive优化实践1-数据倾斜及join无关的优化

    Hive SQL的各种优化方法基本 都和数据倾斜密切相关。 Hive的优化分为join相关的优化和join无关的优...

  • Hive的性能优化以及数据倾斜

    hive性能优化 一、Map阶段的优化: (控制hive任务中的map数,确定合适的map数,以及每个map处理合...

  • Hive优化

    Hive HQL优化 Hive优化目标在有限的资源下,执行效率更高 常见问题数据倾斜map数设置reduce数设置...

  • 坑合集

    Flume flume细节 Hive 数据倾斜Hive优化 Hive分区表新增字段为null的bug及解决方法 S...

  • 大数据开发之Hive优化篇8-Hive Job优化

    备注:Hive 版本 2.1.1 Hive job优化概述 实际开发过程中,经常会遇到hive sql运行比较慢的...

网友评论

    本文标题:Hive | 优化

    本文链接:https://www.haomeiwen.com/subject/kevjhctx.html