レプリケーション・ソース表用の複数のコンプレッション・ディクショナリー
CREATE TABLE ステートメントおよび ALTER TABLE ステートメントで、DATA CAPTURE CHANGES 節と COMPRESS YES STATIC オプションまたは COMPRESS YES ADAPTIVE オプションを組み合わせることで、レプリケーションのソース表に対する行圧縮を有効にすることができます。 圧縮を有効にすると、コマンド REORG TABLE または LOAD
REPLACEの一部として DATA CAPTURE CHANGES 節も指定した場合に、ソース表に 2 つの表レベルのコンプレッション・ディクショナリー (アクティブな 表レベルのコンプレッション・ディクショナリー と ヒストリカル・コンプレッション・ディクショナリー) を含めることができます。 つまり、DATA CAPTURE CHANGES が有効になっている場合、 REORG TABLE コマンドまたは LOAD
REPLACE コマンドを実行しても、表レベルのコンプレッション・ディクショナリーは置き換えられません。 その代わりに、新しいディクショナリーが生成され、以前のディクショナリーは保持されます。
履歴コンプレッション・ディクショナリーを使用すると、 REORG TABLE コマンドまたは LOAD コマンドで RESETDICTIONARY オプションを指定した結果として、アクティブ・ディクショナリーが再作成される前に書き込まれたログ・レコード内の行の内容を db2ReadLog API が抽出できるようになります。
注: ログ・リーダーがログ・レコード内のデータをロー圧縮フォーマットではなく非圧縮フォーマットで返すようにするには、 db2ReadLog API の iFilterOption パラメーターを DB2READLOG_FILTER_ONに設定する必要があります。
表の作成に使用される CREATE TABLE ステートメントの一部として DATA CAPTURE NONE オプションを指定した場合、 REORG TABLE コマンドを発行するか、 LOAD REPLACE、 IMPORT REPLACE、または TRUNCATE TABLE コマンドを発行して表の切り捨て操作を実行すると、表の履歴コンプレッション・ディクショナリーが削除されます。
表の履歴ディクショナリーが存在するかどうかを調べるには、ADMIN_GET_TAB_DICTIONARY_INFO 表関数の結果セット内の HISTORICAL_DICTIONARY 列を確認してください。