SQL Server 2008R2 データ圧縮 その② [DBMS]
前回、全てのテーブルとインデックスを圧縮するスクリプトを載せましたが、実際にはどれを圧縮しない方がよいのか、どの圧縮にしたらいいのかといった設計が必要になります。
それはさておき、全てのテーブルとインデックスを圧縮してみました。
まずは、圧縮なしの状態です。
もともと テーブルのみROW圧縮だったものを DATA_COMPRESSION = NONE にしてテーブルとインデックスを圧縮なしに変換しています。
変換前はデータベースの空き容量はほぼ 0 でしたが、変換時に変換中のテーブルは倍の容量が必要になるのかそれなりに大きくなって最終的に空き容量が出来てます。
変換するテーブルの容量+α程度の容量が必要な様です。
ログはSimpleモードになっていたので参考になりません。
テーブルやインデックスが圧縮されているかどうかはテーブルやインデックスのプロパティの Storage で見る事が出来ます。
このテーブルの圧縮タイプは ROW になってます。
テーブルを圧縮してもインデックスも同じ様に圧縮される訳ではありません。
別々に圧縮する必要があります。
このインデックスの圧縮タイプは ROW になってます。
圧縮の実行時間はデータ容量とカラムの状態によってそれなりに時間がかかります。
今回、全部変換するのにデータ約 60GB CPUが Opteron 2.4GHz シングルスレッドで 2時間弱かかっています。
ROW圧縮で以下の様になりました。2/3ぐらい?
PAGE圧縮で以下の様になりました。データは1/2にはなってませんが、インデックスはだいぶ圧縮されています。
圧縮のメリットの1つに物理容量の減少によるバックアップ時間の減少があります。
SQL Server のバックアップはディスクから物理的に読み込んでバックアップデバイスに転送する様なので、データが圧縮されていてもバックアップの時は伸張せずにそのままバックアップされます。
なので、データ圧縮されているとバックアップの負荷は重くならず、物理容量が減る分だけ早くバックアップが終了します。
以下のバックアップテストではバックアップ先をNULにしているので書き込みはせず、読み込みの結果を表しています。
まずは圧縮なしでのバックアップです。
6,571,728 Page を 493 秒でバックアップしています。
ROW圧縮した環境です。
4,776,193 Page を 412 秒でバックアップしています。
PAGE圧縮した環境です。
3,594,497 Page を 328 秒でバックアップしています。
それはさておき、全てのテーブルとインデックスを圧縮してみました。
まずは、圧縮なしの状態です。
もともと テーブルのみROW圧縮だったものを DATA_COMPRESSION = NONE にしてテーブルとインデックスを圧縮なしに変換しています。
変換前はデータベースの空き容量はほぼ 0 でしたが、変換時に変換中のテーブルは倍の容量が必要になるのかそれなりに大きくなって最終的に空き容量が出来てます。
変換するテーブルの容量+α程度の容量が必要な様です。
ログはSimpleモードになっていたので参考になりません。
テーブルやインデックスが圧縮されているかどうかはテーブルやインデックスのプロパティの Storage で見る事が出来ます。
このテーブルの圧縮タイプは ROW になってます。
テーブルを圧縮してもインデックスも同じ様に圧縮される訳ではありません。
別々に圧縮する必要があります。
このインデックスの圧縮タイプは ROW になってます。
圧縮の実行時間はデータ容量とカラムの状態によってそれなりに時間がかかります。
今回、全部変換するのにデータ約 60GB CPUが Opteron 2.4GHz シングルスレッドで 2時間弱かかっています。
ROW圧縮で以下の様になりました。2/3ぐらい?
PAGE圧縮で以下の様になりました。データは1/2にはなってませんが、インデックスはだいぶ圧縮されています。
圧縮のメリットの1つに物理容量の減少によるバックアップ時間の減少があります。
SQL Server のバックアップはディスクから物理的に読み込んでバックアップデバイスに転送する様なので、データが圧縮されていてもバックアップの時は伸張せずにそのままバックアップされます。
なので、データ圧縮されているとバックアップの負荷は重くならず、物理容量が減る分だけ早くバックアップが終了します。
以下のバックアップテストではバックアップ先をNULにしているので書き込みはせず、読み込みの結果を表しています。
まずは圧縮なしでのバックアップです。
6,571,728 Page を 493 秒でバックアップしています。
ROW圧縮した環境です。
4,776,193 Page を 412 秒でバックアップしています。
PAGE圧縮した環境です。
3,594,497 Page を 328 秒でバックアップしています。
こんにちは。
サーバーって色々難しいのですね。
by musselwhite (2011-06-19 08:46)