MySQL Binlog ログ処理ツールの比較分析

MySQL Binlog ログ処理ツールの比較分析

運河

ポジショニング: データベースの増分ログ分析に基づいて、増分データのサブスクリプションと消費を提供し、現在は主に MySQL をサポートしています。

原理:

  • Canal は MySQL スレーブの対話型プロトコルをシミュレートし、MySQL スレーブのふりをして、ダンプ プロトコルを MySQL マスターに送信します。
  • MySQL マスターはダンプ要求を受信し、バイナリ ログをスレーブ (チャネル) にプッシュし始めます。
  • Canalはバイナリログオブジェクト(元々はバイトストリーム)を解析します

パーサープロセス全体は、大まかにいくつかのステップに分けられます。

  • 接続は、最後に成功した分析の場所を取得します(初めて起動する場合は、現在のデータベースの初期場所またはバイナリログの場所を取得します)
  • 接続が確立され、BINLOG_DUMPコマンドが実行される
  • MySQLがバイナリログのプッシュを開始
  • 受信したバイナリ ログは Binlog パーサーによって解析され、特定の情報が追加されます。
  • データ保存のためにEventSinkモジュールに渡すことは、保存が成功するまでブロック操作になります。
  • 保存が成功すると、バイナリログの場所が定期的に記録されます。

  • データ フィルタリング: ワイルドカード フィルタリング モード、テーブル名、フィールド コンテンツなどをサポートします。
  • データルーティング/配布: 1:n を解決します (1 つのパーサーが複数のストアに対応)
  • データのマージ: n:1 を解決 (複数のパーサーが 1 つのストアに対応)
  • データ処理: 入店前の追加処理、例えば入店

マクスウェル

Canal は Java で開発されており、サーバーとクライアントに分かれています。派生アプリケーションが多数あり、パフォーマンスが安定しており、機能が強力です。Canal では、Canal によって解析されたデータを使用するために独自のクライアントを作成する必要があります。

Canal に対する Maxwell の利点は、使いやすいことです。データの変更が JSON 文字列として直接出力されるため、クライアントを作成する必要がありません。

データバス

Databus は、LinkedIn データ処理パイプラインの不可欠な部分となっている低遅延の変更キャプチャ システムです。 Databus は、主要なデータの変更を確実にキャプチャ、ストリーミング、処理するための基本的な要件に対応します。 Databus は次の機能を提供します。

  • 情報源と消費者の分離
  • 高い可用性を備えた順序どおりの少なくとも 1 回の配信が保証されます
  • データ全体の完全なブートストラップ機能を含め、変更ストリームの任意のポイントから消費を開始します。
  • パーティション消費
  • ソースの一貫性の維持

Alibaba Cloud のデータ転送サービス (DTS)

データ転送サービス (DTS) は、RDBMS (リレーショナル データベース)、NoSQL、OLAP などの複数のデータ ソース間のデータ相互作用をサポートする Alibaba Cloud が提供するデータ フロー サービスです。 DTS は、データ移行、リアルタイム データ サブスクリプション、リアルタイム データ同期など、さまざまなデータ転送機能を提供します。サービス中断のないデータ移行、異なる場所でのデータ災害復旧、異なる場所でのマルチアクティブ (ユニット化)、国境を越えたデータ同期、リアルタイム データ ウェアハウス、クエリ レポートの転送、キャッシュ更新、非同期メッセージ通知など、複数のビジネス アプリケーション シナリオを実現し、安全性、拡張性、可用性に優れたデータ アーキテクチャの構築に役立ちます。

利点: データ転送サービス DTS は、RDBMS、NoSQL、OLAP などの複数のデータ ソース間のデータ転送をサポートします。データ移行、リアルタイムデータサブスクリプション、リアルタイムデータ同期など、複数のデータ転送方法を提供します。サードパーティのデータフローツールと比較して、データ転送サービス DTS は、より多様で高性能、高セキュリティ、信頼性の高い転送リンクを提供します。同時に、多くの便利な機能を提供し、転送リンクの作成と管理を大幅に容易にします。

私の個人的な理解では、これはパッケージ化された SQL オブジェクトをプッシュするメッセージ キューであり、これらの SQL オブジェクトを自分で解析するサービスを作成できます。

