2

Cassandra を再インストールしようとしましたが、データが失われました! SSTables がまだ残っており、ディスクの多くのスペースを消費していることがわかりました。

私がやった事

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

データを Cassandra に戻すにはどうすればよいですか。

4

1 に答える 1

2

これは一種のハッキー (ツールが意図したとおりに使用されていない) ですが、sstable2json を使用して古い sstables からデータを json にエクスポートし、それを新しい C* インストールに再インポートすることができます。これを行うには、次のことを行う必要があります。

  1. sstable2jsonを使用して古い sstables からデータをエクスポートします。
  2. 以前に持っていた CF を再作成します (同じ構造)
  3. 新しく作成された同一の cf ( ./nodetool flush)をフラッシュします。
  4. カサンドラを止める
  5. json2sstable を使用して、以前にエクスポートした json を新しく作成した sstables にインポートします。

json2sstable と sstable2json はエクスポート/インポート ツールではなくデバッグ ツールであるため、これはハッキーです。

于 2013-10-11T23:11:58.480 に答える