hbase.tmp.dir:本地文件系统的临时目录,默认是java.io.tmpdir/hbase−java.io.tmpdir/hbase−{user.name};

hbase.rootdir:hbase持久化的目录,被所有regionserver共享,默认${hbase.tmp.dir}/hbase,一般设置为hdfs://namenode.example.org:9000/hbase类似,带全限定名;

hbase.cluster.distributed:hbase集群模式运作与否的标志,默认是false,开启需要设置为true,false时启动hbase会在一个jvm中运行hbase和zk;

hbase.zookeeper.quorum:重要的也是必须设置的,启动zk的服务器列表,逗号分隔,cluster模式下必须设置,默认是localhost,hbase客户端也需要设置这个值去访问zk;

hbase.local.dir:本地文件系统被用在本地存储的目录,默认${hbase.tmp.dir}/local/;

hbase.master.port:hbase master绑定的端口,默认是60000;

hbase.master.info.port:hbase master web 界面的端口,默认是60010,设置为-1可以禁用ui;

hbase.master.info.bindAddress:master web界面的绑定地址,默认是0.0.0.0;

hbase.master.logcleaner.plugins:清理日志的插件列表,逗号分隔,被LogService调用的LogCleanerDelegate,可以自定义,顺序执行,清理WAL和HLog;默认org.apache.hadoop.hbase.master.cleaner.TimeToLiveLogCleaner

hbase.master.logcleaner.ttl:HLog在.oldlogdir目录中生存的最长时间,过期则被Master起线程回收,默认是600000;

hbase.master.hfilecleaner.plugins:HFile的清理插件列表,逗号分隔,被HFileService调用,可以自定义,默认org.apache.hadoop.hbase.master.cleaner.TimeToLiveHFileCleaner

hbase.master.catalog.timeout:Catalog Janitor从master到META的超时时间,我们知道这个Janitor是定时的去META扫描表目录,来决定回收无用的regions,默认是600000;

fail.fast.expired.active.master:如果master过期,那么不需要从zk恢复,直接终止,默认是false;

hbase.master.dns.interface:master的dns接口,向该接口提供ip,默认是default;

hbase.master.dns.nameserver:master使用的dns主机名或者ip,默认是default;

hbase.regionserver.port:regionserver绑定的端口,默认是60020;

hbase.regionserver.info.port:regionserver的web界面端口,-1取消界面,默认是60030;

hbase.regionserver.info.bindAddress:regionserver的web绑定,默认是0.0.0.0;

hbase.regionserver.info.port.auto:master或者regionserver是否自动搜索绑定的端口,默认是false;

hbase.regionserver.handler.count:regionserver上rpc listener的个数,http://kenwublog.com/hbase-performance-tuning把这个配置称为io线程数,其实雷同,就是说在regionserver上一个处理rpc的handler,默认是30;

hbase.regionserver.msginterval:regionserver向master发消息的间隔,默认3000毫秒;

hbase.regionserver.optionallogflushinterval:如果没有足够的entry触发同步,那么过了这个间隔后HLog将被同步到HDFS,默认是1000毫秒;

hbase.regionserver.regionSplitLimit:regionsplit的最大限额,默认是MAX_INT=2147483647,设置这个限制后,在到达限制时region split就不会再进行;

hbase.regionserver.logroll.period:不管有多少版本,直接roll掉commit log的周期,也就是说一个固定的时间周期,到期就roll,默认是3600000毫秒;

hbase.regionserver.logroll.errors.tolerated:可接受的WAL关闭错误个数,到达后将触发服务器终止;设置为0那么在WAL writer做log rolling失败时就停止region server,默认是2;

hbase.regionserver.hlog.reader.impl:HLog 文件reader的实现类,默认是org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader;

hbase.regionserver.hlog.writer.impl:HLog 文件writer的实现类,默认是org.apache.hadoop.hbase.regionserver.wal.ProtobufLogWriter;

hbase.regionserver.global.memstore.upperLimit:memstore在regionserver内存中的上限,届时新的update被阻塞并且flush被强制写,默认是0.4就是堆内存的40%;阻塞状态持续到regionserver的所有memstore的容量到达hbase.regionserver.global.memstore.lowerLimit;

hbase.regionserver.global.memstore.lowerLimit:memstore在regionserver内存中的最大上限,到达时flush就被强制写,默认是0.38等价于38%的内存容量;

hbase.regionserver.optionalcacheflushinterval:一个edit版本在内存中的cache时长,默认3600000毫秒,设置为0的话则禁止自动flush;

