Hbase相关参数详解
转载:http://www.cnblogs.com/nexiyi/p/hbase_config_94.html
版本: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 HOME
export 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相关参数详解的更多相关文章
- MySQL复制相关参数详解
MySQL复制相关参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.复制相关系统变量 1>.server_id 是必须设置在master和每个slave上的唯一标 ...
- 【DataGuard】部署Data Guard相关参数详解 (转载)
原文地址:[DataGuard]部署Data Guard相关参数详解 作者:secooler 有关物理Data Guard部署参考<[DataGuard]同一台主机实现物理Data Gua ...
- gcc与g++区别以及相关参数详解
---恢复内容开始--- 原文链接:g++和gcc的区别 一 .二者区别 gcc和g++都是GNU(一个组织)的编译器. 1.对于.c后缀的文件,gcc把它当做是C程序:g++当做是C++程序: 2. ...
- flume基本概念及相关参数详解
1.flume是分布式的日志收集系统,把手机来的数据传送到目的地去 2.flume传输的数据的基本单位是 event,如果是文本文件,通常是一行记录. event代表着一个数据流的最小完整 ...
- Linux OOM killer 与相关参数详解
一.前言 本文是描述Linux virtual memory运行参数的第二篇,主要是讲OOM相关的参数的.为了理解OOM参数,第二章简单的描述什么是OOM.如果这个名词对你毫无压力,你可以直接进入第三 ...
- mount挂载相关参数详解
mount [ -t 设备类型 ] [ -o 扩展参数 ] dev dir -t:指定mount挂载设备类型,常见的类型有nfs.ntfs.vfat.iso9660等: is09 ...
- mybatis学习记录三——SqlMapConfig.xml相关参数详解
5 SqlMapConfig.xml mybatis的全局配置文件SqlMapConfig.xml,配置内容如下: properties(属性) settings(全局配置参数) ty ...
- HBase 协处理器编程详解,第二部分:客户端代码编写
实现 Client 端代码 HBase 提供了客户端 Java 包 org.apache.hadoop.hbase.client.coprocessor.它提供以下三种方法来调用协处理器提供的服务: ...
- Ajax.ActionLink参数详解
该语法会生成一个a标签,点击a标签会执行一个Ajax请求. 有12个方法重载,下面详解方法中的各项参数: 参数一:linkText string类型 说明:链接显示的文字内容 参数二:actionNa ...
随机推荐
- PyQt Designer中连接信号和槽时为什么只能连接控件自己的信号和槽函数?
老猿在学习ListView组件时,想实现一个在ListView组件中选中一个选择项后触发消息给主窗口,通过主窗口显示当前选中的项的内容. 进入QtDesigner后,设计一个图形界面,其中窗口界面使用 ...
- 建立windows认证模式下的用户登录
第一步:点击控制面板-----管理工具------计算机管理 ,在操作系统的计算机管理界面下,展开本地用户和组,在用户下建立三个用户u1,u2,u3,密码与用户名相同,如图所示. 然后新建一个组叫QQ ...
- python 读取excel表格内不同类型的数据
不同类型数据对应值: #coding=utf-8 import os import xlrd from datetime import datetime,date newparh = os.chdir ...
- Mac上使用Docker Desktop安装Kubernetes
下载镜像需要特殊手段,你懂的,如果没有特殊手段,建议放弃这种方式. 1 启用Kubernetes 启用过程,会联网下载kubenetes相关的核心组件镜像,如下是我下载好的: 下载好了,kubenet ...
- 题解-CF1437E Make It Increasing
题面 CF1437E Make It Increasing 给 \(n\) 个数 \(a_i\),固定 \(k\) 个下标 \(b_i\),求只修改不在 \(b_i\) 中的下标的值使 \(a_i\) ...
- MySQL技术内幕InnoDB存储引擎(七)——事务
什么是数据库的事务? 事务是访问并更新数据库中各种数据的一个程序执行单元.事务也是数据库区别于文件系统的一个重要特性. 事务需要满足的特性 1.原子性 原子性就是指数据库中的一个完整的事务是不可分割的 ...
- 移动端 better-scroll基础
一.什么是better-scroll better-scroll 是一款重点解决移动端(已支持 PC)各种滚动场景需求的插件 #滚动原理 1. 与浏览器滚动原理一致,父容器高度固定,子元素内容撑开,必 ...
- 图像处理论文详解 | Deformable Convolutional Networks | CVPR | 2017
文章转自同一作者的微信公众号:[机器学习炼丹术] 论文名称:"Deformable Convolutional Networks" 论文链接:https://arxiv.org/a ...
- 彻底理解Hive中的锁
前面遇到过一次因为Hive中表被锁住了,导致定时任务一直失败.这两天又出现了表被锁,原因是连接hiveserver2过于频繁,mysql连接被打满,引发的连锁反应,导致我们的小时任务一直失败,下午重点 ...
- 手把手教你使用Python轻松搞定发邮件
前言 现在生活节奏加快,人们之间交流方式也有了天差地别,为了更加便捷的交流沟通,电子邮件产生了,众所周知,电子邮件其实就是客户端和服务器端发送接受数据一样,他有一个发信和一个收信的功能,电子邮件的通信 ...