questdb/questdb

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

解决的问题

QuestDB 是一个低延迟、开源的时序数据库,可处理每秒数百万条事件的海量写入,同时保持多年历史数据的可查询性。它消除了预聚合的需要,并提供内置工具用于去重和乱序数据修正。

工作原理

引擎基于零GC的Java构建,关键性能路径使用C++和Rust。数据以内存映射、时间分区的列式格式存储。采用分层存储架构:并行写前日志(WAL)、原生列式分区,以及用于长期存储的Apache Parquet。查询通过SIMD和JIT编译的过滤器在所有CPU核心上执行。

适用人群

专为需要高分辨率遥测和实时分析的行业设计,包括:

  • 资本市场:逐笔数据、订单簿和交易后分析。
  • 航空航天与机器人:飞行测试遥测和任务回放。
  • 能源与基础设施:电网和涡轮机遥测。
  • AI编码代理:通过MCP服务器和特定代理技能进行集成。

主要亮点

  • 高性能:支持每秒高达1900万行的写入,通过Apache Arrow流式输出可达每秒2.2亿行。
  • 时序SQL:在标准SQL基础上扩展了专用函数,如 SAMPLE BYLATEST ONASOF JOIN
  • QWP协议:基于WebSocket的二进制列式协议,实现高效读写。
  • 开放格式:使用Apache Parquet、Iceberg和Arrow,确保数据可被其他工具访问。
  • 广泛集成:支持PostgreSQL Wire Protocol、InfluxDB Line Protocol和REST API。

相关

  • 项目
  • 项目
  • 项目
  • 项目