Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在修复Cassandra节点或完成修复时使用Python以编程方式进行检测_Python_Cassandra_Cql - Fatal编程技术网

如何在修复Cassandra节点或完成修复时使用Python以编程方式进行检测

如何在修复Cassandra节点或完成修复时使用Python以编程方式进行检测,python,cassandra,cql,Python,Cassandra,Cql,介绍+问题: 我有一个使用Cassandra 1.2.4集群的Python应用程序。每周我需要在Cassandra节点上运行一次计划的修复(nodetool修复),在这段时间内,我希望减少正在修复的节点上的负载,但一旦修复完成,我希望开始正常使用节点。我正在使用Python中的CQL库访问集群 问题: 是否有一种简单的方法可以从Python程序中知道何时修复Cassandra节点?如果没有,是否有一种方法可以知道何时完成修复,并且事先知道修复已经开始 提前谢谢 现在,dynamic snitch

介绍+问题:

我有一个使用Cassandra 1.2.4集群的Python应用程序。每周我需要在Cassandra节点上运行一次计划的修复(nodetool修复),在这段时间内,我希望减少正在修复的节点上的负载,但一旦修复完成,我希望开始正常使用节点。我正在使用Python中的CQL库访问集群

问题:

是否有一种简单的方法可以从Python程序中知道何时修复Cassandra节点?如果没有,是否有一种方法可以知道何时完成修复,并且事先知道修复已经开始


提前谢谢

现在,dynamic snitch(默认情况下启用)应该能够间接地绕着一个或多个负载较大的节点进行路由:

您可以做的其他事情是查看参与修复的所有节点上的nodetool netstats和compactionstats,以查看是否存在与修复相关的流或压缩(验证类型压缩)。显然,运行nodetool或使用JMX等价物对于Python来说是很棘手的,但只是想给您一些想法

同样在1.1.9/1.2.1中,有一个票证允许通过jmx发起的维修呼叫来监控维修进度。有关其他详细信息,请参阅:


正在使用Cassandra 2.0+进行工作,以使修复和流媒体更具弹性,并能够进行监控。请参见

谢谢Jeremy,即使是一些想法也对我很有帮助,因为我们在处理此类任务时缺乏一些功能,至少在Python中是这样。