将Cassandra数据从一个群集复制到另一个群集

时间:2016-02-12 07:08:28

标签: cassandra

我在AWS上的cassandra中设置了群集。现在我需要将我的集群移动到其他地方。由于无法拍摄图像,因此我将创建一个与旧图像完全相同的新集群。现在我需要将数据从此集群移动到另一个集群。我怎么能这样做?

我的群集有2个数据中心,每个数据中心有3台cassandra机器和1台种子机。

4 个答案:

答案 0 :(得分:2)

旧群集和新群集之间是否存在连接?如果是,为什么不链接集群并让cassandra将数据复制到新集群?传输数据后,关闭旧群集。理想情况下,您甚至不会有任何停机时间。

答案 1 :(得分:0)

您可以从数据目录中获取SSTable,然后可以在新数据中心使用sstableloader导入数据。

在执行此活动之前,您可能会考虑进行压缩,以便每个表只有一个SSTable。

SSTable Loader

答案 2 :(得分:0)

使用SFTP服务器或通过其他方式,将SSTables从旧群集传输到新群集(一个DC足够)并使用SSTableLoader。另一个DC的数据复制将由Cassandra负责。

答案 3 :(得分:0)

在cassandra中有两种策略 SimpleStrategy NetworkTopologyStrategy by 使用NetworkTopologyStrategy可以在不同的群集中进行复制。请参阅此文档Data replication

您可以使用COPY命令将csv从一个表导出并导入另一个表 Simple data importing and exporting with Cassandra