2017-03-24 6 views
2

Kafkaコネクタは、主キーとタイムスタンプを使用して、処理が必要な行を決定できます。JDBC Kafka Connectorをリセットして、最初から行を引き出すのを開始しますか?

私はコネクターを初期化から処理するようにリセットする方法を探しています。

+0

分散モードまたはスタンドアロンで実行していますか?スタンドアロンでは、私が信じているオフセットファイルを削除することができます。分散モードでは、コネクター名を変更するのが一番簡単です。いずれにしても、これをあなたの意識のために行うと、重複したデータがKafkaに送られます。 – dawsaw

+0

これは分散モードで動作します。これは、接続する必要のあるすべてのデータベースを処理するために大きなクラスタが必要になるためです。はい、それは理にかなっています。私はデータの問題を把握できるかどうかを理解しようとしています。 – user2122031

答えて

2

分散モードで実行する必要があるため、最も簡単な方法は、コネクタ名を新しい値に更新することです。これにより、まったく新しいコネクタのように見えるので、connect-offsetsトピックに新しいエントリが作成されます。そうすれば、コネクタはまだ何もKafkaに書き込まれていないかのように読み始めます。また、特定のコネクタに関連付けられている接続オフセットのトピックのキーに廃棄墓メッセージを手動で送信することもできますが、名前の変更はこれを処理するよりはるかに簡単です。このメソッドは、ここで説明するJDBCだけでなく、すべてのソースコネクタに適用されます。

+0

私は先週に移動オフセットのような特定の時間からbinlogメッセージを再処理する必要があるのと同様の要件があります。私たちはこれを達成することができ、Debeziumコネクタを使用しています。 – Renukaradhya

関連する問題