2018-11-26 16:09

2018-12-20 15:44

摘自HBASE官方网站  http://hbase.apache.org/book.html#_introduction  第7.2节。 【2018年11月】

hbase-default.xml中各配置项的释义及默认值
名称
猜猜看 默认值
hbase.tmp.dir 用于指定一个目录地址。简单理解成HBASE存数据的目录,默认情况下datanode, namenode, zookeeper运行产生的数据都会存在这个目录内。 ubuntu下默认是 /tmp/hbase-${user.name} 目录。例如:/tmp/hbase-ubuntu/ 
hbase.rootdir 用于指定一个目录地址。这个目录地址简单理解成就是HBase存储数据的地方。对于完全分布式模式下的HBase来说是HDFS NameNode运行的主机地址。如果是单机模式下的HBASE,直接写成file:///类型的地址即可。若是需要搭建基于HADOOP分布式存储系统之上的HBASE,则需要填写完整的URL名称。例如: hdfs://your_namenode_server:9000/your_hbase_name  。这个配置的值最好不要使用默认值。因为默认值是保存在Linux的 /tmp 目录下的。/tmp 目录在每次开机的时候会被系统清空。 ${hbase.tmp.dir}/hbase  。一般Linux下是 /tmp/hbase 目录。
hbase.cluster.distributed 用于配置一个标志位值,true / false 。 用于表示该HBASE是否要被配置成分布式模式。 如果在非分布式模式下,HBASE和ZooKeeper会在同一个JVM上运行。 false
hbase.zookeeper.quorum 用于配置一组网络地址或域名。这个配置项可以简单理解成配置的是datanode的服务器地址。如果你的HBASE集群有多个region server(完全分布式模式下的HBASE),则必须要把每台region server的地址写进这里去(要和ZooKeeper中配置的完全一致),多个region server的地址以英文逗号隔开。 例:<value>masterhost,slavehost1,slavehost2</value>   这条属性的含义建议去官网看看原文,受本人知识水平限制,我这边理解的可能不够全面。 localhost
 zookeeper.recovery.retry.maxsleeptime 用于设置一个整型数字值。 用于设置在重试zooKeeper的某些操作时的最大等待时间,似乎是出于某些原因zooKeeper的某些操作失败了,在一段时间以后zooKeeper会有重试该操作的机制,并且这个重试等待时间并不是恒定的,而是随着失败的次数逐渐增长的。HBASE为了防止这个时间无限制地增长,就设置了这个最大等待时间。即zooKeeper操作重试等待时间最长不超过这个项设置的时间。其单位是毫秒。  60000(ms)
 hbase.local.dir 用于指定一个目录地址。一个用来存储本地数据的目录。   ${hbase.tmp.dir}/local/   默认情况下是: /tmp/local/
 hbase.master.port 用于设置一个整型数字值。该值表示HBASE Master绑定的网络端口号。这个端口是用于HMaster进行RPC通信的。  16000 
 hbase.master.info.port 用于设置一个整型数字值。该值表示HBASE Master的网页版要绑定的网络端口号。如果你不想开启网页管理功能,将它设置成-1即可。  16010 
 hbase.master.info.bindAddress 用于设置一个网络地址。该网络地址表示HBASE Master的网页要绑定的地址。一般而言,没有必要去更改这项配置。如果你的机器有多个网卡,需要指定仅绑定某一个网卡的地址,就可以配置一下,不然,直接用默认的就好了。如果有必要,可以去了解一下0.0.0.0和127.0.0.1的区别。对了,这项一定要填写你的机器上的地址,不然会导致网页页面打不开的。  0.0.0.0
 hbase.master.logcleaner.plugins 用于设置一个或一组。。代码类名称吧。 这项属性貌似是用来指定日志清除插件程序的。似乎是为了避免日志随时间的积累而越来越臃肿,就有了这个“条件型日志清除器”。如果自己实现了自己的日志清除程序,就在这里配置上。有需要的老铁可以去官网看看原文,我这边也不是很清楚它的作用。