hbase.regionserver.catalog.timeout:regionserver的Catalog Janitor访问META的超时时间,默认是600000;

hbase.regionserver.dns.interface:同master类似~~不讲

hbase.regionserver.dns.nameserver:同master类似

zookeeper.session.timeout:这是个值得说道一下的配置,首先ZK客户端要用,Hbase使用zk的客户端联系总体,同时也被用来启动一个zk server,作为zk的maxSessionTimeout,总的来说就是regionserver与zk的关键参数,如果连接超时,master会重新的balance,regionserver也会被从集群名单中清除,默认是90000;一个问题是如果zk 由hbase自己维护,那么该参数作为regionserver连接是一个值,如果zk在另外的集群,那么zk自己的maxSessionTimeout参数将优先于Hbase的该参数,届时可能会发生超时时间不同的问题;

zookeeper.znode.parent:znode存放root region的地址,默认是root-region-server;

zookeeper.znode.acl.parent:root znode的acl,默认acl;

hbase.zookeeper.dns.interface:zk的dns接口,默认default;

hbase.zookeeper.dns.nameserver:zk的dns服务地址,默认default;

hbase.zookeeper.peerport:zk的peer之间的通讯端口,默认是2888;

hbase.zookeeper.leaderport:zk选leader的通讯端口,默认是3888;

hbase.zookeeper.useMulti:zk支持多重update,要求zk在3.4版本以上,默认是false;

hbase.config.read.zookeeper.config:让hbaseconfig去读zk的config,默认false,也不支持开启,这个功能很搞笑~~个人观点;

hbase.zookeeper.property.initLimit:zk的配置,同步的属性个数限制,默认10个~~没用;

hbase.zookeeper.property.syncLimit:zk的配置,同步时的每次请求的条数,默认5个;

hbase.zookeeper.property.dataDir:zk的配置,snapshot存放的目录,默认是${hbase.tmp.dir}/zookeeper;

hbase.zookeeper.property.clientPort:zk的配置,client连zk的端口,默认2181;

hbase.zookeeper.property.maxClientCnxns:zk的配置,允许接入zk的最大并发连接数的限制,按ip分配,默认300;

hbase.client.write.buffer:htable客户端写缓冲区大小,默认是2097152BYTE,这个缓冲区就是为了写数据的临时存放,设置大了,浪费客户端和服务端的存储,设置小了,如果写的数据多,太多的RPC又带来网络开销,官方给的一个服务端存储耗费评估计算是:hbase.client.write.buffer*hbase.regionserver.handler.count,服务端的rs的处理handler个数也很关键;

hbase.client.pause:pause时长,在hbase发生get或其他操作fail掉的时候进行pause的时间长度,默认是100;

hbase.client.retries.number:发生操作fail时的重试次数,结合上一个指标一起来控制总的重试时间,默认是35;

hbase.client.max.total.tasks:一个HTable实例可以提交给集群的最大并发任务数,默认是100;

hbase.client.max.perserver.tasks:一个HTable实例给一台regionserver提交的最大并发任务数,默认是5;

hbase.client.max.perregion.tasks:客户端连接一台region的最大连接数,换句话说,当你有这么多个连接在region时,新的操作不被发送直到有操作完成,默认是1;

hbase.client.scanner.caching:做scanner的next操作时(如果再本地client没找到)缓存的数据行数,这个值的设置也需要权衡,缓存的多则快,但吃内存,缓存的少则需要多的拉数据, 需要注意的事项是如果两次调用的时间差大于scanner的timeout,则不要设置该值,默认是100;

hbase.client.keyvalue.maxsize:一个KeyValue实例的最大大小,这是存储文件中一个entry的容量上限,合理的设置这个值可以控制regionserver的split,split不会拆keyvalue,所以把keyvalue的大小设置为regionserver大小的一个比例分数(可除)是个不错的选择,默认是10485760;

hbase.client.scanner.timeout.period:结合刚才的caching做的一个,scanner的超时时间,默认是60000毫秒;

hbase.client.localityCheck.threadPoolSize:做localityCheck的线程池大小,默认是2;

hbase.bulkload.retries.number:做bulk load的最大重试次数,默认是0,即代表不断重试;

hbase.balancer.period:Master运行balancer的周期,默认是300000毫秒;

hbase.regions.slop:如果有regionserver的region数目超过average+(average*slop),则rebalance,默认是0.2;

hbase.server.thread.wakefrequency:服务线程的sleep时间,默认10000毫秒,比如log roller;

