我正在运行一个小型群集,其中包含两个HBase 0.94.7区域服务器。我发现通过区域服务器的加载请求非常不平衡。从网络用户界面,我得到:区域服务器负载不均衡的HBase区域
Region1: numberOfOnlineRegions=1, usedHeapMB=26, maxHeapMB=3983
Region2: numberOfOnlineRegions=22, usedHeapMB=44, maxHeapMB=3983
该region2被串联为主。我检查了负载平衡器已打开。我在主日志中找到一些日志:
INFO org.apache.hadoop.hbase.master.LoadBalancer: Skipping load balancing because balanced cluster; servers=2 regions=1 average=0.5 mostloaded=1 leastloaded=0
DEBUG org.apache.hadoop.hbase.master.LoadBalancer: Balance parameter: numRegions=10, numServers=2, max=5, min=5
INFO org.apache.hadoop.hbase.master.LoadBalancer: Calculated a load balance in 12ms. Moving 5 regions off of 1 overloaded servers onto 1 less loaded servers
DEBUG org.apache.hadoop.hbase.master.LoadBalancer: Balance parameter: numRegions=8, numServers=2, max=4, min=4
INFO org.apache.hadoop.hbase.master.LoadBalancer: Calculated a load balance in 0ms. Moving 4 regions off of 1 overloaded servers onto 1 less loaded servers
INFO org.apache.hadoop.hbase.master.LoadBalancer: Skipping load balancing because balanced cluster; servers=2 regions=1 average=0.5 mostloaded=1 leastloaded=0
INFO org.apache.hadoop.hbase.master.HMaster: balance hri=LogTable,\x00\x00\x01\xE8\x00\x00\[email protected]\x09\xB2\xBA4$\xC3Oe,1374591174086.65391b7a54e9c8e85a3d94bf7627fd20., src=region2,60020,1374587851008, dest=region1,60020,1374587851018
DEBUG org.apache.hadoop.hbase.master.AssignmentManager: Starting unassignment of region LogTable,\x00\x00\x01\xE8\x00\x00\[email protected]\x09\xB2\xBA4$\xC3Oe,1374591174086.65391b7a54e9c8e85a3d94bf7627fd20. (offlining)
看来负载不能从区域2到区域1平衡。我不知道这是否是配置问题?我应该检查region1的哪个参数?
感谢
感谢您的回复。我的rowkey由ID,日志日期和生成的散列值组成。我不确定这是顺序行键的情况。如果是这样,我如何创建预分割表? –
ID是否是顺序的?查看这些预分割表的链接:http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/util/RegionSplitter.html和http://hbase.apache .org/book/perf.writing.html – Tariq
这些ID不是顺序的。这很像日志类型。实际上,我现在关闭了负载均衡,因为我发现一旦开启,我在这里发布了另一个严重问题:[HMaster aborted](http://stackoverflow.com/questions/17792619/fatal-master-hmaster-unexpected -state-不能过境,它到离线)。你能看看这个问题吗?在我看来,其他地区的服务器不能正常工作。 –