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 サポート標準的なクエリ言語でデータの取得と分析が可能。
安全なプライベートネットワークブローカーと Tables が同じクラウドプラットフォーム・リージョンかつ同一ネットワークにある場合、低レイテンシのプライベート接続で通信可能。追加インフラは不要。
Line Protocol 互換既存の InfluxDB ワークフローを再利用可能。慣れ親しんだ Line Protocol 形式でデータを書き込み。
フルマネージドインフラ管理不要。スケーリング、バックアップ、監視、アップグレードはすべて自動で対応。

統合フロー

ステップ説明
1. 同時デプロイ同一クラウドプラットフォーム・リージョンにブローカーと Tables を作成し、デプロイ作成時に同じネットワークに紐付けます。これによりプライベート接続が可能となります。異なるリージョンやネットワークの場合は、パブリックインターネットアクセス用に NAT ゲートウェイが必要です。
2. コネクター作成自動生成された認証情報を使い、EMQX Tables へのコネクターを追加します。
3. ルール定義SQL を用いて MQTT トピックからデータを抽出します。
4. アクション設定Line Protocol 形式でデータを整形し、Tables に転送します。
5. クエリと可視化組み込みの SQL エディターや Grafana などのツールでデータを分析します。

ステップごとの統合設定手順については、EMQX Tables へのデータ取り込み をご参照ください。