如何将数据从SSTables恢复到Cassandra?

时间:2013-10-10 19:12:28

标签: cassandra apt data-recovery

我尝试重新安装Cassandra,现在数据丢失了! 我发现SSTables仍然存在并占用磁盘空间。

我做了什么

sudo apt-get --purge remove cassandra
sudo apt-get install dsc20

如何将数据恢复到cassandra。

1 个答案:

答案 0 :(得分:2)

这有点hacky(该工具未按预期使用)但您可以使用sstable2json将旧sstables中的数据导出到json中,然后将其重新导入到新的C *安装中。要做到这一点,你必须:

  1. 使用sstable2json
  2. 从旧的sstables导出数据
  3. 重新创建您之前拥有的CF(相同结构)
  4. 刷新新创建的相同cf(./nodetool flush
  5. 停止cassandra
  6. 使用json2sstable将先前导出的json导入新创建的sstables。
  7. 这很麻烦,因为json2sstable和sstable2json是调试工具而不是导出/导入工具。