hbase.server.versionfile.writeattempts:退出前写 version file的重试次数,默认3,每次尝试的间隔由上一个参数控制;

hbase.hregion.memstore.flush.size:Memstore写磁盘的flush阈值,超过这个大小就flush,默认是134217728;

hbase.hregion.preclose.flush.size:如果一个region的memstore的大小等于或超过这个参数的量,在关闭region时(放置关闭flag),要提前flush,然后region关闭下线,默认大小是5242880;

hbase.hregion.memstore.block.multiplier:如果memstore的大小满足hbase.hregion.block.memstore * hbase.hregion.flush.size个byte,那么阻塞update,这个配置可以避免不必要的长时间split或者compact,甚至是OOME,默认是2;

hbase.hregion.memstore.mslab.enabled:开启MemStore-Local Allocation Buffer,这个配置可以避免在高写入的情况下的堆内存碎片,可以降低在大堆情况下的stop-the-world GC频率,默认是true;

hbase.hregion.max.filesize:HStoreFile的最大尺寸,换句话说,当一个region里的列族的任意一个HStoreFile超过这个大小,那么region进行split,默认是10737418240;

hbase.hregion.majorcompaction:一个region的所有HStoreFile进行major compact的时间周期,默认是604800000 毫秒(7天);

hbase.hregion.majorcompaction.jitter:major compaction的发生抖动范围,这么理解比较容易,就是说上一个参数不是一个严格周期,会有个抖动,这个参数就是这个抖动的比例,默认是0.5;

hbase.hstore.compactionThreshold:一个HStore存储HStoreFile的个数阈值,超过这个阈值则所有的HStoreFile会被写到一个新的HStore,需要平衡取舍,默认是3;

hbase.hstore.blockingStoreFiles:一个HStore存储HStoreFile阻塞update的阈值,超过这个阈值,HStore就进行compaction,直到做完才允许update,默认是10;

hbase.hstore.blockingWaitTime:一个更强力的配置,配合上一个参数,当HStore阻塞update时,超过这个时间限制,阻塞取消,就算compaction没有完成,update也不会再被阻塞,默认是90000毫秒;

hbase.hstore.compaction.max:每个minor compaction的HStoreFile个数上限,默认是10;

hbase.hstore.compaction.kv.max:在flushing或者compacting时允许的最大keyvalue个数,如果有大的KeyValue或者OOME的话则配置一个小的值,如果行数多且小则配置大值,默认是10;

hbase.storescanner.parallel.seek.threads:如果并行查找开启的线程池大小,默认是10;

hfile.block.cache.size:一个配置比例,允许最大堆的对应比例的内存作为HFile和HStoreFile的block cache,默认是0.4,即40%,设置为0则disable这个比例,不推荐这么做;

hfile.block.index.cacheonwrite:在index写入的时候允许put无根(non-root)的多级索引块到block cache里,默认是false;

hfile.index.block.max.size:在多级索引的树形结构里,如果任何一层的block index达到这个配置大小,则block写出,同时替换上新的block,默认是131072;

hfile.format.version:新文件的HFile 格式版本,设置为1来测试向后兼容,默认是2;

hfile.block.bloom.cacheonwrite:对于组合布隆过滤器的内联block开启cache-on-write,默认是false;

io.storefile.bloom.block.size:一个联合布隆过滤器的单一块(chunk)的大小,这个值是一个逼近值,默认是131072;

hbase.rs.cacheblocksonwrite:当一个HFile block完成时是否写入block cache,默认是false;

hbase.rpc.server.engine:hbase 做rpc server的调度管理类,实现自org.apache.hadoop.ipc.RpcServerEngine,默认是org.apache.hadoop.hbase.ipc.ProtobufRpcServerEngine;

hbase.rpc.timeout:Hbase client发起远程调用时的超时时限,使用ping来确认连接,但是最终会抛出一个TimeoutException,默认值是60000;

hbase.rpc.shortoperation.timeout:另一个版本的hbase.rpc.timeout,控制短操作的超时时限,比如region server 汇报master的操作的超时时限可以设置小,这样有利于master的failover,默认是10000;

hbase.ipc.client.tcpnodelay:默认是true,具体就是在tcp socket连接时设置 no delay;

hbase.master.keytab.file:kerberos keytab 文件的全路径名,用来为HMaster做log,无默认值;

hbase.master.kerberos.principal:运行HMaster进程时需要kerberos的principal name,这个配置就是这个name的值,形如:hbase/_HOST@EXAMPLE.COM

hbase.regionserver.keytab.file:kerberos keytab 文件的全路径名,用来为HRegionServer做log,无默认值;

