データ圧縮のタイミング
圧縮は、多くの行があって各行に同じカラムがあるか、少なくとも他の行と同じ数のカラムのあるテーブルに最適です。
圧縮は、数多くの行を持つテーブルでもっとも効果的です。各行には他のすべての行のように、同じカラム・セット(または同じ数のカラム)が含まれています。たとえば、ユーザー名、電子メール、状態などのユーザー・データを含むテーブルは、圧縮に適した候補です。各行のデータが互いによく似ているほど、圧縮率と読み取りのパフォーマンスが向上します。
さまざまなカラム・セットの行を持つテーブルは、圧縮には不向きです。
テーブルのデータ特性に応じて、データの圧縮によって以下の結果が得られる可能性があります。
- データのサイズが25~33%に縮小
- 読み取りのパフォーマンスが25~35%向上
- 書き込みのパフォーマンスが5~10%向上
既存のテーブルの圧縮を構成すると、以降作成されるSSTableが圧縮されます。ディスク上の既存のSSTableは、すぐには圧縮されません。通常のデータベースのコンパクション・プロセスが発生すると、DataStax Enterpriseは既存のSSTableを圧縮します。既存のSSTableを強制的に書き込みなおして圧縮するには、nodetool upgradesstablesまたはnodetool scrubを使用します。