【发布时间】:2013-09-22 21:49:37
【问题描述】:
我们正在将我们的 cassandra 集群(version 1.1.6)从旧的 DC(DC2)迁移到新的 DC(DC1 - 是的,它们是相反的)一次一个键空间。
我们有 3 个键空间 A、B 和 C:
A 和 B 已成功迁移到新的数据中心,并以 DC1:3;DC2:3 的复制因子运行。我们针对这两个键空间的所有应用程序都已更新,因此不会从旧数据中心写入/读取任何内容。然后我们将复制因子更改为 DC1:3;DC2:0,因此数据现在实际上已经过时了。
我试图找到一种方法来删除旧 DC 中的这些键空间以释放键空间 C 所需的空间,但我还没有找到。
有没有办法从单个数据中心删除密钥空间,或者更好地解决从旧数据中心删除数据的方法?
【问题讨论】:
-
您是否尝试将复制因子更改为
{DC1:3}并且没有DC2? -
是的,但数据不会被删除,即使在
nodetool cleanup A之后也是如此 -
如果 DC2 上的数据无关紧要,并且您已经更改了设置,因此数据不会与 DC2 通信,我认为您可以继续删除 keyspace @987654323 DC2 中所有机器上
data_directory中的@ 目录。这理论上应该没问题。 -
@Nishant:你是对的,理论上它应该可以工作。我停止了 cassandra(因为打开的文件),删除了目录并重新启动,cassandra 以及我们的应用程序都没有问题。谢谢!
-
太棒了。将其转换为答案。
标签: cassandra