hbase.regionserver.kerberos.principal:运行HRegionServer进程时需要kerberos的principal name,这个配置就是这个name的值,形如:hbase/_HOST@EXAMPLE.COM

hadoop.policy.file:RPC服务器做权限认证时需要的安全策略配置文件,在Hbase security开启后使用,默认是habse-policy.xml;

hbase.superuser:Hbase security 开启后的超级用户配置,一系列由逗号隔开的user或者group;

hbase.auth.key.update.interval:Hbase security开启后服务端更新认证key的间隔时间:默认是86400000毫秒;

hbase.auth.token.max.lifetime:Hbase security开启后,认证token下发后的生存周期,默认是604800000毫秒;

hbase.ipc.client.fallback-to-simple-auth-allowed:client使用安全连接去链接一台非安全服务器时,服务器提示client切换到SASL SIMPLE认证模式(非安全),如果设置为true,则client同意切换到非安全连接,如果false,则退出连接;

hbase.coprocessor.region.classes:逗号分隔的Coprocessores列表,会被加载到默认所有表上。在自己实现了一个Coprocessor后,将其添加到Hbase的classpath并加入全限定名。也可以延迟加载,由HTableDescriptor指定;

hbase.rest.port:Hbase REST服务器的端口,默认是8080;

hbase.rest.readonly:定义REST服务器启动的模式,有两种方式,false:所有http方法都将被通过-GET/PUT/POST/DELETE,true:只有get方法ok。默认值是false;

hbase.rest.threads.max:REST服务器线程池的最大线程数,池满的话新请求会自动排队,限制这个配置可以控制服务器的内存量,预防OOM,默认是100;

hbase.rest.threads.min:同上类似,最小线程数,为了确保服务器的服务状态,默认是2;

hbase.rest.support.proxyuser:使REST服务器支持proxy-user 模式,默认是false;

hbase.defaults.for.version.skip:是否跳过hbase.defaults.for.version的检查,默认是false;

hbase.coprocessor.master.classes:由HMaster进程加载的coprocessors,逗号分隔,全部实现org.apache.hadoop.hbase.coprocessor.MasterObserver,同coprocessor类似,加入classpath及全限定名;

hbase.coprocessor.abortonerror:如果coprocessor加载失败或者初始化失败或者抛出Throwable对象,则主机退出。设置为false会让系统继续运行,但是coprocessor的状态会不一致,所以一般debug时才会设置为false,默认是true;

hbase.online.schema.update.enable:设置true来允许在线schema变更,默认是true;

hbase.table.lock.enable:设置为true来允许在schema变更时zk锁表,锁表可以组织并发的schema变更导致的表状态不一致,默认是true;

hbase.thrift.minWorkerThreads:线程池的core size,在达到这里配置的量级后,新线程才会再新的连接创立时创建,默认是16;

hbase.thrift.maxWorkerThreads:顾名思义,最大线程数,达到这个数字后,服务器开始drop连接,默认是1000;

hbase.thrift.maxQueuedRequests:Thrift连接队列的最大数,如果线程池满,会先在这个队列中缓存请求,缓存上限就是该配置,默认是1000;

hbase.thrift.htablepool.size.max:Thrift服务器上table pool的最大上限,默认是1000;

hbase.offheapcache.percentage:JVM参数-XX:MaxDirectMemorySize的百分比值,默认是0,即不开启堆外分配;

hbase.data.umask.enable:开启后,文件在regionserver写入时会 有权限相关设定,默认是false不开启;

hbase.data.umask:开启上面一项配置后,文件的权限umask,默认是000;

hbase.metrics.showTableName:是否为每个指标显示表名前缀,默认是true;

hbase.metrics.exposeOperationTimes:是否进行关于操作在使用时间维度的指标报告,比如GET PUT DELETE INCREMENT等,默认是true;

hbase.snapshot.enabled:是否允许snapshot被使用、存储和克隆,默认是true;

hbase.snapshot.restore.take.failsafe.snapshot:在restore过程中,如果失败则启用snapshot替换,成功则删除掉snapshot,默认开启true;

hbase.snapshot.restore.failsafe.name:刚才所说过程中snapshot的名字,默认是hbase-failsafe-{snapshot.name}-{restore.timestamp};

hbase.server.compactchecker.interval.multiplier:检查是否需要compact的时间间隔,一般情况是在比如memstore flush后或者其他事件触发compact的,但是有时也需要不同的compact策略,所以需要周期性的检查具体间隔=hbase.server.compactchecker.interval.multiplier * hbase.server.thread.wakefrequency,默认1000;

