3.4.2. 初期同期

タスクがレプリカセットを使用して起動すると、コネクターの論理名とレプリカセット名を使用して、コネクターが以前に読み取りを停止したレプリカセット oplog の位置を記述する オフセット を検索します。オフセットが検出され、oplog にある場合は、記録されたオフセット の位置から即座に oplog の追跡を続行します。

ただし、オフセットが見つからない場合や、oplog にその位置が含まれなくなった場合、タスクは最初に最初の 同期 を実行してレプリカセットの内容の現在の状態を取得する必要が あります。このプロセスは、oplog の現在の位置を記録し、オフセット(および最初の同期が開始されたことを示すフラグとともに)として記録します。その後、タスクは各コレクションをコピーし、できるだけ多くのスレッドを生成し( initial.sync.max.threads 設定プロパティーの値まで)、この作業を並行して実行します。コネクターは、確認した各ドキュメントの個別の 読み取りイベント を記録します。読み取りイベントにはオブジェクトの識別子、オブジェクトの完全な状態、およびオブジェクトが見つかった MongoDB レプリカセットの ソース 情報が含まれます。ソース情報には、最初の同期中にイベントが生成されたことを示すフラグも含まれます。

この最初の同期は、コネクターのフィルターに一致するすべてのコレクションをコピーするまで継続されます。タスクの初期同期が完了する前にコネクターが停止した場合、コネクターは再起動時に初期同期を再開します。

注記

コネクターがレプリカセットの意図的な同期を実行している間は、タスクの再割り当てと再設定を避けてください。コネクターは最初の同期の進捗とともにメッセージをログに記録します。最大限の制御を行う場合は、各コネクターに対して Kafka Connect の個別のクラスターを実行します。