Kafka Connect は RDS バイナリログデータをどのように同期しますか?

Kafka Connect は RDS バイナリログデータをどのように同期しますか?

1. 背景

私たちの事業開発では、次のようなシナリオによく遭遇します。

  • ビジネス更新データがデータベースに書き込まれる
  • ビジネス更新データは、下流の依存処理にリアルタイムで渡す必要がある

したがって、従来の処理アーキテクチャは次のようになります。

しかし、このアーキテクチャには多くの欠点もあります。プロジェクト内で大量のメッセージ送信コードを保守する必要があるのです。メッセージを追加または更新すると、多大なメンテナンスコストがかかります。したがって、これを処理するより良い方法は、次に示すように、データベース データをストリーミング システムに直接接続することです。

この記事では、E-MapReduce 上で RDS バイナリログを Kafka クラスターにリアルタイムで同期する方法を説明します。

2. 環境整備

実験ではVPCネットワーク環境を使用します。 VPC 環境ではデフォルトで以下のインスタンスが作成されます。

2.1 テストRDSデータベースを準備する

RDS インスタンスを作成し、バージョン 5.7 を選択します。ここでは、RDS の作成方法については詳しく説明しません。詳細な手順については、RDS のドキュメントを参照してください。作成後は、図のようになります。

2.2 Kafka クラスターの準備

E-MapReduce Kafka クラスターを作成し、バージョンとして EMR-3.11.0 を選択します。ここでは EMR-3.11.0 以降のバージョンを選択する必要があることに注意してください。そうしないと、Kafka Connect サービスはデフォルトでインストールおよび起動されません。詳細な作成プロセスについては、E-MapReduce のドキュメントを参照してください。作成後は、図のようになります。

注意: RDS インスタンスと E-MapReduce Kafka クラスターは同じ VPC 内に存在する必要があります。それ以外の場合は、2 つの VPC 間のネットワークを開く必要があります。

3. カフカコネクト

3.1 コネクタ

Kafka Connect は、Kafka と他のデータ システム間のデータ転送用のツールです。 Kafka ベースのデータ パイプラインを実装し、上流と下流のデータ ソースを接続できます。必要なのは、データ ソースからのデータの読み取り/データ ソースへのデータの書き込み方法を具体的に実装するコネクタを Kafka Connect サービスで実行することだけです。 Confluent は多くのコネクタ実装を提供しており、ここからダウンロードできます。しかし、今日は Debezium が提供する MySQL Connector プラグイン (ダウンロード アドレス) を使用します。

このプラグインをダウンロードし、解凍したすべての jar パッケージを kafka lib ディレクトリにコピーします。注: これらの jar パッケージは、Kafka クラスター内のすべてのマシンにコピーする必要があります。

Kafka クラスターのサービス リストで Kafka Connect コンポーネントを再起動します。

3.2 コネクタを起動する

コネクタを作成する前に、いくつかの設定を行う必要があります。 Debezium MySQL Connector の主な構成項目の一部を次に示します。

Kafka クラスターにログインし、次のコマンドを使用してコネクタを設定および作成します。

この時点で、図に示すように、作成されたコネクタを確認できます。

3.3 注記

server_idとは何ですか? 「SELECT @@server_id;」を実行すると見つかります。 RDS で。

コネクタの作成時に接続エラーが発生する可能性があります。 RDS ホワイトリストに Kafka クラスター マシンへのアクセスが許可されていることを確認してください。

4 テスト

4.1 テーブルを作成する

しばらくすると、対応するトピックがKafkaクラスターに自動的に作成されます。

データを挿入する

バイナリログデータを表示する

トピックfulfillment.mugen.studentsをチェックして、新しく挿入されたデータがあるかどうかを確認します。

結果は図の通りです。

5. 情報

  • Confluent 公式ドキュメント https://docs.confluent.io
  • Debezium 公式サイト http://debezium.io/
  • Kafka 公式ドキュメント http://kafka.apache.org/documentation.html

<<:  企業の最高情報セキュリティ責任者がクラウドコンピューティングのセキュリティに取り組むべきこと

>>:  SonicWall が Capture Cloud Platform を発表、幅広いネットワーク セキュリティ ポートフォリオに仮想機能とエンドポイント セキュリティを導入

推薦する

hostcram: $15/年 - $25/2年、ダラス VPS、1G メモリ/1 コア (Ryzen9 5950X)/10g NVMe/1T トラフィック

Hostcram は当サイトに一度登場したことがあります。同社は 2009 年に設立され (こちらを...

実践分析フォーラムのプロモーションで最高の結果を達成する方法

フォーラムのプロモーションのために投稿する場合、人々は通常、Tianya、Kaidi、Mop For...

専門家がクラウドコンピューティングのアーキテクチャとインフラストラクチャの最新トレンドを予測

業界をリードする CTO やアナリストの中には、ハイパースケール アーキテクチャ、ハイブリッド クラ...

Veeble は、Windows 2003 に無制限のトラフィックを提供する VPS サービス プロバイダーです。

Server 2003 システムをサポートする海外の VPS を見つけるのは簡単ではありません。結局...

検索最適化ランキング要因の概要

1. キーワードの最適化1. URLに最適化するキーワードが含まれている2. ウェブページのタイトル...

G銀行のフルスタッククラウド環境負荷分散サービス機能の実践 - G銀行における負荷分散サービスの実践

序文金融業界におけるデジタル変革の探求者および実践者として、G銀行は「123+N」デジタル開発システ...

「ニュースクラウドファンディング」ウェブサイトは短命だと非難され、閉鎖のジレンマに直面した

【はじめに】クラウドファンディングサイトの「プロジェクトカテゴリー」には、テクノロジー、デザイン、ア...

globalfrag-プロフェッショナルなDDoS防御ホスト/仮想ホスト/VPS/サーバー

globalfrag.com は 2008 年に設立され、主に仮想ホスティング、VPS、サーバー レ...

シャンダゲームズ元社長リンハイ氏のスタートアップボイスコミュニティ「議論」が暴露される

「フォーカス」と「論壇」のインターフェースである凌海が今年2月に山大ゲームズの社長を退任すると発表し...

クラウド サービスへの移行時にクラウド ベンダーを精査するための専門家のヒント

今日では多くの企業にとってクラウド コンピューティングが当たり前になっていますが、コア ビジネスのど...

国家ラジオ映画テレビ総局は、違法ビデオソフトウェア81件を発表した。

微博TV Eyeの公認メディア関係者によると、中国サイバースペース管理局と国家ラジオ映画テレビ総局は...

raksmart: 米国 1Gbps 無制限トラフィック VPS - 月額 1.99 ドル、香港\日本 VPS\米国 cn2 - 月額 2.99 ドル

今から 9 月 5 日まで、raksmart はすべての VPS を大幅値下げいたします。 (1) ...

他人を真似することが何が悪いのでしょうか?あなたのオリジナル性はどれくらいですか?

Gold Digger がウェブサイトを立ち上げてから 1 年以上経ちました。この 1 年間、他のブ...

またまた受賞です! | H3CがGNTCカンファレンスで輝き、インテリジェントネットワークの革新をリード

10月22日から24日まで、国家次世代インターネットエンジニアリングセンターが主催し、南京江北新区な...

スノーデン氏、米国と英国が世界中で数十億のSIMカード情報を盗んだことを明らかに

2月19日の英国紙ガーディアン紙の報道によると、元CIA職員のエドワード・スノーデン氏が公開した最新...