org.apache.hadoop.hbase.master.cleaner.TimeToLiveLogCleaner,org.apache.hadoop.hbase.master.cleaner.TimeToLiveProcedureWALCleaner

 hbase.master.logcleaner.ttl 用于设置一个整型数字值。表示WAL数据的保存时限(保存于${hbase.rootdir}/oldWALs,在HADOOP网页版的文件管理系统中可以看到。),在超过设置时长后,数据就会被Master线程清理掉。其单位是毫秒。  600000(ms)
 hbase.master.procedurewalcleaner.ttl 用于设置一个整型数字值。似乎是表示WAL步骤允许存在的时限。超过设置的时间上限后,就会被Master线程清理掉。其单位是毫秒。  604800000(ms)  -->  a week.
 hbase.master.hfilecleaner.plugins 用于设置一个或一组程序吧。与 hbase.master.logcleaner.plugins 类似。这个貌似是HFiles清理器。有需要的可以去研究一下官网原文。 org.apache.hadoop.hbase.master.cleaner.TimeToLiveHFileCleaner
 hbase.master.infoserver.redirect 用于配置一个布尔型值。控制Master主机是否监听Master主机上的网页端口并将来自该端口的请求共享给集群上的所有主机。 true 
 hbase.master.fileSplitTimeout 用于配置一个整型数字值。表示在给region服务器做文件分割操作时的最大等待时间,超过这一时间设定后若分割仍未完成,则会放弃分割操作。这条属性是HBASE1.x版本上的 'hbase.regionserver.fileSpliTimeout'属性,出于该分割操作目前是在Master主机侧完成的,因此将这条属性改名成 'hbase.master.fileSplitTimeout'。如果在HBASE系统上同时设定了这两条属性,则以 'hbase.master.fileSplitTimeout' 属性为准。 600000(ms) 
 hbase.regionserver.port 用于配置一个整型数字值。用于开放给Region主机绑定的网络端口号。这个端口是用来给HRegionServer进行RPC通信的。 16020 
 hbase.regionserver.info.port 配置一个整型数字值。用于开放给region主机的网页的端口号。将该值设定成-1可以关闭region主机网页管理功能。 16030
 hbase.regionserver.info.bindAddress 配置一个网络地址。region主机网页管理页面的网址。 0.0.0.0 
 hbase.regionserver.info.port.auto 配置一个布尔型值。用于配置Master或Region主机的网页页面在'hbase.regionserver.info.port'中配置的端口被其它程序占用的情况下自动搜寻可用端口来绑定。 false
 hbase.regionserver.handler.count 配置一个整型数字值。表示在Region主机上运行的RPC实例的数量,这个属性配置的值同样被应用于Master主机上handler的数量。这个数值的设定可能会影响到HBASE的性能,建议有需要的老铁去官网阅读一下原文。 30 
