限制hbase中的表数及其对性能的影响

时间:2012-08-22 05:35:58

标签: hbase

我们生产中的hbase架构有5个表。我们有N个客户,其中只有10%的客户在任何特定时刻都处于活跃状态。所以对我来说,看起来浪费资源来保持剩下的90%客户的数据活跃。我在考虑为每个客户端创建5个表,以便我可以启用活动客户端表并禁用其余客户端表。根据我所读到的,如果我们每个区域服务器超过1000个区域,那么性能开始降低。但我肯定不会达到这个限度。我的问题

  1. 如果我禁用了一组表,那么这是否意味着我对hbase的负载较少?
  2. 这看起来总体上是一个合理的策略吗?

1 个答案:

答案 0 :(得分:0)

您对表演的期望是什么?

您如何确定哪些客户是活跃的/不活跃的?

如何为非活动客户端禁用自动未使用的表?

那么读取的访问模式是什么?您的客户只会在其单一表中读取数据吗?

处理大量表会导致以下几个问题:

  • 更多区域,因为1个表包含-at至1个区域,即使没有数据也是如此。 HBase必须处理更多活动的StoreFiles等。
  • 更多memstore(即:内存使用)因为没有定期刷新到磁盘(HFile),但只有在达到配置的阈值时才会刷新。