使用 Thrift 在群集上缩放 HBase 写入



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

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

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

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

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

非常感谢有关读/写扩展的任何其他技巧(尤其是使用Thrift)。

在 HBase 中,要通过节点增加获得性能,您应该有一个不错的"rowkey"分布。只要集群中有"热点"(非常繁忙的区域服务器),增加集群大小就不会有任何好处。首先查看有关行键设计的文章。

如果您不需要立即读取(如果您对异步写入感到满意),则可以从 stumbleon 检查异步 hbase 客户端以提高性能。

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

    通过
  • 一个流还是通过多个服务器同时将数据发送到 hbase 更好?
  • HBase Thrift:如何连接到远程HBase主/集群?

最新更新