hive-client heap内存大小的配置优先级
hive-client Heap大小的配置优先级
其实主要解决,hive作为数据仓库(hive -e “select ····”) 如果是分区表且分区较多可能导致hive 堆内存溢出情况
注意:HEAP大小配置优先级有配置语句顺序无关
以下为hive 堆配置的优先级 由大到小
vi conf/hive-env.sh
export HADOOP_CLIENT_OPTS=" -Xmx3000m" > if···Xms512m -Xmx2048m··fi > export HADOOP_HEAPSIZE=1024
如图为hive-env.sh 配置(证明heap配置优先级有配置语句顺序无)

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

meicai@dev04:~$ sudo su - hive
hive@dev04:~$ jps -m
30689 RunJar /opt/hive/hive-1.1.0/lib/hive-cli-1.1.0.jar org.apache.hadoop.hive.cli.CliDriver
27382 RunJar /opt/hive/hive-1.1.0/lib/hive-service-1.1.0.jar org.apache.hadoop.hive.metastore.HiveMetaStore
30904 Jps -m
27295 RunJar /opt/hive/hive-1.1.0/lib/hive-service-1.1.0.jar org.apache.hive.service.server.HiveServer2
hive@dev04:~$ jps -lvm
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
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
30925 sun.tools.jps.Jps -lvm -Dapplication.home=/home/jdk1.8.0_20 -Xms8m
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
hive@dev04:~$
hive-client heap内存大小的配置优先级的更多相关文章
- Java进程堆外内存(off heap)大小
一.使用ByteBuffer.allocateDirect分配的off heap内存大小 本机进程 在Jvisualvm中安装 Mbeans插件.然后查看java.nio/BufferPool/dir ...
- 配置tomcat服务器内存大小中的Xms、Xmx、PermSize、MaxPermSize 详解
1.参数的含义 -vmargs -Xms256m -Xmx512m -XX:PermSize=256M -XX:MaxPermSize=512M -vmargs 说明后面是VM的参数,所以后面的其实都 ...
- 内存大小设置 Java heap space错误
1. 问题描述 当从数据库中查询大量的数据,每个模板取出来几百万条数据,或者是频繁的刷新项目.模板时就会占用Java虚拟机JVM的大量内存,超过内存就会出现报java.lang.OutOfMemory ...
- weblogic 12c 配置jvm的内存大小
每个weblogic server 都是运行在一个java虚拟机上 ,对weblogic的内存设置也就是对java虚拟机的内存设置. MEM_ARGS=-Xms512m -Xmx1024m -XX:M ...
- HDP3.1 中 YRAN 和 MR2 的内存大小配置的计算方式
Container 是 YARN 中基本的处理单元,它是对内存.CPU等计算的封装.总的来说,每个core每块硬盘 分配2个 container,能获得较好的集群利用率. 1. 确定可用内存大小. 对 ...
- tomcat 内存大小配置
Tomcat本身不能直接在计算机上运行,需要依赖于硬件基础之上的操作系统和一个java虚拟机.JAVA程序启动时JVM都会分配一个初始内存和最大内存给这个应用程序.这个初始内存和最大内存在一定程度都会 ...
- 获取指定订阅下所有Azure ARM虚拟机配置(CPU核数,内存大小,磁盘信息)的使用情况
脚本内容: <# .SYNOPSIS This script grab all ARM VM VHD file in the subscription and caculate VHD size ...
- [Spark性能调优] 第四章 : Spark Shuffle 中 JVM 内存使用及配置内幕详情
本课主题 JVM 內存使用架构剖析 Spark 1.6.x 和 Spark 2.x 的 JVM 剖析 Spark 1.6.x 以前 on Yarn 计算内存使用案例 Spark Unified Mem ...
- Ehcache计算Java对象内存大小
在EHCache中,可以设置maxBytesLocalHeap.maxBytesLocalOffHeap.maxBytesLocalDisk值,以控制Cache占用的内存.磁盘的大小(注:这里Off ...
随机推荐
- 查找Python项目依赖的库并生成requirements.txt
使用pip freeze pip freeze > requirements.txt 这种方式配合virtualenv 才好使,否则把整个环境中的包都列出来了. 使用 pipreqs 这个工具的 ...
- 固态硬盘SSD,机械硬盘HDD,4K速度对比。
HDD - SSD -
- 在linux下使用am335x的DMA
[本文首发于cnblogs,作者:byeyear,Email:east3@163.com] 这几天在弄am3358的DMA,简化应用环境如下: am3358的FSMC接了一片FPGA: FPGA上接A ...
- STL进阶--成员函数 vs 算法
容器的成员函数 vs 算法 容器中同名的函数 List: void remove(const T); template<class Comp> void remove_if(Comp); ...
- 记录一次OOM分析过程
工具: jstat jmap jhat 1.jstat查看gc情况 S0C.S1C.S0U.S1U:Survivor 0/1区容量(Capacity)和使用量(Used) EC.EU:Eden区容量和 ...
- 使用R语言-操作data.frame
1 向一个data.frame指定列插入一列新数据 1.1 插入一列到指定位置 y<-1:4 data1 <-data.frame(x1=c(1,3,5,7), x2=c(2,4,6,8) ...
- document.write的用处!
document.write是JavaScript中对document.open所开启的文档流(document stream操作的API方法,它能够直接在文档流中写入字符串,一旦文档流已经关闭,那d ...
- 学习笔记之Java
Java (programming language) - Wikipedia https://en.wikipedia.org/wiki/Java_(programming_language) Ja ...
- 廖雪峰Java3异常处理-2断言和日志-4使用Log4j
1.Log4j Log4j是目前最流行的日志框架.有两个版本 1.x:Log4j 2.x:Log4j2 Log4j下载地址https://www.apache.org/dyn/closer.lua/l ...
- 廖雪峰Java1-3流程控制-3条件判断
1.if条件判断的格式 if (条件) { 代码块 } if (条件) { 代码块1 } else { 代码块2 } if (条件1) { 代码块1 } else if { 代码块2 } else { ...