首页 理论教育HBase配置技巧大数据挖掘在医药领域的应用

HBase配置技巧大数据挖掘在医药领域的应用

【摘要】:hbase-env.sh:设置HBase运行所需的工作环境。log4j.properties:HBase所使用的日志模块log4j的配置文件。上述七个HBase配置文件的路径和内容在每个节点上都必须一致。hbase.tmp.dir:HBase节点在本地文件系统中的临时目录,默认值为${java.io.tmpdir}/hbase-${user.name}。hbase.master.wait.on.regionservers.mintostart:HBase集群启动时HMaster在有多少个HRegionServer启动后开始分配任务,默认值为1。hbase.balancer.period:HMaster运行HRegion均衡器的周期,单位是毫秒,默认值为300000。hbase.client.write.buffer:HBase服务器端和客户端写入数据库缓冲区的大小,默认值为2097152,即2M。

1.配置文件

hbase-site.xml:HBase最主要的配置文件。

hbase-env.sh:设置HBase运行所需的工作环境。

backup-masters:列出哪些服务器应启动备用HMaster进程。

regionservers:列出了哪些服务器启动HRegionServer进程。

hbase-policy.xml:PRC服务器对客户端请求进行权限验证时使用的策略配置文件,仅当启用HBase安全管理时才使用。

log4j.properties:HBase所使用的日志模块log4j的配置文件。

Hadoop-metrics2-hbase.properties:该配置文件将HBase集群与Hadoop的Metrics2框架相关联,可用于实时收集HBase集群的各类监控信息。

上述七个HBase配置文件的路径和内容在每个节点上都必须一致。

2.主要配置项

hbase.cluster.distributed:是否为分布式运行模式,默认值为false。

hbase.tmp.dir:HBase节点在本地文件系统中的临时目录,默认值为${java.io.tmpdir}/hbase-${user.name}。

hbase.rootdir:HBase所保存文件的根目录,默认值为${hbase.tmp.dir}/hbase。

hbase.fs.tmp.dir:HBase集群在HDFS文件系统中保存临时数据的中转目录,默认值为/user/${user.name}/hbase-staging。

hbase.local.dir:HBase节点在本地文件系统中用于本地存储的目录,默认值为${hbase.tmp.dir}/local。

hbase.zookeeper.quorum:哪些服务器上运行ZooKeeper进程,默认值为localhost。

hbase.zookeeper.property.dataDir:ZooKeeper用于保存数据的目录,默认值为${hbase.tmp.dir}/zookeeper。

hbase.zookeeper.property.maxClientCnxns:每个ZooKeeper服务器允许接受的客户端并发连接数量,默认值为300。

zookeeper.session.timeout:ZooKeeper会话的超时时间,单位是毫秒,默认值是90000。

hbase.master.port:HMaster进程绑定的端口号,默认值为16000。

hbase.master.info.port:HBase Master的Web页面的端口号,默认值为16010。

hbase.master.wait.on.regionservers.mintostart:HBase集群启动时HMaster在有多少个HRegionServer启动后开始分配任务,默认值为1。(www.chuimin.cn)

hbase.regionserver.port:HRegionServer进程绑定的端口号,默认值为16020。

hbase.regionserver.info.port:HRegionServer的Web页面的端口号,默认值为16030。

hbase.regionserver.handler.count:每台HRegionServer和HMaster上用于侦听响应客户端请求的线程数量,默认值为30。

hbase.ipc.server.callqueue.handler.factor:每台HRegionServer和HMaster上对应于处理线程数的调用等待队列数量因子,范围在0~1之间,默认值为0.1,表示每10个处理线程共享一个调用等待队列。

hbase.hregion.max.filesize:一个HRegion中所有Hfile文件合计大小上限,默认值为10737418240,即10G。

hbase.hregion.majorcompaction:HRegion数据自动进行周期性主压缩的间隔时间,单位是毫秒,默认值为604800000,即7天。

hbase.hregion.majorcompaction.jitter:随机执行周期性主压缩操作的前后时间范围,默认值为0.5。

hbase.hregion.memstore.flush.size:Store中的MemStore达到多大时会存入磁盘生成StoreFile,默认值为134217728,即128M。

hbase.regionserver.global.memstore.size:HRegionServer中所有MemStore合计大小的上限,按照堆内存的百分比计算,默认值为0.4,即上限为堆内存的40%。

hfile.block.cache.size:最多使用堆内存的百分之多少作为StoreFile的块缓存,默认值为0.4,即上限为堆内存的40%。

hbase.balancer.period:HMaster运行HRegion均衡器的周期,单位是毫秒,默认值为300000。

hbase.client.write.buffer:HBase服务器端和客户端写入数据库缓冲区的大小,默认值为2097152,即2M。

hbase.security.authentication:是否启用HBase客户端安全认证,默认值为simple,表示不进行安全认证。

3.配置建议

hbase-site.xml必须配置以下参数:

建议配置以下参数:

hbase-env.sh必须配置以下参数:

4.客户端配置

在客户端解压HBase安装包,并将解压后的lib/子目录和conf/子目录加入客户端的CLASSPATH环境变量中;

客户端的配置比较简单,只需要在conf/hbase-site.xml配置文件中设置好参数hbase.zookeeper.quorum即可,示例如下: