Skip to content

EMQX ブローカーと EMQX Tables の統合

EMQX Tables は、EMQX Cloud に組み込まれたフルマネージドの時系列データベースサービスであり、MQTT データの効率的な取り込み、保存、分析を目的としています。EMQX ブローカーとはルールエンジンを介してネイティブに統合されており、InfluxDB Line Protocol をサポートしているため、デバイスからデータベースへのシームレスなデータフローを実現します。

本ドキュメントでは、EMQX ブローカーと EMQX Tables のアーキテクチャ、統合プロセス、および統合の利点について説明します。

アーキテクチャ概要

EMQX Tables は データ統合 を通じて EMQX ブローカーと連携しており、MQTT メッセージを最小限の設定で直接 EMQX Tables に書き込むことが可能です。これにより、サードパーティのデータベースやパイプライン、ミドルウェアは不要となります。

  • 外部データベースは不要
  • 追加のコネクターやサービスも不要
  • すべて EMQX コンソール内で管理可能

一般的なワークフロー

  1. デバイスが MQTT データを EMQX ブローカーに送信:温度、電力、GPS などのテレメトリーデータ。
  2. ルールがメッセージを処理:受信メッセージにマッチするルールがペイロードの変換、フィールド抽出、データ整形を行うことも可能。
  3. データが EMQX Tables に取り込まれる:ルールアクションで Line Protocol を使用。
  4. SQL クエリ:ダッシュボード、アラート、分析のためにデータを取得。

統合の利点

機能説明
ネイティブ統合EMQX Cloud コンソール内でワンクリック設定。サードパーティのデータベースやコネクターは不要。
スキーマ設定不要テーブルが構造を自動推論。スキーマ定義やマイグレーションは不要。
高スループット+圧縮高負荷取り込みに最適化。ストレージは圧縮されコスト削減。
強力なルールエンジン保存前にデータのフィルター、変換、強化、ルーティングが可能。
SQL サポート標準的なクエリ言語でデータの取得・分析が可能。
安全なプライベートネットワーク同一クラウドプラットフォームかつ同一リージョン内で、同じネットワークを共有する Broker と Tables は、追加インフラ不要の低レイテンシなプライベート接続で通信。
Line Protocol 互換既存の InfluxDB ワークフローを再利用可能。慣れ親しんだ Line Protocol 形式でデータを書き込み。
フルマネージドインフラ管理不要。スケーリング、バックアップ、監視、アップグレードはすべて代行。

統合フロー

ステップ説明
1. 同時デプロイBroker と Tables を同じクラウドプラットフォームかつ同一リージョンに作成し、デプロイ作成時に同じネットワークに関連付けます。これによりプライベート接続が可能になります。異なるリージョンやネットワークの場合は、パブリックインターネットアクセス用に NAT ゲートウェイが必要です。
2. ユーザー作成SqlInsert 権限を持ち、対象データベースにアクセス可能な EMQX Tables ユーザーを作成します。
3. コネクター作成EMQX ブローカーにコネクターを追加し、データ書き込みに使用するユーザー名を選択します。
4. ルール定義SQL を使って MQTT トピックからデータを抽出します。
5. アクション設定Line Protocol 形式でデータを整形し、Tables に転送します。
6. クエリ+可視化組み込みの SQL エディターや Grafana などのツールでデータを分析します。

ステップごとの統合セットアップ手順は、こちらをご参照ください:EMQX Tables へのデータ取り込み