hbase中太多区域有什么影响?

elcex8rz  于 2021-06-09  发布在  Hbase
关注(0)|答案(1)|浏览(509)

现在我正在管理一个小型的hbase集群,它由大约10个区域服务器组成,每个区域服务器上有1000多个区域。它看起来不太好,因此日志文件不断警告“区域总数接近上限1000”。请考虑一下http://hbase.apache.org/book.html#ops.regionmgt’. 但集群长期以来运行良好,无一例外。
我参考了官方文件,发现描述如下:
如果以相同的速率填充所有区域,则全局内存使用情况会导致在区域过多时强制执行微小的刷新,从而生成压缩。对同一数据进行数十次重写是你最不想做的事情。例如,平均填充1000个区域(使用一个系列),让我们考虑5gb的全局memstore使用率下限(区域服务器将有一个大堆)。一旦它达到5gb,它将强制刷新最大的区域,在这一点上,他们应该几乎都有大约5mb的数据,所以它会刷新这个数量。5mb插入之后,它将刷新另一个区域,该区域现在将有超过5mb的数据,依此类推。这是目前地区数量的主要限制因素;
但我不明白为什么这是主要的限制因素。如果把这些小内存逐一冲掉,会造成什么影响?

fkaflof6

fkaflof61#

kevin o'dell的《构建hbase应用程序:第14章》一书中写道:“这些压缩将导致群集上的过度搅动,影响性能。当触发特定操作(自动刷新、强制刷新和用户调用压缩)时,如果需要,hbase将启动压缩。当许多压缩同时运行时,这被称为“压实风暴”
我希望现在天气晴朗。

相关问题