Cassandra:更大的复制因子=读取速度更快?

时间:2012-10-10 16:37:26

标签: cassandra

增加群集上的复制因子是否也会提高读取速度?

据我所知,当复制因子为1,并且有6个节点并且令牌均匀分布时 - 给定节点有数据的可能性仅为16,66%,如果它没有,它会询问负责的节点这需要额外的时间。

我想,在复制因子设置为6的情况下,每个节点都有完整的数据集,可以立即获取数据而无需询问其他节点(我们使用读取一致性= 1)。因此,增加复制因子应该提高阅读速度。它是否正确?

我们的应用程序写入次数相对较少,但每秒运行次数超过10万次。我们在集群中有6个节点,我们需要所有读取操作都非常快,这就是为什么我们正在寻找一种提高cassandra读取性能的方法。

2 个答案:

答案 0 :(得分:4)

这是正确的,只要你使用的是ConsistencyLevel.ONE。

答案 1 :(得分:4)

我实际上运行了ycsb基准测试 - 100%写入和100%读取测试。 增加复制因子似乎导致读取速度变慢,而一致性级别保持为1。

在8节点集群中,这里是我得到的数字:

1600万读取操作-yccsb工作负载C

rep.factor _ readtime(min)

1 _ 10.8840833333333

2 _ 11.1243666666667

4 _ 17.4050333333333

对于更大的尺寸,跳跃甚至更大。

任何人都可以解释原因吗?