Cassandra多次获取性能

3
我有一个Cassandra集群,行数相对较少(大约200万行,希望这对于Cassandra来说是“小”的)。每一行都是基于唯一的UUID键入的,并且每一行大约有200个列(多或少)。总的来说,这些都是相当小的行,没有二进制数据或大量文本,只有短字符串。
我刚刚完成了从旧数据库到Cassandra集群的初始导入。我已经在每台机器上调整了Cassandra的性能。进行了数亿次写入,但没有读取。现在到了使用它的时候,我发现读取速度非常慢。我正在使用pycassa进行multiget,每次从500到10000行不等。即使是500行,性能也很差,有时需要30秒以上。
什么原因会导致这种情况?在这样的大型导入之后,你会推荐哪些事项?谢谢。
2个回答

6

2

将多个获取操作分成较小的块是否可行?这样做可以将负载分散到多个节点上,并且具有更小的数据包进行反序列化,从而可能提高性能。

这就引出了下一个问题,您的读取一致性设置是什么?除了像@jbellis所提到的IO瓶颈外,如果需要特别高的一致性,则还可能存在网络流量问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接