根据。方案最右侧一栏是一个8G VM的分配方案,方案预留1-2G的内存给操作系统,分配4G给Yarn/MapReduce,当然也包括了HIVE,剩余的2-3G是在需要使用HBase时预留给HBase的。

内存调优

一、AM、Container大小设置
1、tez.am.resource.memory.mb  #设置 tez AM容器内存
  默认值:  
  配置文件:tez-site.xml
  建议:不小于或者等于yarn.scheduler.minimum-allocation-mb值。
  
hive.tez.container.size  #设置 tez container内存
  默认值:-
  默认情况下,Tez将生成一个mapper大小的容器。这可以用来覆盖默认值。
  配置文件:hive-site-xml
  建议:不小于或者是yarn.scheduler.minimum-allocation-mb的倍数
  
二、AM、Container JVM参数设置
1、tez.am.launch.cmd-opts  #设置 AM jvm,启动TEZ任务进程期间提供的命令行选项。
  默认值:-XX:+PrintGCDetails -verbose:gc -XX:+PrintGCTimeStamps -XX:+UseNUMA -XX:+UseParallelGC(用于GC),默认的大小:80%*tez.am.resource.memory.mb
  配置文件:tez-site.xml
  建议:不要在这些启动选项中设置任何xmx或xms,以便tez可以自动确定它们。
   2、
hive.tez.java.ops  #设置 container jvm
  默认值:Hortonworks建议“–server –Djava.net.preferIPv4Stack=true–XX:NewRatio=8 –XX:+UseNUMA –XX:UseG1G”,默认大小:80%*hive.tez.container.size
  说明:在hive 2.x的官方文档中没有找到这个参数。看有些博客里面有这个值。
  配置文件:hive-site.xml 3、tez.container.max.java.heap.fraction  #设置task/AM占用jvm内存大小的比例。
  默认值:0.8
  配置文件:tez-site.xml
  说明:这个值按具体需要调整,当内存不足时,一般都要调小。 三、Hive内存Map Join参数设置
1、tez.runtime.io.sort.mb  #设置输出排序内存大小
  默认值:100
  配置文件:
tez-site.xml
  建议:40%*hive.tez.container.size,一般不超过2G
2、
hive.auto.convert.join.noconditionaltask  #是否将多个mapjoin合并为一个
  默认值:true
  建议使用默认值。
  配置文件:hive-site.xml
3、hive.auto.convert.join.noconditionaltask.size
  默认值:10000000  (10M)
  说明:这个参数使用的前提是
hive.auto.convert.join.noconditionaltask值为true,多个mapjoin转换为1个时,所有小表的文件大小总和小于这个值,这个值只是限制输入的表文件的大小,并不代表实际mapjoin时hashtable的大小。 建议值:1/3* hive.tez.container.size
  
配置文件:hive-site.xml
4、tez.runtime.unordered.output.buffer.size-mb  #如果不直接写入磁盘,使用的缓冲区大小
  默认值:100M
 建议:10%* hive.tez.container.size
  配置文件:tez-site.xml 5、tez.am.container.reuse.enabled  #容器重用
  默认值:true
  配置文件:tez-ste.xml

hive tez调优(3)的更多相关文章

  1. 数据迁移过程中hive sql调优

    本文记录的是,在数据处理过程中,遇到了一个sql执行很慢,对一些大型的hive表还会出现OOM,一步一步通过参数的设置和sql优化,将其调优的过程. 先上sql ) t where t.num =1) ...

  2. Hive(十)Hive性能调优总结

    一.Fetch抓取 1.理论分析 Fetch抓取是指,Hive中对某些情况的查询可以不必使用MapReduce计算.例如:SELECT * FROM employees;在这种情况下,Hive可以简单 ...

  3. Hive参数调优

    调优 Hive提供三种可以改变环境变量的方法,分别是: (1)修改${HIVE_HOME}/conf/hive-site.xml配置文件: 所有的默认配置都在${HIVE_HOME}/conf/hiv ...

  4. Hive 企业调优

    9.企业级调优 9.1 Fetch 抓取 Fetch 抓取:Hive 中对某些情况的查询可以不必使用 MapReduce 计算: hive.fetch.task.conversion:more 9.2 ...

  5. hive的调优

    调优 1 Fetch抓取(Hive可以避免进行MapReduce) Hive中对某些情况的查询可以不必使用MapReduce计算.例如:SELECT * FROM employees;在这种情况下,H ...

  6. HDP Hive性能调优

    (官方文档翻译整理及总结) 一.优化数据仓库 ① Hive LLAP  是一项接近实时结果查询的技术,可用于BI工具以及网络看板的应用,能够将数据仓库的查询时间缩短到15秒之内,这样的查询称之为Int ...

  7. 关于Hive的调优(本身,sql,mapreduce)

    1.关于hive的优化 ->大表拆分小表 ->过滤字段 ->按字段分类存放 ->外部表与分区表 ->外部表:删除时只删除元数据信息,不删除数据文件 多人使用多个外部表操作 ...

  8. 060 关于Hive的调优(本身,sql,mapreduce)

    1.关于hive的优化 ->大表拆分小表 ->过滤字段 ->按字段分类存放 ->外部表与分区表 ->外部表:删除时只删除元数据信息,不删除数据文件 多人使用多个外部表操作 ...

  9. Hive 性能调优

    避免执行MR select * or select field1,field2 limit 10 where语句中只有分区字段或该表的本地字段 使用本地set hive.exec.mode.local ...

随机推荐

  1. 查询慢SQL

      可以查看当前时间访问库的所有请求SQL SELECT COUNT(*) AS c,state,info  FROM `information_schema`.processlist GROUP B ...

  2. ABP 基于DDD的.NET开发框架 学习(一)

    ABP总体介绍 ABP是ASP.NET Boilerplate Project,ASP.NET样板项目. ABP框架定位于快速开发 ABP是一个用于最快实践和流行开发现代Web应用程序的新起点,旨在成 ...

  3. android studio 开发环境配置

    android studio 开发环境配置 参考: 第一次使用Android Studio时你应该知道的一切配置 https://www.cnblogs.com/qianguyihao/p/43909 ...

  4. element-ui中使用表单验证的问题

    <el-form ref="ruleRules" :inline="true" :model="ruleInfo"> <e ...

  5. 简单理解undefine和null的区别

    直接进入主题: 相同点:都表示“值的空缺” 不同点: null: 定义:一个空对象指针. 使用typeOf得到Object,相当于是一个特殊值 undefine: 定义:声明变量却未对其加以初始化的变 ...

  6. you might not need jquery

    What's the oldest version of IE you need to support? IE10 /**json**/ var request = new XMLHttpReques ...

  7. ble编程-外设发送数据到中心

    一.外设 1.在外设的.h文件中定义如下   1 //周边管理者 2 3 @property (nonatomic , strong) CBPeripheralManager *peripheralM ...

  8. jdk代理与cglib代理

    1. jdk静态代理 jdk静态代理主要使用硬编码实现.他通过对在代理类中持有委托类的引用,来打到在委托类方法执行前和执行后进行处理,实现简单,容易理解. 代码如下: 1.业务逻辑接口 package ...

  9. Pyspark:AssertionError: dataType should be DataType

    1. schema参数,AssertionError: dataType should be DataType # AssertionError: dataType should be DataTyp ...

  10. IIS 自动化发布工具实现【一】

    [持续更新中啦] 过去一年,有在尝试做.net 这块的开发运维工作.基于现在的开发场景,写了一套差异发布工具.后面用python重写了一套,现学现卖. 主要功能: 差异打包.自动发布.自动回滚 实现架 ...