hive-client Heap大小的配置优先级

其实主要解决,hive作为数据仓库(hive -e “select ····”) 如果是分区表且分区较多可能导致hive 堆内存溢出情况

注意:HEAP大小配置优先级有配置语句顺序无关

以下为hive 堆配置的优先级 由大到小

  1. vi conf/hive-env.sh
  2. export HADOOP_CLIENT_OPTS=" -Xmx3000m" > if···Xms512m -Xmx2048m··fi > export HADOOP_HEAPSIZE=1024
如图为hive-env.sh 配置(证明heap配置优先级有配置语句顺序无)


  1. # Hive Client memory usage can be an issue if a large number of clients
  2. # are running at the same time. The flags below have been useful in
  3. # reducing memory usage:
  4. #
  5. if [ "$SERVICE" = "cli" ]; then
  6. if [ -z "$DEBUG" ]; then
  7. export HADOOP_OPTS="$HADOOP_OPTS -XX:NewRatio=12 -Xms500m -Xmx2048m -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:+UseParNewGC -XX:-UseGCOverheadLimit"
  8. else
  9. export HADOOP_OPTS="$HADOOP_OPTS -XX:NewRatio=12 -Xms500m -Xmx2048m -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:-UseGCOverheadLimit"
  10. fi
  11. fi
  12. # The heap size of the jvm stared by hive shell script can be controlled via:
  13. #
  14. #export HADOOP_HEAPSIZE=1024
  15. export HADOOP_CLIENT_OPTS=" -Xmx3000m"
  16. export HADOOP_HEAPSIZE=1024
  17. #
  18. # Larger heap size may be required when running queries over large number of files or partitions.
  19. # By default hive shell scripts use a heap size of 256 (MB). Larger heap size would also be
  20. # appropriate for hive server (hwi etc).
  21. # Set HADOOP_HOME to point to a specific hadoop install directory
  22. # HADOOP_HOME=${bin}/../../hadoop

jps -lvm

  1. meicai@dev04:~$ sudo su - hive
  2. hive@dev04:~$ jps -m
  3. 30689 RunJar /opt/hive/hive-1.1.0/lib/hive-cli-1.1.0.jar org.apache.hadoop.hive.cli.CliDriver
  4. 27382 RunJar /opt/hive/hive-1.1.0/lib/hive-service-1.1.0.jar org.apache.hadoop.hive.metastore.HiveMetaStore
  5. 30904 Jps -m
  6. 27295 RunJar /opt/hive/hive-1.1.0/lib/hive-service-1.1.0.jar org.apache.hive.service.server.HiveServer2
  7. hive@dev04:~$ jps -lvm
  8. 30689 org.apache.hadoop.util.RunJar /opt/hive/hive-1.1.0/lib/hive-cli-1.1.0.jar org.apache.hadoop.hive.cli.CliDriver -Xmx1024m -XX:NewRatio=12 -Xms500m -Xmx2048m -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:+UseParNewGC -XX:-UseGCOverheadLimit -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/opt/hadoop/hadoop-2.6.0/logs -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/opt/hadoop/hadoop-2.6.0 -Dhadoop.id.str=hive -Dhadoop.root.logger=INFO,console -Djava.library.path=/opt/hadoop/hadoop-2.6.0/lib/native -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Xmx512m -Xmx3000m -Dhadoop.security.logger=INFO,NullAppender
  9. 27382 org.apache.hadoop.util.RunJar /opt/hive/hive-1.1.0/lib/hive-service-1.1.0.jar org.apache.hadoop.hive.metastore.HiveMetaStore -Xmx1024m -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/opt/hadoop/hadoop-2.6.0/logs -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/opt/hadoop/hadoop-2.6.0 -Dhadoop.id.str=hive -Dhadoop.root.logger=INFO,console -Djava.library.path=/opt/hadoop/hadoop-2.6.0/lib/native -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Xmx512m -Xmx3000m -Dhadoop.security.logger=INFO,NullAppender
  10. 30925 sun.tools.jps.Jps -lvm -Dapplication.home=/home/jdk1.8.0_20 -Xms8m
  11. 27295 org.apache.hadoop.util.RunJar /opt/hive/hive-1.1.0/lib/hive-service-1.1.0.jar org.apache.hive.service.server.HiveServer2 -Xmx1024m -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/opt/hadoop/hadoop-2.6.0/logs -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/opt/hadoop/hadoop-2.6.0 -Dhadoop.id.str=hive -Dhadoop.root.logger=INFO,console -Djava.library.path=/opt/hadoop/hadoop-2.6.0/lib/native -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Xmx512m -Xmx3000m -Dhadoop.security.logger=INFO,NullAppender
  12. hive@dev04:~$

