# EMQX Tables

EMQX Tablesは、EMQX Cloudに組み込まれたフルマネージドの時系列データベースサービスであり、GreptimeDBによって動作しています。外部データベースや統合パイプラインの設定を必要とせずに、MQTTメッセージの保存、クエリ、および分析をシームレスに行うことができます。

EMQX Tablesを利用することで、IoTデータはデバイスからEMQXブローカーを経由してスケーラブルで効率的な時系列ストレージエンジンへ直接流れ込み、標準SQLクエリや一般的な可視化ツールとのネイティブ統合によりリアルタイムのインサイトを実現します。

![product_architecture](./_assets/product_architecture.png)

## GreptimeDBによる動作

EMQX Tablesは、クラウドネイティブで高性能な時系列データベースである[GreptimeDB](https://greptime.com/)を活用しています。高速なデータ取り込み、効率的な圧縮、スケーラブルなクエリに最適化されており、デバイスデータを常に高速かつコスト効率良くアクセス可能に保ちます。

## なぜEMQX Tablesなのか？

MQTTブローカーとデータベースを別々のシステムとして管理すると、統合の複雑さ、配信遅延、コスト増加が発生しがちです。EMQX Tablesは以下を提供することでこれらの課題を解決します。

- MQTTトピックからデータベース、ダッシュボードまでの**統合されたデータパイプライン**。
- **ゼロセットアップ**のフルマネージドバックエンド。
- **リアルタイムのSQLベースクエリと可視化**。
- **単一ベンダーでのシンプルな運用**、複数ツールやベンダー、セキュリティモデルの切り替え不要。

## 主な機能

- **シームレスなMQTT統合**：EMQXルールエンジンや直接シンクを使ってMQTTトピックからデータを直接取り込み、保存可能。
- **組み込みの時系列データベース**：GreptimeDBを基盤に、時系列およびテレメトリデータの保存とクエリに特化。
- **高性能**：IoTシステムで典型的な高頻度取り込みに最適化され、リアルタイム分析をサポート。
- **SQLおよびプロトコル互換性**：SQLやInfluxDB Line Protocolでのクエリが可能。
- **可視化に最適化**：Grafana、Streamlitなどのツールと簡単に接続し、時系列データのダッシュボードを構築可能。
- **統合された体験**：外部ストレージシステムの設定不要。MQTTブローカーと時系列データベースをEMQXコンソール内で一元管理。

## 動作の仕組み

EMQX Tablesは、MQTTメッセージから時系列ストレージおよび分析までのエンドツーエンドのデータフローを提供し、EMQX Cloud内でフルマネージドで運用されます。一般的なワークフローは以下の通りです。

1. EMQX CloudコンソールでEMQX Tablesのデプロイメントを作成。
2. EMQXブローカーを組み込み統合またはルールエンジン経由でEMQX Tablesに接続。
3. MQTTトピック（例：デバイスからのテレメトリ）にデータをパブリッシュ。
4. EMQXが自動的にGreptimeDBバックエンドのテーブルにデータを保存。
5. コンソールのSQLエディターやクライアントツールからデータをクエリ。
6. GrafanaやMetabaseでデバイス状態や過去のトレンドを可視化。

## EMQX Tablesを使うべきケース

EMQX Tablesは、外部インフラ管理なしにMQTTデータの保存、クエリ、分析をシームレスに行いたいIoT開発者やデータエンジニア向けに設計されています。

以下のような場合にEMQX Tablesをご利用ください。

- MQTTデータのためのフルマネージドかつメンテナンス不要なストレージソリューションが欲しい。
- EMQX Cloudから直接テレメトリや時系列データを保存・クエリしたい。
- デバイスデータを基にダッシュボード、分析、監視システムを構築したい。
- 独自に時系列データベースをデプロイ・運用したくない。

### よくあるユースケース

- **IoTテレメトリストレージ**  
  接続されたデバイスから温度、湿度、GPS、センサー読み取り値を時間経過とともに収集・保持。
- **運用監視**  
  バッテリー残量、アップタイム、ステータスなどのデバイス指標を追跡し、リアルタイムのアラートや監視システムを支援。
- **リアルタイムダッシュボード**  
  Grafana、Metabaseなどの可視化ツールでデバイス状態や過去のトレンドを表示。
- **データ分析**  
  時系列データにSQLクエリを実行し、インサイト抽出、パターン検出、下流ワークフローの駆動に活用。

## 料金

EMQX TablesはEMQX Cloudサブスクリプションの一部として、コンピュート、ストレージ、アウトバウンドトラフィックの使用量に基づく課金が行われます。詳細は[料金と請求](./emqx_tables_pricing.md)をご参照ください。

## 次のステップ

- [最初のEMQX Tablesデプロイメントを作成する](./emqx_tables_create_deployment.md)

- [EMQXブローカーとの統合](./integration/emqx_tables_with_broker.md)
