6 月 26 日,涛思数据旗下时序数据库(Time Series Database) TDengine 正式发布 IoT 场景下 TDengine 3.0 性能对比分析报告,该报告在 IoT 场景下从数据写入、压缩和查询等维度,对比了 TDengine 与市场其他流行的时序数据库产品的性能差异,其中所有测试均在标准化条件下使用公开数据完成。此外,为了方便开发者验证报告结果,该报告中的数据在准备好物理环境后,可以由脚本一键执行生成。 IoT 场景下三大数据库写入性能对比 早在 2 月 21 日,TDengine 就已经针对 DevOps 场景发布了第一期 TDengine 3.0 性能对比分析报告,报告显示在 DevOps 场景下,TDengine 3.0 在写入、查询、存储、资源消耗等方面均优于另外两大时序数据库产品,验证了 TDengine 基于时序数据场景所设计的独特架构带来的性能优势以及成本控制水平。 值得一提的是,上述两大报告均是基于性能基准测试平台 Time Series Benchmark Suite (TSBS) 完成的。TSBS 是由 Timescale 打造并开源,集多种应用场景下时序数据生成、数据写入、查询处理、自动化结果汇总统计等功能于一体的时序数据库性能基准测评平台。由于其开源的特性,自 2018 年以来,该平台已被全球多家领先的时序数据库厂商使用,成为时序数据库性能测试上使用最为广泛的平台。 据了解,本次 TDengine 发布的 IoT 场景下 TDengine 3.0 性能对比分析报告使用 TSBS IoT 场景作为基础数据集,模拟虚拟货运公司车队中一组卡车的时序数据,预设了五种卡车规模场景,在相同的 AWS 云环境下运行了 TDengine 3.0、TimescaleDB 2.10.1 和 InfluxDB 1.8.10,从四大维度进行对比测试并输出结果。 测试报告结果可简单总结如下:
- 数据写入对比:在全部的五个场景中,TDengine 写入性能均优于 TimescaleDB 和 InfluxDB。写入性能最大达到 TimescaleDB 的 3.3 倍,InfluxDB 的 16.2 倍。此外,TDengine 在写入过程中消耗了最少计算(CPU)资源和磁盘 IO 开销。
- 数据查询对比:对于大多数查询类型,TDengine 的性能均优于 InfluxDB 和 TimescaleDB,在复杂的混合查询中 TDengine 展现出巨大的优势——其中 avg-load 和 breakdown-frequency 的查询性能是 InfluxDB 的 426 倍 和 53 倍;daily-activity 和 avg-load 的查询性能是 TimescaleDB 的 34 倍和 23 倍。
- 数据存储对比:报告显示,TimescaleDB 在所有场景下数据规模均显著地大于 InfluxDB 和 TDengine,并且这种差距随着数据规模增加快速变大,其落盘数据规模最高达到了 TDengine 的 12.2 倍;InfluxDB 在前三个场景中落盘后数据文件规模与 TDengine 非常接近,但随着数据规模的增长(场景四、场景五),InfluxDB 落盘后文件占用的磁盘空间最大达到了 TDengine 的 2.8 倍,这也直接说明 TDengine 更加适用于时序大数据的存储。
- 资源消耗对比:从整体 CPU 开销上来看,TDengine 不仅完成全部查询的时间低于 TimescaleDB 和 InfluxDB,在整体上 CPU 计算资源的消耗也远小于 TimescaleDB 和 InfluxDB。在整个查询过程中,TDengine 内存也始终维持在一个相对平稳的状态。