hive-client heap内存大小的配置优先级的更多相关文章

  1. Java进程堆外内存(off heap)大小

    一.使用ByteBuffer.allocateDirect分配的off heap内存大小 本机进程 在Jvisualvm中安装 Mbeans插件.然后查看java.nio/BufferPool/dir ...

  2. 配置tomcat服务器内存大小中的Xms、Xmx、PermSize、MaxPermSize 详解

    1.参数的含义 -vmargs -Xms256m -Xmx512m -XX:PermSize=256M -XX:MaxPermSize=512M -vmargs 说明后面是VM的参数,所以后面的其实都 ...

  3. 内存大小设置 Java heap space错误

    1. 问题描述 当从数据库中查询大量的数据,每个模板取出来几百万条数据,或者是频繁的刷新项目.模板时就会占用Java虚拟机JVM的大量内存,超过内存就会出现报java.lang.OutOfMemory ...

  4. weblogic 12c 配置jvm的内存大小

    每个weblogic server 都是运行在一个java虚拟机上 ,对weblogic的内存设置也就是对java虚拟机的内存设置. MEM_ARGS=-Xms512m -Xmx1024m -XX:M ...

  5. HDP3.1 中 YRAN 和 MR2 的内存大小配置的计算方式

    Container 是 YARN 中基本的处理单元,它是对内存.CPU等计算的封装.总的来说,每个core每块硬盘 分配2个 container,能获得较好的集群利用率. 1. 确定可用内存大小. 对 ...

  6. tomcat 内存大小配置

    Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个java虚拟机.JAVA程序启动时JVM都会分配一个初始内存和最大内存给这个应用程序.这个初始内存和最大内存在一定程度都会 ...

  7. 获取指定订阅下所有Azure ARM虚拟机配置(CPU核数,内存大小,磁盘信息)的使用情况

    脚本内容: <# .SYNOPSIS This script grab all ARM VM VHD file in the subscription and caculate VHD size ...

  8. [Spark性能调优] 第四章 : Spark Shuffle 中 JVM 内存使用及配置内幕详情

    本课主题 JVM 內存使用架构剖析 Spark 1.6.x 和 Spark 2.x 的 JVM 剖析 Spark 1.6.x 以前 on Yarn 计算内存使用案例 Spark Unified Mem ...

  9. Ehcache计算Java对象内存大小

    在EHCache中,可以设置maxBytesLocalHeap.maxBytesLocalOffHeap.maxBytesLocalDisk值,以控制Cache占用的内存.磁盘的大小(注:这里Off ...

随机推荐

  1. 如何让classmethod只允许使用用类对象来调用

    Django REST framework里面有这样一段代码,在网上查@classonlymethod的意思是使得classmethod只允许使用用类对象来调用 @classonlymethod de ...

  2. Winfrom窗体无法关闭问题--检查是否存在重写

    问题描述: Winfrom窗体无法关闭问题----点击关闭/最大/最小化无法正常相应. 问题来源: 老版本的程序要求使用无边框的Form窗体(实现功能——设置为无边框窗体并重写窗体的关闭.最大.最小化 ...

  3. php mongo类

    看了好多mongo类都不尽人意.最后发现根本不需要自己封装类.php mongo 的扩展自带的方法就已经很方便了 但是习惯性的把数据库连接部分封装起来.最后我就封装了一个单例模式的数据库类 使用单例模 ...

  4. git 日常

    git 恢复到上一个版本比如执行 git commit 命令之后 做了一些修改 恢复到上一个版本 1.修改一个文件想回到修改前 直接 git checkout -- filename 2.修改过文件, ...

  5. Android开发之五大布局篇

    一.Android中常用的5大布局方式有以下几种: 线性布局(LinearLayout):按照垂直或者水平方向布局的组件. 相对布局(RelativeLayout):相对其它组件的布局方式. 绝对布局 ...

  6. Redis集群事物提交异常Multi-key operations must involve a single slot

    redis做完集群后不同键在同一事物中提交,因为key的hash计算结果不同不能分配到同一个分片上,因此出现此异常. 解决方案:在本次事物的key内添加"{tag}",这时redi ...

  7. itertools库 combinations() 和 permutations() 组合 和 排列选项的方法

    combinations方法重点在组合,permutations方法重在排列. combinations和permutations返回的是对象地址,原因是在python3里面,返回值已经不再是list ...

  8. go语言学习--语法糖

    语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有 ...

  9. 电脑不能上网win7 解决办法

    情况一览: 电脑连的是WIFI 手机能上,局域网其他电脑能上 电脑浏览器打不开网页 问题解决: //win+R 快捷键进入cmd 1.ipconfig 看电脑有没有ip 2.ipconfig nslo ...

  10. ORM多表操作之创建关联表及添加表记录

    创建关联表 关于表关系的几个结论 (1)一旦确立表关系是一对多:建立一对多关系----在多对应的表中创建关联字段. (2)一旦确立表关系是多对多:建立多对多关系----创建第三张关系表----id和两 ...