千家信息网

如何巡检HBase

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章给大家分享的是有关如何巡检HBase的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.集群巡检HBase是使用HDFS作为底层存储的NoSQL数据库,提供了满足实时
千家信息网最后更新 2026年11月04日如何巡检HBase

这篇文章给大家分享的是有关如何巡检HBase的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。


1.集群巡检


HBase是使用HDFS作为底层存储的NoSQL数据库,提供了满足实时性和随即读写功能的数据库服务。


每日早晚巡检HBase服务,检查各集群的HMaster和RegionServer状态,是否事务积压等问题。


1.1 查看Requests Per Second和Num.Regions

若为图中所示为0,则需要登录主机查看,通常这种情况会发生在重启节点主机后发生。



1.2 查看备用HMaster

每个库正常来说都有3个主节点,一个正在跑,两个备用,如图所示。



1.3 查看Software Attributes

图中所示,比较重要的是两个标出部分:

1:代表着本库的zookeeper节点,如果出现异常,总数会不正常的


2:代表着本库的平均region数,理论超过300就要进行合并操作的,但这个是根据业务的需求进行操作,业务侧提出数据库卡顿了,再进行合并操作即可。



1.4 查看Dead Region Servers

此项是以库为单位,登录每个库的HBase UI,若当前库内有HBaseregionserver宕掉的节点,则页面上会显示出如下情况:



出现这种情况,则说明当前库有非正常节点,可以尝试登陆该故障节点,查看故障原因(如HBase进程消失,主机意外重启,主机死机等)


2.参数调优


2.1 HBase HRegion 最大化压缩

hbase.hregion.majorcompaction:所有 HStore-

Files"最大化"压缩之间的时间,要禁用自动的最大化压缩,请将此值设置为 0。



2.2 RegionServer 小型压缩线程计数

hbase.regionserver.thread.compaction.small:

regionserver做Minor Compaction时线程池里线程数目,可以设置为5



2.3 HBase Region 分割限制

hbase.regionserver.regionSplitLimit:控制最大的region数量,超过则不可以进行split操作,默认是2147483647,设置1可以禁止自动的split,通过人工, 或者写脚本在集群空闲时执行。



2.4 HBase 文件最大大小

hbase.hregion.max.filesize:默认是10G, 如果任何一个column familiy里的StoreFile超过这个值, 那么这个Region会一分为二,因为region分 裂会有短暂的region下线时间(通常在5s以内),为减少对业务端的影响,建议手动定时分裂,可以设置大些。



2.5 HBase 客户端写入缓冲

hbase.client.write.buffer:客户端写buffer,设置autoFlush为false时,当客户端写满buffer才flush 默认为2M,写缓存大小,推荐设置为5M,单位是字节,当然越大占用的内存越多。



2.6 HBase Region Server 处理程序计数

hbase.regionserver.handler.count:该设置决定了处理RPC的线程数量,默认值是30,通常可以调大,但不是越大越好,设置过大会占用过多的内存, 导致频繁的gc,或者出现oom。



2.7 HFile 块缓存大小

hfile.block.cache.size:默认值0.25,regionser-

ver的block cache的内存大小限制,在偏向读的业务中,可以适当调大该值,需要注意的是 hbase.regionserver.global.memstore.upperLimit的值和hfile.block.cache.size的值之和必须小于0.8。



2.8 RegionServer 中所有 Memstore 的最大大小

hbase.regionserver.global.memstore.upperLimit,hbase.regionserver.global.memstore.size:默认值0.4 这个参数的作用是防止内存占用过大,当ReigonServer内所有region的memstores所占用内存总和达到heap的 40%时,HBase会强制block所有的更新并flush这些region以释放所有memstore占用的内存。


2.9 Memstore 刷新的低水位线

hbase.regionserver.global.memstore.lowerLimit,hbase.regionserver.global.memstore.size.lower.limit:默认值0.35 同upperLimit,只不过lowerLimit在所有region的memstores所占用内存达到Heap的35%时,不flush所有的 memstore。它会找一个memstore内存占用最大的region,做个别flush,此时写更新还是会被block。lowerLimit 算是一个在所有region强制flush导致性能降低前的补救措施。在日志中,表现为 "** Flush thread woke up with memory above low water


2.10 HBase Memstore 刷新大小

hbase.hregion.memstore.flush.size:如 memst-

ore 大小超过此值(字节数),Memstore 将刷新到磁盘。这个参数的作用是当单个Region内所有的 memstore大小总和超过指定值时,flush该region的所有memstore。RegionServer的flush是通过将请求添加一个 队列,模拟生产消费模式来异步处理的。那这里就有一个问题,当队列来不及消费,产生大量积压请求时,可能会导致内存陡增,最坏的情况是触发OOM。


感谢各位的阅读!关于"如何巡检HBase"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

内存 大小 最大 节点 业务 主机 情况 线程 参数 客户 客户端 数据 数据库 集群 处理 两个 代表 作用 内容 单位 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技工作委员会毛军 互联网医疗科技 互联网科技金融公司 互联网科技英文 碳银互联网科技 朗涯互联网科技 掌上梦互联网科技 科技互联网创业计划书 联恩商钥互联网科技有限公司 深圳卡尔迅互联网科技有限公司怎么样 博兴的互联网电子科技公司 互联网科技与管理 互联网金融中的现代科技 宝灵互联网科技有限公司 中国科技创新与世界互联网大会 内蒙古九一互联网科技 卓翼科技产业互联网合作 群盈汇互联网科技有限公司 滨湖区互联网智能科技产品有哪些 杭州科技互联网公司有哪些 科技服务与互联网 中正互联网科技招聘 滨湖区互联网智能科技产品供应 深圳互联网科技怎么样 北京三清互联网科技 湖南诚度互联网科技有限公司 中国航天科技大学国际工业互联网 启辰互联网科技 广州有谷有贝互联网科技有限公司 世界互联网科技成果奖
0