取得定義で複数のテーブルの項目がジャーナル取得対象として定義されている場合やジャーナル・チェックポイントが定義されている場合、更新されなかったテーブルの項目に該当する部分は無効項目となります。配付定義で圧縮するように指定することで、無効項目部分を利用ジャーナルから削除できます。
これにより、利用ジャーナルのサイズを減らすことができます。
また、パッキングと組み合わせることにより、1つのメッセージに格納できる利用ジャーナル数を増やせます。パッキングの詳細は"14.2.1 パッキング"を参照してください。
ただし、圧縮を行った場合は、利用ジャーナルのサイズが更新されたテーブルによって異なります。このため、ジャーナル利用側業務のアプリケーションでは利用ジャーナルを固定長データとして扱えません。システム取得項目の更新資源名を利用してテーブル名を判別し、それぞれのテーブルに応じた処理を行うようにしてください。
利用ジャーナルの圧縮について、以下の順で説明します。
データベースの更新ジャーナルを含む利用ジャーナルの圧縮
ジャーナル・チェックポイントを含む利用ジャーナルの圧縮
システム取得項目を含む利用ジャーナルの圧縮
データベースの更新ジャーナルを含む利用ジャーナルの圧縮
利用ジャーナルがデータベースの更新ジャーナルの場合は、圧縮するように指定することで更新が行われなかったテーブルの項目に該当する無効項目が削除されます。したがって、利用ジャーナルには更新されたテーブルの項目だけの利用ジャーナルとなります。
"図14.8 利用ジャーナルの圧縮例(データベースの更新ジャーナルの場合)"に2つの異なるテーブルの列をジャーナル取得対象としている場合の利用ジャーナルの圧縮例を示します。
利用ジャーナルにジャーナル・チェックポイントの項目が含まれている場合は、圧縮するように指定することでジャーナル・チェックポイントの項目、または、テーブルの項目が削除されます。したがって、配付される利用ジャーナルは、更新されたテーブルの項目だけの利用ジャーナルとジャーナル・チェックポイントだけの利用ジャーナルとなります。
"図14.9 利用ジャーナルの圧縮例(ジャーナル・チェックポイント項目を含む場合)"にジャーナル・チェックポイント項目を含む利用ジャーナルの圧縮例を示します。
システム取得項目を含む利用ジャーナルの圧縮
利用ジャーナルにシステム取得項目が含まれている場合に圧縮するように指定すると、すべてのシステム取得項目がレコード制御部とジャーナル項目の間に移動して設定されます。なお、システム取得項目の無効項目は削除されません。
"図14.10 利用ジャーナルの圧縮例(システム取得項目を含む場合)"にシステム取得項目を含む利用ジャーナルの圧縮例を示します。