java cassandra hector

java - La descarga programática de datos a cassandra cada vez que se cierre la cassandra



hector (4)

Estoy usando incrustado Cassandra. Cuando apago y reinicio mis datos de servicio Cassandra se pierden. Pienso que los datos decentes no se han introducido correctamente en el disco. Así que intenté usar nodetool para vaciar los datos manualmente y comprobar si los datos están disponibles. Pero nodetool no parece funcionar correctamente para el servicio Cassandra integrado. Obtuve el siguiente error:

c:/vijay/cassandra/bin>nodetool -host 192.168.2.86 -p 7199 drain

Starting NodeTool

Failed to connect to ''192.168.2.86:7199'': Connection refused: connect

Intenté establecer las propiedades jmx todavía estoy recibiendo un error. Agregué las siguientes líneas a mi código:

System.setProperty("com.sun.management.jmxremote", "true"); System.setProperty("com.sun.management.jmxremote.port", "7197"); System.setProperty("com.sun.management.jmxremote.authenticate", "false"); System.setProperty("com.sun.management.jmxremote.ssl", "false"); System.setProperty("java.rmi.server.hostname", "my ip");

Entonces, ¿hay alguna forma de vaciar manualmente los datos a Cassandra sin usar nodetool?

Edición 1:
Después de horas de intentarlo, ahora puedo ejecutar nodetool (en lugar de agregar configuraciones jmx al código que agregué a las configuraciones de depuración de Eclipse y funcionó). Ejecuté el comando de drenaje ahora que los datos se han vaciado correctamente en el disco. Así que ahora mi pregunta es: ¿por qué los datos no se eliminan correctamente? Cada vez que reinicio el servicio de Cassandra, los cambios recientes desaparecen.


¿Cómo estás deteniendo e iniciando el servidor Cassandra? La llamada a stopServer en el daemon de Cassandra debe vaciar cualquier escritura pendiente en el registro de confirmación. El subproceso continuará procesando incluso después de que se devuelva el método, por lo que si está eliminando la JVM después de detener Servidor (), es posible que esté evitando que se escriban los datos.




Puede ser que se emita un color, pero está fallando. El lavado debe registrarse en los registros. Verifique que no esté enjuagando. Si está enjuagando y está fallando, debería haber alguna indicación de por qué falló el enjuague.