HBase Sync 功能导致 HBase 入库性能下降
本文分享自天翼云开发者社区《HBase Sync功能导致HBase入库性能下降》,作者:5****m
问题背景与现象
HBase 入库慢,regionserver 日志中大量打印 slow sync。
原因分析
1.对比正常写入时间段监控,检查 HBase 服务整体 CPU、内存以及 NameNode RPC 在异常时间段是否增加;
2.检查 regionserver 日志中 slow sync 打印是否集中在个别 RegionServer 节点;
3.如果 slow sync 集中于个别 regionserver 节点,检查该节点是否存在热点 region、节点 RPC 是否持续被占用、是否 Full GC,请求量是否增加。
4.如果 regionserver 节点中 slow sync 无规律,检查 datanode 日志中 slow 打印情况,根据 slow 类型分析写入慢原因;
a.Slow manageWriterOsCache:将块写入 OS 缓存有延迟。
b.Slow BlockReceiver write packet to mirror :网络上写块有延迟。
c.Slow BlockReceiver write data to disk cost 、Slow flushOrSync:将块写入磁盘有延时。
根据 regionserver 中写入慢的 block id 在 NameNode 日志中查询块写入链路,根据链路信息分析写入三个副本时哪个副本写入有异常,DataNode 性能不足,导致写入文件耗时较长。
解决办法
1.网络原因联系网络工程师整改网络
2.磁盘问题需具体分析是磁盘性能不足还是磁盘坏道
3.如果 HDFS 或 HBase 服务写入性能已达到瓶颈,可关闭 sync 功能。
hbase.regionserver.hfile.durable.sync=false
hbase.regionserver.wal.durable.sync=false
评论