重要

このページの日本語コンテンツは古くなっている可能性があります。最新の英語版コンテンツをご覧になるには、こちらをクリックしてください。

TimestampRouter

ここでは、Kafka SMT org.apache.kafka.connect.transforms.TimestampRouter の使用方法を説明します。

説明

元のトピックの値とレコードのタイムスタンプに応じて、レコードのトピックフィールドを更新します。

トピックフィールドにより、送信先システムでの対応するエンティティ名(データベーステーブルや検索インデックス名など)が決まることが多いため、この変換はシンクコネクターで役立ちます。指定したメッセージフィールドからタイムスタンプを抽出する方法については、「MessageTimestampRouter」を参照してください。

この構成スニペットは、TimestampRouter を使用して、メッセージをトピックにルーティングし、フォーマットされたタイムスタンプを含める方法を示しています。

"transforms": "TimestampRouter",
"transforms.TimestampRouter.type": "org.apache.kafka.connect.transforms.TimestampRouter",
"transforms.TimestampRouter.topic.format": "foo-${topic}-${timestamp}",
"transforms.TimestampRouter.timestamp.format": "YYYYMM"

変換前: ordersTopic

変換後 : foo-ordersTopic-201804

ちなみに

その他の例については、マネージド型コネクターの「タイムスタンプルーター」を参照してください。

プロパティ

名前 説明 デフォルト 指定可能な値 重要度
timestamp.format java.text.SimpleDateFormat と互換性のある、タイムスタンプのフォーマット文字列。詳細については、「SimpleDateFormat」を参照してください。 string yyyyMMdd  
topic.format フォーマット文字列。${topic}${timestamp} を、それぞれトピックおよびタイムスタンプのプレースホルダーとして使用できます。 string ${topic}-${timestamp}  

述語

"述語" を使用することにより、一定の条件を満たすレコードのみに変換が適用されるように、変換を構成することができます。述語は変換チェーンで使用することができ、Filter(Apache Kafka) と組み合わせると、条件に基づいて特定のレコードを除外できます。詳細と例については、「述語」を参照してください。