12.5.3. Debezium イベントフラット化変換の設定
コネクターの設定に SMT 設定の詳細を追加して、Kafka Connect ソースコネクターまたはシンクコネクターに Debezium イベントフラット化 SMT を設定します。デフォルトの動作を得るためには、.properties
ファイルで、以下のように指定します。
transforms=unwrap,... transforms.unwrap.type=io.debezium.transforms.ExtractNewRecordState
他の Kafka Connect のコネクター設定と同様に、transforms=
にコンマで区切られた複数の SMT エイリアスを設定し、Kafka Connect に SMT を適用させたい順番に設定することができます。
次の .properties
の例では、いくつかのイベントフラットニング SMT オプションを設定しています。
transforms=unwrap,... transforms.unwrap.type=io.debezium.transforms.ExtractNewRecordState transforms.unwrap.drop.tombstones=false transforms.unwrap.delete.handling.mode=rewrite transforms.unwrap.add.fields=table,lsn
drop.tombstones=false
-
イベントストリームに
DELETE
操作の墓石の記録を残します。 delete.handling.mode=rewrite
DELETE
操作では、変更イベントにあったvalue
フィールドをフラット化することで、Kafka レコードを編集します。value
フィールドには、before
フィールドにあったキーと値のペアが直接入ります。SMT では、例えば__deleted
を追加して、それをtrue
に設定します。"value": { "pk": 2, "cola": null, "__deleted": "true" }
add.fields=table,lsn
-
table
およびlsn
フィールドの変更イベントメタデータを簡素化した Kafka レコードに追加します。