我需要将数据从 3 个节点复制到单个节点。我了解快照命令,并且能够成功地将数据从每个节点都有 100% 数据(完整复制)的集群复制到单节点集群。
但是在这种情况下,我有一个具有 3 个节点的集群,其中数据被划分为:50%-25%-25%。
如果我在每个“源”节点上创建快照并在单个“目标”节点上恢复,一切都能正常工作吗?
答案1
你不应该那样做。
我将密钥空间的复制因子更改为 1,然后nodetool decommission
逐个在要删除的节点上运行。要检查退役状态,请观察nodetool status
并nodetool netstats
。
有关退役的更多信息可以在这里找到:http://docs.datastax.com/en/cassandra/2.0/cassandra/tools/toolsDecommission.html
这样,您就可以让 Cassandra 流式传输数据,并确保不会出错。
另外,不要忘记检查是否需要更改客户端应用程序上的一致性因素。