【发布时间】:2018-03-09 08:31:58
【问题描述】:
我是 cassandra 新手,在将快照从 3 节点 Cassandra 集群恢复到新的 6 节点集群方面需要一些帮助。 我们的键空间很少,希望将数据从开发复制到生产。
提前致谢。
【问题讨论】:
我是 cassandra 新手,在将快照从 3 节点 Cassandra 集群恢复到新的 6 节点集群方面需要一些帮助。 我们的键空间很少,希望将数据从开发复制到生产。
提前致谢。
【问题讨论】:
最简单的方法是使用与 Cassandra 捆绑的 sstableloader 工具。您可以在%installdir%/bin/sstableloader 中找到它。
您首先需要在新集群上重新创建架构:
cqlsh -e 'DESC KEYSPACE mykeyspace;' > mykeyspace.cql 转储要从原始集群传输的键空间的模式
cqlsh -f mykeyspace.cql 将其加载到您的新集群中。 ALTER KEYSPACE mykeyspace WITH REPLICATION = ...;)完成后,您可以开始将密钥空间快照中的 SSTable 批量加载到新集群中:
sstableloader --nodes 10.0.0.1,10.0.0.2 -f /etc/cassandra/cassandra.yaml /path/to/mykeyspace/snapshot/
请注意,如果您要加载大量数据,这可能需要一段时间。您还应该在之后对新集群进行全面修复,以确保副本正确分布。
【讨论】: