questdb/questdb

QuestDB is a high performance, open-source, time-series database

何を解決するか

QuestDB は、秒間数百万件のイベントを処理できる低遅延でオープンソースの時系列データベースです。長期間にわたる履歴データもクエリ可能であり、事前集計の必要を排除し、重複削除や順序外データの修正を内蔵ツールでサポートします。

動作方法

エンジンはゼロGCのJavaで構築されており、パフォーマンスが重要なパスにはC++とRustを使用しています。データはメモリマップされた時系列パーティショニングされたカラムに格納されます。階層的ストレージアーキテクチャを採用:並列のWAL(Write-Ahead Log)、ネイティブカラムパーティション、長期保存用にApache Parquetを使用。クエリはSIMDとJITコンパイルされたフィルタを用いてすべてのCPUコアで実行されます。

対象ユーザー

高解像度のテレメトリとリアルタイム分析を必要とする業界向けに設計されています。以下が該当します:

  • 資本市場:チケットデータ、注文書、取引後分析。
  • 航空宇宙およびロボティクス:飛行試験テレメトリ、ミッションリプレイ。
  • エネルギーおよびインフラ:電力網およびタービンのテレメトリ。
  • AIコーディングエージェント:MCPサーバー経由での統合と特定のエージェントスキル。

特徴

  • 高パフォーマンス:最大19M行/秒のインジェスト、Apache Arrowへのストリーミングで最大220M行/秒を実現。
  • 時系列SQL:標準SQLに拡張関数を追加。SAMPLE BYLATEST ONASOF JOIN など。
  • QWPプロトコル:WebSocket上のバイナリカラムプロトコル。読み書きの高効率を実現。
  • オープンフォーマット:Apache Parquet、Iceberg、Arrowを採用。他のツールとのデータ互換性を確保。
  • 広範な統合:PostgreSQL Wire Protocol、InfluxDB Line Protocol、REST APIをサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト