hbase参数配置和说明
版本:0.94-cdh4.2.1
hbase-site.xml配置
hbase.tmp.dir
- 本地文件系统tmp目录,一般配置成local模式的设置一下,但是最好还是需要设置一下,因为很多文件都会默认设置成它下面的
- 线上配置
<property><name>hbase.tmp.dir</name><value>/mnt/dfs/11/hbase/hbase-tmp</value></property> - 默认值:
${java.io.tmpdir}/hbase-${user.name}写到系统的/tmp目录
hbase.rootdir
- HBase集群中所有RegionServer共享目录,用来持久化HBase的数据,一般设置的是hdfs的文件目录,如hdfs://namenode.example.org:9000/hbase
- 线上配置
<property><name>hbase.rootdir</name><value>hdfs://mycluster/hbase</value></property> - 默认值:
${hbase.tmp.dir}/hbase
hbase.cluster.distributed
- 集群的模式,分布式还是单机模式,如果设置成false的话,HBase进程和Zookeeper进程在同一个JVM进程。
- 线上配置为true
- 默认值:false
hbase.zookeeper.quorum
- zookeeper集群的URL配置,多个host中间用逗号(,)分割
- 线上配置
<property><name>hbase.zookeeper.quorum</name> <value>inspurXXX.xxx.xxx.org,inspurXXX.xxx.xxx.org,inspurXXX.xxx.xxx.org,inspurXXX.xxx.xxx.org,inspurXXX.xxx.xxx.org</value></property> - 默认值:localhost
hbase.zookeeper.property.dataDir
- ZooKeeper的zoo.conf中的配置。 快照的存储位置
- 线上配置:/home/hadoop/zookeeperData
- 默认值:${hbase.tmp.dir}/zookeeper
zookeeper.session.timeout
- 客户端与zk连接超时时间
- 线上配置:1200000(20min)
- 默认值:180000(3min)
hbase.zookeeper.property.tickTime
- Client端与zk发送心跳的时间间隔
- 线上配置:6000(6s)
- 默认值:6000
hbase.security.authentication
- HBase集群安全认证机制,目前的版本只支持kerberos安全认证。
- 线上配置:kerberos
- 默认值:空
hbase.security.authorization
- HBase是否开启安全授权机制
- 线上配置: true
- 默认值: false
hbase.regionserver.kerberos.principal
- regionserver的kerberos认证的主体名称(由三部分组成:服务或用户名称、实例名称以及域名)
- 线上配置:hbase/_HOST@HADOOP.xxx.xxx.COM
- 默认:无
hbase.regionserver.keytab.file
- regionserver keytab文件路径
- 线上配置:/home/hadoop/etc/conf/hbase.keytab
- 默认值:无
hbase.master.kerberos.principal
- master的kerberos认证的主体名称(由三部分组成:服务或用户名称、实例名称以及域名)
- 线上配置:hbase/_HOST@HADOOP.xxx.xxx.COM
- 默认:无
hbase.master.keytab.file
- master keytab文件路径
- 线上配置:/home/hadoop/etc/conf/hbase.keytab
- 默认值:无
hbase.regionserver.handler.count
- regionserver处理IO请求的线程数
- 线上配置:50
- 默认配置:10
hbase.regionserver.global.memstore.upperLimit
- RegionServer进程block进行flush触发条件:该节点上所有region的memstore之和达到upperLimit*heapsize
- 线上配置:0.45
- 默认配置:0.4
hbase.regionserver.global.memstore.lowerLimit
- RegionServer进程触发flush的一个条件:该节点上所有region的memstore之和达到lowerLimit*heapsize
- 线上配置:0.4
- 默认配置:0.35
hbase.client.write.buffer
- 客户端写buffer,设置autoFlush为false时,当客户端写满buffer才flush
- 线上配置:8388608(8M)
- 默认配置:2097152(2M)
hbase.hregion.max.filesize
- 单个ColumnFamily的region大小,若按照ConstantSizeRegionSplitPolicy策略,超过设置的该值则自动split
- 线上配置:107374182400(100G)
- 默认配置:21474836480(20G)
hbase.hregion.memstore.block.multiplier
- 超过memstore大小的倍数达到该值则block所有写入请求,自我保护
- 线上配置:8(内存够大可以适当调大一些,出现这种情况需要客户端做调整)
- 默认配置:2
hbase.hregion.memstore.flush.size
- memstore大小,当达到该值则会flush到外存设备
- 线上配置:104857600(100M)
- 默认值: 134217728(128M)
hbase.hregion.memstore.mslab.enabled
- 是否开启mslab方案,减少因内存碎片导致的Full GC,提高整体性能
- 线上配置:true
- 默认配置: true
hbase.regionserver.maxlogs
- regionserver的hlog数量
- 线上配置:128
- 默认配置:32
hbase.regionserver.hlog.blocksize
- hlog大小上限,达到该值则block,进行roll掉
- 线上配置:536870912(512M)
- 默认配置:hdfs配置的block大小
hbase.hstore.compaction.min
- 进入minor compact队列的storefiles最小个数
- 线上配置:10
- 默认配置:3
hbase.hstore.compaction.max
- 单次minor compact最多的文件个数
- 线上配置:30
- 默认配置:10
hbase.hstore.blockingStoreFiles
- 当某一个region的storefile个数达到该值则block写入,等待compact
- 线上配置:100(生产环境可以设置得很大)
- 默认配置: 7
hbase.hstore.blockingWaitTime
- block的等待时间
- 线上配置:90000(90s)
- 默认配置:90000(90s)
hbase.hregion.majorcompaction
- 触发major compact的周期
- 线上配置:0(关掉major compact)
- 默认配置:86400000(1d)
hbase.regionserver.thread.compaction.large
- large compact线程池的线程个数
- 线上配置:5
- 默认配置:1
hbase.regionserver.thread.compaction.small
- small compact线程池的线程个数
- 线上配置:5
- 默认配置:1
hbase.regionserver.thread.compaction.throttle
- compact(major和minor)请求进入large和small compact线程池的临界点
- 线上配置:10737418240(10G)
- 默认配置:2 * this.minFilesToCompact * this.region.memstoreFlushSize
hbase.hstore.compaction.max.size
- minor compact队列中storefile文件最大size
- 线上配置:21474836480(20G)
- 默认配置:Long.MAX_VALUE
hbase.rpc.timeout
- RPC请求timeout时间
- 线上配置:300000(5min)
- 默认配置:60000(10s)
hbase.regionserver.region.split.policy
- split操作默认的策略
- 线上配置: org.apache.hadoop.hbase.regionserver.ConstantSizeRegionSplitPolicy(采取老的策略,自己控制split)
- 默认配置: org.apache.hadoop.hbase.regionserver.IncreasingToUpperBoundRegionSplitPolicy(在region没有达到maxFileSize的前提下,如果fileSize达到regionCount * regionCount * flushSize则进行split操作)
hbase.regionserver.regionSplitLimit
- 单台RegionServer上region数上限
- 线上配置:150
- 默认配置:2147483647
hbase-env.sh配置
指定系统运行环境
export JAVA_HOME=/usr/lib/jvm/java-6-sun/ #JDK HOMEexport HBASE_HOME=/home/hadoop/cdh4/hbase-0.94.2-cdh4.2.1 # HBase 安装目录export HBASE_LOG_DIR=/mnt/dfs/11/hbase/hbase-logs #日志输出路径 |
JVM参数调优
export HBASE_OPTS="-verbose:gc -XX:+PrintGCDetails -Xloggc:${HBASE_LOG_DIR}/hbase-gc.log -XX:+PrintGCTimeStamps -XX:+PrintGCApplicationConcurrentTime -XX:+PrintGCApplicationStoppedTime \-server -Xmx20480m -Xms20480m -Xmn10240m -Xss256k -XX:SurvivorRatio=4 -XX:MaxPermSize=256m -XX:MaxTenuringThreshold=15 \-XX:ParallelGCThreads=16 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:CMSFullGCsBeforeCompaction=5 -XX:+UseCMSCompactAtFullCollection \-XX:+CMSClassUnloadingEnabled -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSMaxAbortablePrecleanTime=5000 \" |
hbase参数配置和说明的更多相关文章
- HBase参数配置及说明
版本:0.94-cdh4.2.1 hbase-site.xml配置 hbase.tmp.dir 本地文件系统tmp目录,一般配置成local模式的设置一下,但是最好还是需要设置一下,因为很多文件都会默 ...
- HBase参数配置及说明(转)
版本:0.94-cdh4.2.1 hbase-site.xml配置 hbase.tmp.dir 本地文件系统tmp目录,一般配置成local模式的设置一下,但是最好还是需要设置一下,因为很多文件都会默 ...
- hbase参数配置优化
因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果.所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正. 配置优化 zo ...
- Hbase 参数配置及优化
From:http://www.open-open.com/lib/view/open1346684547787.html 接触hbase已有半年的时间,查了很多资料,也参考了很多别人心得,也希望把自 ...
- HBase + Kerberos 配置示例(二)
接上篇<HBase + Kerberos配置示例(一)>,我们继续剩下的配置工作. 环境准备 Hadoop配置 Zookeeper配置 HBase配置 Java测试程序 环境准备 安装ha ...
- hbase安装配置(整合到hadoop)
hbase安装配置(整合到hadoop) 如果想详细了解hbase的安装:http://abloz.com/hbase/book.html 和官网http://hbase.apache.org/ 1. ...
- 企业级hbase HA配置
1 HBase介绍HBase是一个分布式的.面向列的开源数据库,就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类 ...
- Yarn 内存分配管理机制及相关参数配置
上一篇hive on tez 任务报错中提到了containter内存不足,现对yarn 内存分配管理进行介绍 一.相关配置情况 关于Yarn内存分配与管理,主要涉及到了ResourceManage. ...
- HBase内存配置及JVM优化
前言 本文从HBase的内存布局说起,先充分了解HBase的内存区的使用与分配,随后给出了不同业务场景下的读写内存分配规划,并指导如何分析业务的内存使用情况,以及在使用当中写内存Memstore及读内 ...
随机推荐
- POJ1179Polygon(区间dp)
啊~~ 被dp摁在地上摩擦的人 今天做了一道区间dp的题(POJ1179Polygon) 题目: Polygon Time Limit: 1000MS Memory Limit: 10000K T ...
- go语言基础知识笔记(二)之数组和切片
数组和切片知识用的也是比较多,的给我们工作带来很大的便利 (一) 数组 定义:在golang中数组的长度是不可变,数组存放要求是同一种数据类型 //golang中数组定义的四种方法1.先声明,后赋值 ...
- 一秒钟带你走进P图世界-----(python)PIL库的使用
python-----PIL库的使用 一.什么是PIL库 1.PIL(Python Image Library)库是python语言的第三方库,具有强大的图像处理能力,不仅包含了丰富的像素.色彩操作功 ...
- Eclipse使用JDBC小案例
JDBC(Java Database Connectivity:Java访问数据库的解决方案)定义一套标准接口,即访问数据库的通用API,不同数据库厂商根据各自数据的特点去实现这些接口. JDBC是J ...
- Java 集合系列03之 ArrayList详细介绍
ArrayList做为List接口中最常用的实现类,必须掌握. 一.ArrayList简介 与Java中的数组相比ArrayList的容量可以动态增加.它继承与AbstractList,实现了List ...
- zipline框架--简介
Zipline is a Pythonic algorithmic trading library. It is an event-driven system for backtesting. Zip ...
- Makefile模板(C++)
Makefile的C++的一个模板,可用于根据不同源文件,生成多个可执行文件 . CC = g++ DIR_INC = ./include DIR_SRC = ./src DIR_OBJ = ./ob ...
- CTR预估中GBDT与LR融合方案(转载)
1.背景 CTR预估,广告点击率(Click-Through Rate Prediction)是互联网计算广告中的关键环节,预估准确性直接影响公司广告收入.CTR预估中用的最多的模型是LR(Logis ...
- python和Java的几种容器比较
python里面有几种常用的容器用来存放数据 1.list 列表,在python中没有数据类型,所以可以在列表中存放各种类型的数据,比如把Java里面的整型和字符串放在一个容器里面如下所示 list ...
- 关于接口(Interface)
接口,其实是指类之间约定的协议,可以包含方法.属性.事件和索引: 接口成员不允许使用访问修饰符号(public.private.protected.internal),所有的接口成员都是公共的. 接口 ...