hbase.ipc.server.callqueue.handler.factor  配置一个数字值。这个值感觉是一个比例值(或者说百分比),是一个介于0~1之间的值。表示handler与调用队列(call queue)之间的资源分配关系吧。如果设定为0,则HBASE系统中所有的handler共用一个调用队列,如果设定为1,则每一个handler都有它自己的调用队列。 0.1 
 hbase.ipc.server.callqueue.read.ratio 配置一个数字值。与上一条类似。它配置的是方法调用队列(call queue)中读请求的数量在整个调用队列中的比例。这条属性的值介于0~1之间。如果配置成0,表示不对调用队列call queue作读、写请求分组操作,所有调用队列对于读、写来说是共享的,哪个队列会被用于哪种请求完全随缘。如果配置成0.x的形式,则就会有0.x比例的调用队列被分配给读请求专用。如果配置成1,表示读请求只会被分配到恒1个调用队列,其余的全被分配给写请求专用。 0.0 
 hbase.ipc.server.callqueue.scan.ratio 配置一个数字值。用于将读请求专用调用队列(read call queue)按这条属性配置的比例值来分配成短时读取(small-read)调用队列和长期读取(long-read)调用队列。其实我也不太理解这个短读取队列和长读取队列到底是什么意思。我猜,应该是短时读取在读取完毕后会被释放资源吧。这条属性的值如果被配置成0或者1,则短读取和长读取的比例在读专用队列中是随缘分配的。设置成0.x则是按比例分配的。 如果有需要的老铁,建议去阅读一下官网原文,毕竟我对这条属性的含义也不是很理解。
 hbase.regionserver.msginterval 配置一个整型数字值。Region主机与Master主机通信的时间间隔。 3000(ms) 
 hbase.regionserver.logroll.period 配置一个整型数字值。 这条不太懂。似乎是提交日志滚动覆盖的周期。 3600000 
 hbase.regionserver.logroll.errors.tolerated 配置一个整型数字值。 这条也不太懂。似乎是HBASE对连续的WAL的关闭错误次数容忍度。连续的WAL错误产生次数超过设定的值时,会让该Region主机被中止运行。
 hbase.regionserver.hlog.reader.impl 配置一个程序类名。WAL文件读取器的程序名称。  org.apache.hadoop.hbase.regionserver.wal.ProtobufLogReader
 hbase.regionserver.hlog.writer.impl 配置一个程序类名。WAL文件写出器的程序名称。   org.apache.hadoop.hbase.regionserver.wal.ProtobufLogWriter
 hbase.regionserver.global.memstore.size 算是配置一个整型数字值吧。表示Region服务器在新的更新被阻塞和强制刷新之前的最大内存占其总堆内存的大小。默认设置成Region服务器内存的40%。等待(阻塞)更新和强制刷新直到Region服务器中总内存使用量达到'hbase.regionserver.global.memstore.size.lower.limit'属性中设置的值为止。本条属性目前是被置为空的,目的是为了让旧的属性 'hbase.regionserver.global.memstore.upperLimit' 发挥作用。(搞不懂)  none
 hbase.regionserver.global.memstore.size.lower.limit Region服务器在被强制刷新之前的最大内存占总内存的大小。默认设置成'hbase.regionserver.global.memstore.size'属性中设置的值的95%。这段英文太绕了,看的很懵,有需要的老铁自己去官网看原文吧。  none
 hbase.systemtables.compacting.memstore.type    none
 hbase.regionserver.optionalcacheflushinterval 配置一个整型数字值。用于配置编辑操作在内存中的最大存在时长,超过这一设定时长后本次编辑操作将被自动刷新(being automatically flushed)。将该值设置为0会关闭自动刷新功能,编辑操作将会一直存在于内存中。  3600000(ms)
 hbase.regionserver.dns.interface 配置Region服务器上报其IP地址的网络接口的名称。  default
 hbase.regionserver.dns.nameserver 被Region服务器用于确定Master的主机名以进行通信等操作的DNS的域名或IP地址  default
 hbase.regionserver.region.split.policy 配置一个Java类名字符串。Region的分割策略。当前可用的几种Region分割策略类有:BusyRegionSplitPolicy, ConstantSizeRegionSplitPolicy, DisabledRegionSplitPolicy, DelimitedKeyPrefixRegionSplitPolicy, KeyPrefixRegionSplitPolicy, SteppingSplitPolicy。如果应用了DisabledRegionSplitPolicy策略的话,将会无法手动分割Region。  org.apache.hadoop.hbase.regionserver.SteppingSplitPolicy
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     

唉,后面心情好了再更吧。。。

