Cassandra 卡桑德拉工具的使用卡桑德拉应力

Cassandra 卡桑德拉工具的使用卡桑德拉应力,cassandra,cassandra-stress,Cassandra,Cassandra Stress,我想用1、2、3和4个实例对我的Cassandra集群进行基准测试。所以我在一个节点上运行了cassandra应力工具。基准测试显示了奇怪的结果,请参见下图(->当线程数较少时,单节点集群比2-/3-/4节点集群具有更多的ops/sek) 我的结果(x轴=线程,y轴=ops/sek,数据集=集群(1,2,3,4)中的节点): 与来自的结果相比,我的结果似乎不正确 我现在的问题是:如果在集群的一台机器上运行以下命令,是否正确使用该工具: cassandra-stress write 我也试过

我想用1、2、3和4个实例对我的Cassandra集群进行基准测试。所以我在一个节点上运行了cassandra应力工具。基准测试显示了奇怪的结果,请参见下图(->当线程数较少时,单节点集群比2-/3-/4节点集群具有更多的ops/sek)

我的结果(x轴=线程,y轴=ops/sek,数据集=集群(1,2,3,4)中的节点):

与来自的结果相比,我的结果似乎不正确

我现在的问题是:如果在集群的一台机器上运行以下命令,是否正确使用该工具:

cassandra-stress write
我也试过了,但没有任何效果:

cassandra-stress write -node ip1,ip2,...
另见我的另一个问题,谢谢

--编辑:Jim的解决方案--
从C*-集群之外的其他EC2实例运行cassandra工具,但在同一LAN中运行(这样您就可以使用内部ips 10.x.x.x)。我启动了一个1/2/4节点集群,其中包含4个独立的基准调用方节点。每个节点都有以下命令之一:

第一次写作:

cassandra-stress write n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=1..1000000 -node ip1,ip2,ip3,ip4
cassandra-stress write n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=1000001..2000000  -node ip1,ip2,ip3,ip4
cassandra-stress write n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=2000001..3000000 -node ip1,ip2,ip3,ip4
cassandra-stress write n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=3000001..4000000 -node ip1,ip2,ip3,ip4
然后使用read命令读取此数据:

cassandra-stress read n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=1..1000000 -node ip1,ip2,ip3,ip4
cassandra-stress read n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=1000001..2000000  -node ip1,ip2,ip3,ip4
cassandra-stress read n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=2000001..3000000 -node ip1,ip2,ip3,ip4
cassandra-stress read n=1000000 cl=one -mode native cql3 -schema keyspace="keyspace1" -pop seq=3000001..4000000 -node ip1,ip2,ip3,ip4
这里是阅读的结果

1 Node cluster: 149,000 ops/sec
2 Node cluster: 348,000 ops/sec
4 Node cluster: 480,000 ops/sec



谢谢你,Jim!

如果你只在一个节点上运行cassandra stress,那么我认为这将是预期的结果。一台机器无法使四节点集群饱和,这将是一个瓶颈

此外,如果您在其中一个cassandra节点上运行cassandra stress,则通过同时运行cassandra和stress client,该节点将被双重加载。这将给该计算机的CPU和网络连接带来额外的压力


为了获得集群吞吐量的真实情况,您应该从集群外的多台机器(但在同一个LAN上)运行压力。

谢谢Jim,这就是解决方案:我运行了一个1/2/4节点Cassandra集群,并通过其他4个EC2实例(在同一LAN中)启动了Cassandra压力工具.现在读操作/秒似乎是现实的C:149000(C*-集群中的1个节点)、348000(C*-集群中的2个节点)和480000(C*-集群中的4个节点)。这些最终数字是您对所有压力测试结果的汇总吗?谢谢,我现在正在处理这样一个问题。