
正文
hbase的存在问题的简单介绍
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
HBase写数据的异常问题以及优化
和读相比,HBase写数据流程倒是显得很简单:数据先顺序写入HLog,再写入对应的缓存Memstore,当Memstore中数据大小达到一定阈值(128M)之后,系统会异步将Memstore中数据flush到HDFS形成小文件。
BloomFilter的数据存在StoreFile的meta中,一旦写入无法更新,因为StoreFile是不可变的。
出现这种问题的原因是因为和服务器通信超时导致的。所以需要将下面两个参数的默认值进行调整。hbase.snapshot.region.timeout hbase.snapshot.master.timeoutMillis 这两个值的默认值为60000,单位是毫秒,也即1min。
相关问答
Q1: HBase宕机恢复-SplitWAL
在0版本 HBase 实现了新的分布式事务框架 Procedure V2(HBASE-12439),使用 HLog 存储这种单机事务(DDL、Split、Move 等操作)的中间状态。
发现有张HBase表丢失了一半数据,然后在HBase Master UI上发现Region的数量少了一半,但是随后进入HDFS目录中查看,其实Region数据是存在的,那么原因就确定了,是META表中数据丢失,想要恢复数据,需要对META表进行数据修复。
HBase 运行在 HDFS 上,HDFS 的多副本存储可以让它在岀现故障时自动恢复,同时 HBase 内部也提供 WAL 和 Replication 机制。
Master负载并不很高,基本采用热备的方式来实现Master高可用 RegionServer宕机的恢复主要原因有。
测试环境正常,生产环境下,时不时出现HRegionServer挂掉的情况, 而HMaster正常。 重启Hbase之后,短时间内恢复正常,然而一段时间之后,再次出现RegionServer挂掉的情况。 因此,我们决定对此故障进行深入排查,找出故障原因。
Q2: 关于hbase的问题,开启hbase后一会hmaster和hregionserver就没了...
1、测试环境正常,生产环境下,时不时出现HRegionServer挂掉的情况, 而HMaster正常。 重启Hbase之后,短时间内恢复正常,然而一段时间之后,再次出现RegionServer挂掉的情况。 因此,我们决定对此故障进行深入排查,找出故障原因。
2、使用上述解决方案后本次异常依旧存在,并且HMaster和HRegionServer都不断的自动挂掉。
3、每个Region的每个列族会对应一个MemStore,假设HBase表都有一个列族,那么每个Region只包含一个MemStore。一个MemStore大小通常在128~256MB,见参数: hbase.hregion.memstore.flush.size 。
4、此问题产生的主要原因是因为zookeeper集群未关闭防火墙。
5、还有另外的原因 看看你的master是否等于localhost ,master不可能等于localhost。将集群每个主机的主机名修改为regionservers文件中对应的主机名,问题解决。
hbase的存在问题的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、hbase的存在问题的信息别忘了在本站进行查找喔。