高額な導入および保守コストを削減します。 DTS は Alibaba Cloud RDS (オンラインリレーショナルデータベース)、DRDS などの製品に適応しており、Binlog ログのリサイクル、マスター/スレーブ切り替え、VPC ネットワーク切り替えなどのシナリオにおけるサブスクリプションの高可用性の問題を解決します。同時に、RDS に対してターゲットを絞ったパフォーマンス最適化が実行されます。安定性、パフォーマンス、コストを考慮して推奨されます。

上記は、MySQL Binlog ログ処理ツールの比較分析の詳細な内容です。MySQL Binlog ログ処理ツールの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • MySQLはデータ復旧を実装するためにbinlogログを使用する
  • MySQL binlog の使用方法の詳細な説明
  • MySQL binlog ログを開く方法
  • MySQLを監視するためのbinlogログ解析ツールの詳しい説明:Canal
  • MySQLデータベースのbinlogクリーンアップコマンドの詳細な説明
  • MySQL Binlog ログの読み取り時によくある 3 つのエラー
  • mysql binlog (バイナリログ) を表示する方法
  • mysql binlog ログを正しくクリーンアップする 2 つの方法
  • MySQL の binlog ログと、binlog ログを使用してデータを回復する方法を説明します。
  • MySQL データベースの Binlog 使用法の概要 (必読)

<<:  HTML の一般的でないタグ optgroup、sub、sup、bdo のサンプルコード

>>:  Dockerは指定されたメモリで操作を実行します

推薦する

JavaScript オブジェクト (詳細)

目次JavaScript オブジェクト1. 定義2. オブジェクトの分類3. オブジェクトを定義する...

OR キーワードを使用した MySql 複数条件クエリ ステートメント

前の記事では、And キーワードを使用した MySql の複数条件クエリ ステートメントを紹介しまし...

MySQL 5.7 共通データ型

——「MySQL in Simple Terms (第 2 版)」からのメモ数値型整数型バイト最小最...

HTML で div+CSS を使用してシンプルな矢印アイコンを実装するコード

ウェブデザインでは、ウェブページを美しく見せるために矢印を装飾としてよく使用します。現在、多くのウェ...

Chromeの最小フォントサイズ制限12pxに対する最終的な解決策

ウェブサイトを作成するユーザーの多くが、このような問題に遭遇すると思います。Chrome のデフォル...

divコンテナ内の背景色または画像は、サイズが大きくなるにつれて大きくなります。

コードをコピーコードは次のとおりです。高さ:自動 !重要;高さ:550px;最小高さ:550px; ...

Vueドロップダウンリストの2つの実装方法の比較

Vueドロップダウンリストの2つの実装最初の方法はv-forを使用する <el-select ...

Typescript+React でモバイルと PC でシンプルなドラッグ アンド ドロップ効果を実現

この記事では、モバイルとPCで簡単なドラッグアンドドロップ効果を実現するためのTypescript ...

Matlab による JavaScript プログラミング、重心アルゴリズムによる位置決め学習

目次Matlab セントロイドアルゴリズムMatlab はクローズドな商用ソフトウェアであり、米国政...

K8Sの高度な機能を理解するための記事

目次K8Sの高度な機能高度な機能要約するkubectl サービスの問題のトラブルシューティングK8S...

Vue で手ぶれ補正とスロットリングを使用する方法

目次序文コンセプト安定意味使用シナリオコードVueでの使用スロットリング意味使用シナリオコードVue...

docker compose helloworld を使い始めるための詳細なプロセス

前提条件Compose は、Docker コンテナをオーケストレーションするためのツールです。Doc...

Docker用国産イメージウェアハウスの使い方

1. 問題の説明何らかの理由により、中国でのDockerイメージのダウンロード速度は特に遅くなります...

フロントエンドでよく使われるjs関数メソッド

目次1. メール2. 携帯電話番号3. 電話番号4. URLアドレスですか? 5. 文字列ですか? ...

JavaScript スロットリングとアンチシェイクに関する簡単な説明

目次スロットルと手ぶれ防止コンセプト:違いスロットリングの実装スロットル機能手ぶれ補正の実装手ぶれ防...