表のデータ圧縮とは、表に格納するデータの重複値を排除することにより、データを小さく保持する機能です。
表のデータ圧縮には、以下の特徴があります。
I/O効率の向上
データが圧縮されることでバッファに展開されるデータ量が多くなります。また、ディスクからデータを取得する場合に1回のI/Oで取得できるデータ量が多くなり、I/O回数が削減されます。表のデータ圧縮では、この2つの効果をI/O効率の向上と定義します。
ディスク容量の削減
データを圧縮しない場合と比較して同じレコード件数でもディスクに必要な容量を削減できます。また、データを圧縮したままバックアップすることができます。そのため、退避データのサイズが削減され、バックアップ時間を短縮できます。
データの圧縮は、あらかじめ指定されたDSIに対して、Symfoware/RDBがデータを格納するタイミングで圧縮し、参照するタイミングで伸張します。このため、アプリケーションの変更は不要です。
レコードの操作にあたっては、データの圧縮によってI/O効率が向上することにより、I/O時間が削減されます。このI/O時間を削減したコストは、データの圧縮・伸長処理によりCPUの使用時間に転換されます。そのため、システム全体ではスループットの向上が見込めます。
表のデータ圧縮によって圧縮される資源
表のデータ圧縮では、以下の資源が圧縮されます。
表
テンポラリログファイルのログデータ
アーカイブログファイルのログデータ
注意
テンポラリログファイルのログデータについて
データベース二重化機能、Mirroring ControllerまたはActive DB Guardを利用している場合、テンポラリログファイルのログデータは圧縮されません。
表のデータ圧縮機能の使用について
I/O効率の向上とディスクの容量の削減の度合いは業務内容によって異なるため、表のデータ圧縮機能を利用する場合は、“データの圧縮を行う表の選定”と“テスト環境でのスループット確認”を行ってください。