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

时间:2012-06-15 20:43:34

标签: scalability hbase thrift

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

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

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

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

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

非常感谢有关读/写缩放的任何其他提示(特别是使用Thrift)。

2 个答案:

答案 0 :(得分:2)

在HBase中,为了在节点增加的情况下获得性能,你应该有一个像样的“rowkey”分布。只要群集中有“热点”(非常繁忙的区域服务器),就无法通过增加群集大小获得任何收益。检查行密钥设计上的article以开始。

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

答案 1 :(得分:2)

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