私は Cassandra に比較的慣れていないので、明らかな何かが欠けている場合は事前にお詫び申し上げます。そのため、1 ノード クラスターで cassandra 1.0.12 を使用し、大量の書き込みと削除 (約 1000/秒) を実行しています。書き込みは削除よりも頻繁に行われるため、ディスク容量が増え続けています。私が正しく理解していれば、圧縮はそれを達成するのに役立ちます(メジャーとマイナー)。そのため、setGc_grace_seconds を 0 に、setMin_compaction_threshold を 2 に変更しました。これらの値を設定した後でも、その列ファミリーの SSTable カウントが 4 であることがわかりますが、SSTable カウントが 2 のときにコンパクションを開始するべきではありませんか? また、主要な圧縮がいつ開始され、どのように制御できますか (もっと頻繁に実行したい)。
2947 次
1 に答える
7
サイズ階層コンパクションを使用する場合、少なくとも min_compaction_threshold と同様のサイズの SSTableがディスク上に作成されると、マイナー コンパクションが自動的にトリガーされることがあります。したがって、あなたの場合、2つの同様のサイズのSSTableが作成された後、マイナーコンパクションが開始され、これら2つのSSTableが新しいSSTableにマージされることがあります。 サイズ階層圧縮のチューニング オプション
主要な圧縮は、nodetoolを介して手動でトリガーされます。「キースペースの列ファミリーごとに、既存のすべての SSTable が単一の SSTable に圧縮されます」。
于 2013-01-27T16:46:10.593 に答える