HBase数据库配置中各配置项的释义及默认值的更多相关文章

  1. winform中的dateTimePicker控件设置默认值为空

    winform中的dateTimePicker控件设置默认值为空   第一步:设置Format的属性值为“Custom” 第二步:设置CustomFormat的属性值为空,需要按一个空格键

  2. Apollo 中配置String、Map和List和默认值

    摘要:在Apollo 中,配置String.Map和List等类型的信息,同时设置默认值. 综述   随着业务需求的变更,需要在Apollo中配置一个Map<String, List>类型 ...

  3. oracle数据库的一个表中,怎么设置字段的默认值

    如果表已经存在,用如下方法设置默认值. alter table 表名 modify 字段名 default 默认值; 如test表中设置address字段为'浙江省',可用如下语句: alter ta ...

  4. 关于mvc中@Html.DropDownListFor和@Html.DropDownList默认值无法选中问题简单总结

    当我们在做类似编辑功能的时候,会给定select选中默认值,然而mvc中偶尔这个功能不能用,或者是强类型的@Html.DropDownListFor不能用.凑巧今天遇到问题,解决问题时发现了mvc的一 ...

  5. es6(三):es6中函数的扩展(参数默认值、rest参数、箭头函数)

    1.函数可以设置参数默认值 function test1(x,y=1){ console.log(x,y) } test1(10)//10 1 2.rest参数:形式为...变量名 function ...

  6. 如何修改word文档中每行字符的最大默认值和每页最大行数默认值

    事情起因是这样的,小明在写论文的过程中,发现自己的文档的字与字的间距看起来比其他人的字符间距大,于是觉得奇怪,明明设置了一样的格式啊,设置每行38个字符,每页34行,为什么小明写的文档字符间距看着比较 ...

  7. Django中 如何修改models字段的默认值

    场景描述: 在建表的时候,新闻表的内容简介字段,给的默认值是可以为空的,但是没有设置默认值为blank,那么,这种情况下,对于只有标题,没有内容简介的新闻来讲,发布之后,前端显示的内容简介位置是non ...

  8. (转载)JAVA中八种基本数据类型的默认值

    原文链接: http://simon-c.iteye.com/blog/1016031 引用 For type byte, the default value is zero, that is, th ...

  9. 在JSP中使用el函数标签获取默认值(男女性别选项)

    http://blog.csdn.net/b10060224/article/details/45771025

随机推荐

  1. bitset用法小结

    bitset bitset大概就是类似于bool数组一样的东西 但是它的每个位置只占1bit(特别特别小) bitset的原理大概是将很多数压成一个,从而节省空间和时间(暴力出奇迹) 一般来说bits ...

  2. Git 最佳实践:分支管理

    5月份,为统一团队git分支管理规范,刚开始准备自己写,在网上搜了下,发现不少不错的git分支管理实践.最后我为团队选择了这个git分支管理实践 A successful Git branching ...

  3. 前后端分离djangorestframework—— 接入支付宝支付平台

    支付宝 简介 支付宝是什么不用多说了,本次教程适合初学者 前提准备 话不多说,干就完了 1.注册开发者账号,设置公钥私钥 首先进入支付宝开发者平台:传送门 ,有账号直接登录,没账号用你平时用来付款收钱 ...

  4. sql server 错误日志errorlog

    一 .概述 SQL Server 将某些系统事件和用户定义事件记录到 SQL Server 错误日志和 Microsoft Windows 应用程序日志中. 这两种日志都会自动给所有记录事件加上时间戳 ...

  5. 文件操作命令(move)

    move命令: // 描述: 将一个或多个文件从一个目录移动到另一个目录. // 语法: move [{/y | /-y}] [<Source>] [<Target>] // ...

  6. nginx主配置文件详解

    #定义Nginx运行的用户和用户组user www www; #nginx进程数,建议设置为等于CPU总核心数.worker_processes 8; #全局错误日志定义类型,[ debug | in ...

  7. SpringBoot使用注解实现事务管理

    conttoller controller和普通的controller类一样, 不用改变 @RequestMapping(value = "/path/{id}", method ...

  8. 本机不安装Oracle客户端,使用PL/SQL Developer和 Instant Client 工具包连接oracle 11g远程数据库

    一.先到Oracle网站下载Instant Client 下载地址:http://www.oracle.com/technetwork/cn/database/features/instant-cli ...

  9. Spring类型转换(Converter)

    Spring的类型转换 以前在面试中就有被问到关于spring数据绑定方面的问题,当时对它一直只是朦朦胧胧的概念,最近稍微闲下来有时间看了一下其中数据转换相关的内容,把相应的内容做个记录. 下面先说明 ...

  10. JMeter测试工具的使用

    Jmeter下载地址: http://jmeter.apache.org/download_jmeter.cgi 解压Jmeter压缩包,双击jmeter.bat 右击测试计划 右击线程组 右击HTT ...