我正在尝试在EC2上配置Cassandra集群 问题是(为了我的目的)我希望在N个机器集群中有N个副本(所有机器都应该有相同的数据)。
我做了以下事项:
- 制作N机群;所有种子;我部署了具有复制因子N
的模式
- 用WRITE ALL共识填充基数
- 现在我正在尝试使用WRITE ANY和READ ONE来访问数据
- 我负载平衡我的客户,理论上我应该有N倍更好的吞吐量,但事实并非如此。
nodetool在 Owns 列中显示100%的总和,而不是N * 100%(每个节点应该包含所有数据)。
有什么建议吗?
答案 0 :(得分:4)
如果您将副本增加到N,您将看不到任何吞吐量优势,因为Cassandra现在必须编写N个副本。除非您禁用read repair,否则您也不会在读取时看到任何吞吐量优势。
最佳做法是在增加N时保持副本计数不变。