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. 情報
|
<<: 企業の最高情報セキュリティ責任者がクラウドコンピューティングのセキュリティに取り組むべきこと
>>: SonicWall が Capture Cloud Platform を発表、幅広いネットワーク セキュリティ ポートフォリオに仮想機能とエンドポイント セキュリティを導入
最近、WeChat公式アカウントが公開テストを開始しました。「万能のWeChat」が企業向けソフトウ...
多くの初心者ウェブマスターは、ソフトな記事を書こうとペンを手に取ると、アイデアが尽きたと感じますか?...
Bandwagonhost は vpsblast の別名で、OpenVZ をベースにした低価格の S...
今年6月、蔡蔡はA5に「ウェブサイトのコンテンツは毎日更新する必要があるか?」と題する記事を掲載した...
hostbrew は 2009 年に登録された小さな会社で、独自の AS 番号 [AS394180]...
この記事は、インターネット金融の業界背景を踏まえ、数千万レベルのチャネル運営とプロモーションスキルに...
1. バージョン管理を理解するバージョン管理とは何ですか?本当に必要ですか?バージョン管理は、特定の...
消費者心理にはさまざまな種類があり、インターネット上の多くの記事でも関連する説明が提供されていますが...
IDC Review Network(idcps.com)は12月12日に次のように報じた。百度統計...
今日、友人から電話がありました。彼は一般ステーショングループトラフィックのビジネスに携わっていて、今...
arkecx は中東のトルコにも独自のデータセンターを持ち、トルコのクラウド サーバー サービスをす...
[[417926]] 1. 中国の政府クラウド市場は成長を続けている現在、デジタル経済の急速な発展と...
51CTO.com+プラットフォームは、オリジナルの技術コンテンツの選択と絶妙なレイアウトを通じて、...
[[350264]] [51CTO.com クイック翻訳] Istio は、サービスを接続、保護、制...
AppleがiPhoneユーザーの個人情報を入手しているかどうかという質問に対して、Appleは本日...