最近因为一些业务需要,一直在研究国产时序数据库,刚好顺便出一些测评。
第一轮选中了 TDengine 和 KaiwuDB 先试试。

TDengine 确实知名度比较高,开源生态成熟,在时序数据库中还是比较有代表性的;
KaiwuDB 我也是才知道不久。24年才正式开源的国产新生代力量,在墨天轮时序库榜单上升势头极快,且去年在 benchANT 性能榜单评测中拿下第一,性能表现看上去也算是在第一梯队了。
本次测试我用 TSBS 标准跑了一组完整对比,覆盖单机 / 分布式写入、多场景查询时延,今天把结果整理出来分享给同样在选型的朋友们,仅供参考。

一、测试环境与流程说明

本次测试所有数据库进程均部署于Docker容器, Kylin Linux Advanced Server release V10 (Halberd),内核版本为 4.19.90-89.11.v2401.ky10.x86_64。硬件资源如下:

  • 2 颗 Intel Xeon Gold 6240 CPU(2.6GHz 基础频率,最高 3.9GHz),共 72 逻辑核(18 核 / 颗 ×2,超线程开启),2 个 NUMA 节点
  • 通过 Docker 限制单节点仅使用 16 核
  • 总容量 394.8GB(MemTotal: 394835452 kB),支持 DirectMap4k / DirectMap2M / DirectMap1G 页映射
  • 通过 Docker 限制单节点内存上限为 32GB
  • 每个容器(节点)绑定单个 1.8TiB Intel NVMe 硬盘

测试工具与数据处理:

二、写入性能详细对比

写入部分使用 import_speed 作为吞吐指标,单位为 rows/s,数值越高越好。

1. 单机写入吞吐量

场景 TDengine(rows/s) KaiwuDB(rows/s) KaiwuDB相对提升
场景一 2335510.23 3006478.08 +28.7%
场景二 1824812.90 2961473.92 +62.3%
场景三 1057568.12 2825616.69 +167.2%
场景四 348140.28 1626088.47 +367.1%

图 1:单机场景写入吞吐量对比。
图 1:单机场景写入吞吐量对比。

单机场景下,KaiwuDB 领先,最大提升超 3.6 倍,数据规模越大优势越突出。

2. 分布式写入吞吐量

场景 TDengine(rows/s) KaiwuDB(rows/s) KaiwuDB相对提升
场景一 2355539.30 1995710.07 -15.3%
场景二 1818971.71 2138717.90 +17.6%
场景三 1049025.07 1813444.69 +72.9%
场景四 329753.39 1143143.50 +246.7%

[图片]

图 2:分布式场景写入吞吐量对比。

分布式场景下,KaiwuDB 场景一落后,后续场景快速反超,最大提升超 2.4 倍

三、查询性能详细对比

查询性能计算公式:(TDengine 延迟 - KaiwuDB 延迟)/TDengine 延迟

  • 正值:KaiwuDB 时延更低,性能更优
  • 负值:TDengine 时延更低,性能更优

1. 整体查询表现统计

部署方式 Worker数 KaiwuDB领先数 平均提升 最佳查询项 最弱查询项
单机 1 47/60 +35.0% lastpoint(+91.0%) double-groupby-5(-41.9%)
单机 8 54/60 +62.6% lastpoint(+94.0%) double-groupby-1(-15.8%)
分布式 1 50/60 +26.7% lastpoint(+88.0%) double-groupby-5(-12.6%)
分布式 8 51/60 +50.6% lastpoint(+91.4%) double-groupby-1(-53.3%)

在这里插入图片描述

图 3:单机 1worker 查询延迟相对差异
在这里插入图片描述

图 4:单机 8worker 查询延迟相对差异
在这里插入图片描述
图 5:分布式 1worker 查询延迟相对差异
在这里插入图片描述
图 6:分布式 8worker 查询延迟相对差异

2. 关键场景查询表现

  • 单机场景下,KaiwuDB 的写入性能在四个场景全部领先,且场景越大优势越明显。查询侧,lastpoint、high-cpu-all、single-groupby-* 等短查询改善明显,但 double-groupby-1/5/all 整体仍弱于 TDengine。
  • 分布式场景下,KaiwuDB 在场景一写入略逊于 TDengine,但从场景二开始明显反超。查询方面,lastpoint、groupby-orderby-limit 和多数 single-groupby 仍然占优,double-groupby-* 在 8worker 下回退较为明显。

四、核心测试结论回顾

  • 单机写入:KaiwuDB 在 4/4 个场景领先 TDengine,且随着场景规模提升,优势明显扩大。
  • 分布式写入:KaiwuDB 在 3/4 个场景领先,场景一略落后,场景二至四显著反超。
  • 查询性能:KaiwuDB 在 lastpoint、high-cpu-all、single-groupby 等短查询场景优势明显。
  • 风险点:double-groupby-1/5/all 尤其在分布式 8worker 下仍弱于 TDengine。

五、选型建议

综合本次 TSBS 测试结果:

  • KaiwuDB:写入性能全面占优,单机/大规模分布式场景优势极强;短查询、点查时延极低,适合高吞吐写入+高频简单查询的时序业务,比如产线设备实时运行监控、光伏/风机状态采集
  • TDengine:在double-groupby类重聚合查询上保持稳定优势,更适合以复杂聚合计算为核心的业务场景,比如能耗管理、报表核算、负荷预测之类的

选型建议:

  • 业务侧重大规模数据写入、低时延短查询 → 优先选择KaiwuDB
  • 业务侧重高并发复杂聚合查询 → 建议结合实际业务模型进一步验证

大家平时用哪款时序数据库更多?欢迎在评论区交流使用经验,一起学习进步!

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