cassandra键空间的在线批量删除(截断)

ith*_*uil 5 cassandra

我读到,一旦你耗尽了一个节点,你可以删除文件,然后重新启动.它工作正常,但我只是通过耗尽所有节点,关闭整个群集,删除文件并重新启动来尝试它.

如果我当时只重启一个节点会怎样?据我所知,重启的节点有可能接受读取请求并使用来自其他副本的数据执行读取修复.

是否有人知道截断密钥空间的最安全失败的过程,同时保持整个群集的运行以便为其他密钥空间服务?

jbe*_*lis 7

$ bin/cassandra-cli -h localhost
[default@unknown] use keyspace1;
Authenticated to keyspace: Keyspace1
[default@Keyspace1] truncate standard1;     
standard1 truncated.
Run Code Online (Sandbox Code Playgroud)

按照设计,这不是种族保护(需要重型锁定); 通常情况下,你只会断言一个不提供实时读取的CF. 但如果由于某种原因必须先禁用读修复("read_repair_chance = 0"更新列族标准1).