web-dev-qa-db-ja.com

古い墓石を強制的にクリーンアップできますか?

最近、CQLテーブルのgc_grace_secondsを下げました。 LeveledCompactionStrategyを実行しています。 SSTableから古いトゥームストーンを強制的に削除することはできますか?

13
Ztyx

TL; DR

あなたの墓石は、あなたが修理を実行していることを確認するために、圧縮ビットによって自然に消えます。

http://www.datastax.com/documentation/cassandra/2.0/cassandra/dml/dml_about_deletes_c.html

詳細を追加する:

トゥームストーンは、次の両方が行われるまで、すぐに削除できません。

1)gc_grace_secondsの有効期限が切れています

2)トゥームストーン圧縮サブプロパティで構成された要件を満たしている

トゥームストーンを期限切れにしてディスクを解放する必要がありますが、これをすばやく行うにはどうすればよいですか?

1)修理を実行して、墓石の一貫性を確認します

2)テーブルのgc_grace_secondsを減らします( alter table statement

3) 圧縮サブプロパティ を構成して、トゥームストーンの削除を高速化します。

Tombstone_compaction_intervalを減らしてtombstone_thresholdを減らすか、unchecked_tombstone_compactionをtrueに設定して両方の条件を無視し、純粋にgcgraceに基づいて収集します。

動作していますか?

トゥームストーンに関する統計は、nodetool cfstatsで、ツールディレクトリsstablemetadata <sstable filenames>にあるsstablemetatdataユーティリティを使用して確認できます。

12
phact