hbase.lease.recovery.timeout:在dfs 租约超时时限,超时则放弃,默认是900000;

hbase.lease.recovery.dfs.timeout:dfs恢复租约调用的超时时限,默认是64000;

HBase配置项详解的更多相关文章

  1. Storm配置项详解【转】

    Storm配置项详解 ——阿里数据平台技术博客:storm配置项详解 什么是Storm? Storm是twitter开源的一套实时数据处理框架,基于该框架你可以通过简单的编程来实现对数据流的实时处理变 ...

  2. Mac下安装HBase及详解

    Mac下安装HBase及详解 1. 千篇一律的HBase简介 HBase是Hadoop的数据库, 而Hive数据库的管理工具, HBase具有分布式, 可扩展及面向列存储的特点(基于谷歌BigTabl ...

  3. Hbase存储详解

    转自:http://my.oschina.net/mkh/blog/349866 Hbase存储详解 started by chad walters and jim 2006.11 G release ...

  4. SpringCloud Eureka参数配置项详解

    SpringCloud Eureka参数配置项详解(转) Eureka涉及到的参数配置项数量众多,它的很多功能都是通过参数配置来实现的,了解这些参数的含义有助于我们更好的应用Eureka的各种功能,下 ...

  5. Python - poetry(3)配置项详解

    config 命令 poetry 通过 config 命令进行配置 也可以直接在 config.toml 文件中进行配置,该文件将在首次运行该命令时自动创建 文件目录 macOS:~/Library/ ...

  6. 大数据学习系列之五 ----- Hive整合HBase图文详解

    引言 在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环 ...

  7. HUE配置文件hue.ini 的hbase模块详解(图文详解)(分HA集群和非HA集群)

    不多说,直接上干货! 我的集群机器情况是 bigdatamaster(192.168.80.10).bigdataslave1(192.168.80.11)和bigdataslave2(192.168 ...

  8. 【转】web.xml配置项详解

    史上最全web.xml配置文件元素详解   一.web.xml配置文件常用元素及其意义预览 1 <web-app> 2 3 <!--定义了WEB应用的名字--> 4 <d ...

  9. SpringBoot application.properties 配置项详解

    参考: http://blog.csdn.net/lpfsuperman/article/details/78287265### # spring boot application.propertie ...

随机推荐

  1. srping MVC 工程简单搭建

    Spring版本:3.2.2.RELEASE 第一步:导入必须的jar包 spring-beans.jar spring-context.jar spring-core.jar spring-expr ...

  2. oracle学习笔记系列------oracle 基本操作之基本函数的用法

    --创建一个accout账户表 CREATE TABLE account( id ) NOT NULL, recommender_id ), login_name ) NOT NULL, login_ ...

  3. 单源最短路径算法——Dijkstra算法

    #include <stdio.h> #include <stdlib.h> #include <string.h> /* run this program usi ...

  4. C++11 之 override

    1  公有继承 派生类公有继承自 (public inheritance) 基类,继承包含两部分:一是函数的 "接口" (interface),二是函数的 "实现&quo ...

  5. 这是啥-Cython语言简单介绍

    Cython是一种既可以编写c又可以编写python的编程语言,他的目标是成为一个python语言的超集,为python提供高层次的.面向对象的.函数化.动态编程功能.不同于纯粹的python,它提供 ...

  6. 洛谷P1126机器人搬重物[BFS]

    题目描述 机器人移动学会(RMI)现在正尝试用机器人搬运物品.机器人的形状是一个直径1.6米的球.在试验阶段,机器人被用于在一个储藏室中搬运货物.储藏室是一个N*M的网格,有些格子为不可移动的障碍.机 ...

  7. AC日记——统计单词数 openjudge 1.12 5

    05:统计单词数 总时间限制:  1000ms 内存限制:  65536kB 描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次 ...

  8. android gridview画分割线,如图:

    1.先上图: 2.具体实现代码: public class LineGridView extends GridView { public LineGridView(Context context) { ...

  9. Centos5.8 安装 PHP5.5 和 memcached

    安装GIT 需要先安装gcc-c++ (sudo yum install gcc-c++) sudo yum install gettext-devel expat-devel cpio perl o ...

  10. 浅析MySQL数据碎片的产生(data free)

    浅析MySQL数据碎片的产生 2011-03-30 09:28 核子可乐译 51CTO 字号:T | T MySQL列表,包括MyISAM和InnoDB这两种最常见的类型,而根据经验来说,其碎片的产生 ...