如何将数据从Cassandra集群导出并在另一个集群中导入

11
我想从Cassandra集群中的一个keyspace导出所有数据,并将其导入到另一个集群中,该集群具有相同的模式,但keyspace名称不同。
我已经调查了sstable2json/json2sstable工具。然而,我不想去每个节点并处理每个单独的sstable。
2个回答

10
更简单的方式是,在每个节点上拍摄一个快照,然后使用批量加载器将它们流式传输到新集群中。

我不想再问一个重复的问题,但有一点不同,如果我还需要将现有模式也带到新创建的集群中怎么办?我已经创建了一个新的集群,目前没有keyspaces、CFs或任何数据,我想迁移整个数据以及模式到新的集群。有什么好的方法可以这样做吗? - Rajat Gupta
在一个集群上使用CLI命令“show schema”,并将其输入到另一个集群的CLI中。 - jbellis
我们有一个Cassandra 3节点集群,复制因子为3,是否可能从集群中导出数据并导入到单个节点(独立服务器)? - satlearner

1
如果您不想逐个节点地导出数据,那么您可能需要使用普通的Thrift客户端接口,从源集群系统地读取数据块并将它们写入目标集群,遍历所有列族及其行。虽然这种方法可能比较慢。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接