cassandra cassandra-stress

Uso de la herramienta Cassandra cassandra-stress



(1)

Quiero comparar mis Cassandra Clusters con 1, 2, 3 y 4 instancias. Así que ejecuté la herramienta de estrés cassandra en uno de los nodos. El benchmark muestra resultados extraños, vea el gráfico a continuación (-> el clúster de un nodo tiene más ops / sek que el clúster de 2 / 3- / 4 nodos cuando hay pocos hilos).

Mis resultados (x-axis = hilos, eje y = ops / sek, conjunto de datos = nodos en cluster (1, 2, 3, 4):

En comparación con los resultados de este sitio de referencia , mis resultados parecen no ser correctos.

Mi pregunta ahora es: ¿Uso la herramienta correctamente si ejecuto el siguiente comando en una máquina del clúster?

cassandra-stress write

También probé esto sin ningún efecto:

cassandra-stress write -node ip1,ip2,...

Ver también mi otra pregunta aquí . ¡Gracias!

- EDIT: Solución de Jim -
Ejecute la herramienta de cassandra desde otras instancias EC2 fuera del clúster C *, pero en la misma LAN (para que pueda trabajar con ips internos 10.xxx). Lancé un clúster de nodos 1/2/4 con 4 nodos de referencia de llamadas separadas. Cada uno de ellos obtuvo uno de los siguientes comandos:

Primera escritura:

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

Luego leyendo estos datos con el comando de lectura:

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

Aquí los resultados de la lectura

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



Gracias, Jim!


Si solo está ejecutando cassandra-stress en un nodo, entonces creo que este sería el resultado esperado. Una sola máquina no puede saturar un clúster de cuatro nodos y sería un cuello de botella.

Además, si está ejecutando cassandra-stress en uno de los nodos de cassandra, entonces ese nodo estará doblemente cargado al ejecutar tanto Cassandra como el cliente de estrés. Esto ejercerá una presión adicional sobre la CPU y la conexión de red para esa máquina.

Para obtener una imagen real del rendimiento de su clúster, debe ejecutar el estrés desde múltiples máquinas fuera del clúster (pero en la misma LAN).