这是Why is my cassandra throughput not improving when I add nodes?的后续问题。我已经尽可能地将我的客户端和节点配置到这里建议的内容:http://docs.datastax.com/en/cassandra/2.1/cassandra/install/installRecommendSettings.html。整个设置并不完全是世界级的(例如,客户端在具有32G RAM和现代处理器的笔记本电脑上)。我现在更感兴趣的是为cassandra基础设施建立直觉。
我注意到如果我关闭集群中除了一个节点之外的所有节点并对其运行我的测试客户端,我的吞吐量大约为120-140插入/秒,CPU利用率为~30-40%。当我启动所有6个节点并对它们运行这个客户端时,我看到吞吐量约为110-120个插入/秒,我的CPU利用率达到~80-100%之间。
所有测试都使用干净的DB运行(我完全删除所有数据库文件并从头开始重新启动)并插入30M行。
我的测试客户端是多线程的,并且每个线程使用未记录的批处理专门写入一个分区,正如我的架构的各种来源所推荐的那样(例如https://lostechies.com/ryansvihla/2014/08/28/cassandra-batch-loading-without-the-batch-keyword/)。
这个CPU是否会出现预期的行为?