COMPRESSDELETES | NOCOMPRESSDELETES

適用対象

Extract

説明

COMPRESSDELETESおよびNOCOMPRESSDELETESパラメータでは、DELETE操作の際に列をトレイル・レコードに書き込む方法を制御します。

COMPRESSDELETESおよびNOCOMPRESSDELETESは、パラメータ・ファイル内のすべてのTABLE文にグローバルに適用することも、各TABLE文に個別スイッチとして使用することもできます。

これらのパラメータは、次のデータベースをサポートしています。

  • Oracle

  • DB2 LUW

  • DB2 z/OS

  • DB2 for i

  • MySQL

  • SQL Server

  • PostgreSQL

デフォルト

COMPRESSDELETES

構文

{COMPRESSDELETES | NOCOMPRESSDELETES [FETCHMISSINGCOLUMNS]}
COMPRESSDELETES

DELETE操作の場合、Extractは主キーのみをトレイルに書き込みます。これはデフォルトです。主キーのみを書き込むと、処理が必要なデータ量を制限しながら、適切なターゲット・レコードの削除に十分な情報を提供できます。

NOCOMPRESSDELETES [FETCHMISSINGCOLUMNS]

NOCOMPRESSDELETESは、すべての列をトレイルに送信します。表定義に主キーも一意索引も含まれていない場合、または代替キーがTABLEKEYCOLSオプションを使用して定義されている場合、これがデフォルトになります。KEYCOLSオプションでは、実際のキーが存在するかどうかにかかわらず、指定した列をトレイルに書き込みます。KEYCOLSオプションの詳細は、「KEYCOLS (columns)を参照してください。

SQL Serverの場合、IMAGENTEXTおよびTEXTデータ型の列は削除操作でNULL値として書き込まれます。この制限の詳細は、次のMicrosoftドキュメントでラージ・オブジェクト・データ型の内容を確認してください。

https://docs.microsoft.com/en-us/sql/relational-databases/system-tables/cdc-capture-instance-ct-transact-sql?view=sql-server-ver15

競合の検出および解決(CDR)機能を使用する場合は、NOCOMPRESSDELETESも必要です。『Oracle GoldenGate Microservicesドキュメント』自動競合検出および解消および手動競合検出および解消を参照してください。

FETCHMISSINGCOLUMNSは、Oracle Databaseにのみ有効です。DELETE操作で、フェッチによってのみサポートされるデータ型の値がデータベースからフェッチされます。これらのデータ型は、LOB、UDT、LONGおよび一部のXMLType列です。(REDOストリームから直接取得するのではなく)フェッチによってサポートされる列の詳細は、ダウンストリームExtractを参照してください。フェッチされた列は、トレイル・ファイル内にDELETEレコードの一部として含まれます。Oracle Databaseデータに対してNOCOMPRESSDELETESFETCHMISSINGCOLUMNSオプションなしで使用すると、DELETE操作で(フェッチなしで)ログから読取り可能なLOBデータのみがトレイルに含められます。