【问题标题】:Scaling HBase writes on a cluster using Thrift使用 Thrift 在集群上扩展 HBase 写入
【发布时间】:2012-07-27 22:58:20
【问题描述】:

我们正在尝试使用 Thrift 在集群上扩展 HBase 写入。 (我们的 HBase 应用程序使用 Python,因此需要 Thrift。)

尽管集群中的节点数量增加了,但我们看到的写入速度是相同的。

首先,运行 Thrift 的推荐策略是: 1. 客户? 2. HBase 主控? 3. HBase 区域服务器?

如果在 #1 或 #2 上,客户端或 HBase 主服务器会负责将请求拆分到各个区域服务器吗?在我们的案例中似乎没有。

如果#3,那么我必须修改客户端以写入特定区域服务器,并随机写入。我可以这样做,但这似乎违背了使用 HBase 的目的。

非常感谢任何其他关于读/写缩放(尤其是 Thrift)的技巧。

【问题讨论】:

    标签: scalability hbase thrift


    【解决方案1】:

    在 HBase 中,要通过增加节点来获得性能,您应该有一个不错的“行键”分布。只要您的集群中有“热点”(一个非常繁忙的区域服务器),您就不会从增加集群大小中获得任何收益。从行键设计中查看article。

    如果您不需要立即阅读(如果您对异步写入感到满意),您可以检查来自 stumbleupon 的asynch hbase client 以获得性能提升。

    【讨论】:

      【解决方案2】:

      我在这两个问题上找到了答案,看来我们将使用#3(写入特定区域服务器,并随机写入):

      【讨论】:

      • 我们遇到了同样的问题(大量使用 python 写入 HBase),但即使在放入之前直接连接到多个区域服务器之后,写入似乎也没有变得更快。我知道这是很久以前的事了,但还需要其他步骤(比如启动更多 Zookeeper 服务器)吗?
      猜你喜欢
      • 2012-06-10
      • 2016-04-30
      • 1970-01-01
      • 1970-01-01
      • 2013-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多