12.5.2. Debezium イベントフラット化変換の動作


イベントフラット化 SMT は、Kafka レコードの Debezium 変更イベントから after フィールドを抽出します。SMT は、元の変更イベントを after フィールドのみに置き換え、単純な Kafka レコードを作成します。

Debezium コネクターまたは Debezium コネクターから出力されるメッセージを使用するシンクコネクターに、イベントフラット化 SMT を設定することができます。シンクコネクターにイベントフラット化を設定するメリットは、Apache Kafka に保存されるレコードに Debezium の変更イベント全体が含まれることです。SMT を元のコネクターまたはシンクコネクターに適用するかどうかの判断は、特定のユースケースによります。

以下の操作のいずれかを実行するように変換を設定することができます。

  • 変更イベントからのメタデータを簡素化した Kafka レコードに追加する。デフォルト動作では、SMT はメタデータを追加しません。
  • ストリームに DELETE 操作の変更イベントが含まれる Kafka レコードを保持します。ほとんどのコンシューマーが処理できないため、SMT は DELETE 操作変更イベントの Kafka レコードを破棄することです。

データベース DELETE 操作が原因で、Debezium は 2 つの Kafka レコードを生成します。

  • "op": "d"、 前の 行データ、その他のフィールドを含むレコード。
  • 削除された行と null の値と同じキーを持つトームストーンレコード。このレコードは Apache Kafka のマーカーです。これは、ログコンパクション によりこのキーを持つすべてのレコードが削除されることを意味します。

前述の データが含まれるレコードをドロップする代わりに、イベントフラット化 SMT を設定して以下のいずれかを行うように設定できます。

  • レコードをストリームに維持し、これを "value": "null" フィールドのみを持つように編集します。
  • レコードをストリームに維持し、追加された "__deleted": "true" エントリーで before フィールドに含まれていたキー/値のペアが含まれる フィールドを持つように編集します。

同様に、トゥームストーンレコードをドロップする代わりに、イベントフラット化 SMT を設定してトゥームストーンレコードをストリームに維持することができます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.