时序数据库TDengine 在能碳管理平台中的关键技术选型与落地实践

新奥数能科技有限公司

2026-06-09 /

小T导读

泛能网能碳产业智能平台作为新奥数能科技有限公司打造的一体化智能平台,服务于公建、工厂、园区等场景,旨在通过物联网、大数据与人工智能技术,实现能源设备的实时监控、运营管理与能碳分析。随着客户规模扩大与数据量激增,平台面临海量设备数据采集、高并发查询、长期存储及指标计算准确性等多重挑战。平台原先基于 OpenTSDB 的架构已无法满足业务发展需求,尤其在数据处理及时性、准确性与资源成本方面存在明显瓶颈。通过引入 TDengine 时序数据库,平台实现了从任务调度到流式计算的架构升级,数据处理性能显著提升,计算时效性最高提升 100 倍,计算时长缩短 2-8 倍,客户投诉率几乎降为零,同时服务器资源从原先的十多台物理机大幅缩减,整体运维成本显著降低。

背景和痛点

泛能网平台自 2018 年启动建设以来,已服务超过 5000 家客户,每客户平均接入约 50 台设备,每台设备每分钟采集 10-20 个数据点,系统每秒数据处理量(TPS)高达 9 万。随着业务扩展,以 OpenTSDB 为基础的架构平台在数据采集、存储、查询和计算方面面临严峻挑战:

  • 海量数据采集与高并发写入:设备数量庞大,采集频率高,部分场景要求秒级甚至毫秒级上报,数据量呈指数级增长。
  • 多维度实时查询需求:客户需按时间维度查询最大值、最小值、平均值等统计指标,并要求查询响应速度快。
  • 长期数据存储压力:部分客户要求保留 5-10 年历史数据,对存储空间和索引管理带来极大压力。
  • 指标计算不准确与延迟:原有基于任务周期调度的计算方式导致日、月、年指标计算结果不一致。同时,计算延迟严重,影响数据及时性。

架构升级

基于上述痛点,平台在数据库选型中设定了明确目标:支持高并发写入与查询、具备高效压缩与长期存储能力、支持流式计算与实时处理、具备良好的扩展性与运维便利性。在对比了多款时序数据库(Timeseries Database)后,项目初期我们选择使用了 TDengine TSDB 2.x 的社区版本,社区版本在集群高可用、性能方面可以很好支撑业务平稳运行。但我们在使用 2.x 社区版本中遇到几个问题:

  1. 2.x 社区版本不支持数据删除,但是新版本 3.x 里默认支持;
  2. 2.x 社区版本 UPDATE 参数无法动态修改,新版本 3.x 默认开启了更新数据的功能;
  3. 2.x 版本已经停止维护更新,且社区版没有专有的售后运维的支持;

基于以上几点,为了保障未来业务稳定运行,我们决定升级到 TDengine TSDB 3.3.6.x 的企业版稳定版本。

业务架构

平台采用“采算分离”架构,物联网平台负责数据采集,TDengine 时序数据库(Timeseries Database)作为核心存储与计算引擎,配合流式计算模块实现实时数据处理。

  • 数据采集层:通过物联网平台接入设备数据。
  • 流式计算层:替换原有任务调度,实现实时指标计算。
  • 存储层:TDengine TSDB 集群负责测点数据与指标结果的存储与查询。
时序数据库TDengine 在能碳管理平台中的关键技术选型与落地实践 - TDengine Database 时序数据库

数据模型

平台基于 TDengine TSDB 的超级表与子表模型进行建模:

  • 测点超级表:按设备类型分类,如电能表、流量计等,每台设备对应一个子表。
  • 指标超级表:按时间维度(时、分、日、月、年)分类,每个子指标对应一个子表,记录指标值。
时序数据库TDengine 在能碳管理平台中的关键技术选型与落地实践 - TDengine Database 时序数据库

迁移经验

面对千亿级历史数据、新旧数据模型差异以及在线业务零中断的核心要求,我们设计了一套灰度迁移与数据同步方案。整个迁移过程分为三个阶段:新版本测试验证、历史数据迁移、灰度切换与流量迁移。全程采用渐进式灰度策略,确保业务平稳过渡。

第一阶段:新版本测试验证

我们在 TDengine TSDB 3.x 企业版集群中测试验证业务应用是否正常工作,需要升级 taosjdbc driver 版本至 TDengine TSDB 3.x。其他业务 SQL 无需修改,与 TDengine TSDB 2.x 版本保持一致。

第二阶段:历史数据迁移

历史数据规模庞大,且需保证迁移过程中不影响线上查询性能。我们放弃了传统的数据导出-导入方式,而是采用 TDengine TSDB企业版工具 taosX 进行在线热迁移。该工具支持从 TDengine TSDB 2.x 集群直接向 3.x 集群同步数据,具备断点续传、增量同步和一致性校验能力。

具体步骤如下:

  1. 全量数据同步:首先启动全量迁移任务,将历史数据按照时间范围分片同步,避免单次任务负载过高。
  2. 增量数据追赶:在全量迁移期间,系统持续产生新数据,我们通过 taosX 实时捕获 TDengine TSDB 2.x 集群的增量写入,并同步至 TDengine TSDB 3.x 集群,保持两者数据差距在分钟级别。
  3. 数据一致性验证:每日选取关键业务时段,对比两个集群的统计指标,确保数据完整无误。

整个迁移过程在业务低峰期执行,并通过监控平台实时观测源集群与目标集群的负载、延迟及错误率,确保系统稳定。

第三阶段:灰度切换与流量迁移

数据同步完成后,我们通过可配置的路由开关逐步将客户请求导向新集群:

  1. 读灰度策略:先选取少数非核心客户,将其查询请求路由至 TDengine TSDB 3.x 集群,对比返回结果与原有集群是否一致,并监控查询延迟。
  2. 双写并行期:在确认查询无误后,开启双写机制——物联网平台同时向两个集群写入数据,新集群作为主查询源,旧集群作为备份和比对基准。
  3. 分批切换:按照客户分组、地域、业务线等维度,分批次将全部查询流量切换至新集群,每批切换后观察业务指标与系统性能,如有异常立即回退。
  4. 最终切换与降级:当全部流量稳定运行于 TDengine TSDB 3.x 集群一周后,停止向旧集群写入数据,并逐步归档旧集群数据。旧集群仍保留一段时间作为应急回退保障。

通过上述分阶段、灰度化的迁移方案,我们实现了千万级测点、千亿条数据的平滑迁移,全程业务无感知,客户查询零中断。迁移过程中积累的模型映射脚本、验证工具和监控方案,也为后续其他业务的数据迁移提供了重要模板。

收益总结

  • 性能提升:通过这次平台升级,指标计算的及时性得到了大幅提升。对比以往,我们的计算时效性最少提高了 4 倍,最高的时候,例如从年指标计算频率两天一次提高到每分钟一次,时效性提高了 100 倍。计算时长方面,最少也缩短了两倍,最高提升了 8 倍。
时序数据库TDengine 在能碳管理平台中的关键技术选型与落地实践 - TDengine Database 时序数据库

  • 准确性提升:通过流式处理和层级加工的方式,我们的指标数据能够前后一致地匹配,解决了无序数据带来的准确性问题,客户投诉率接近零。同时,延迟数据的处理也更加智能化,可以自动计算延迟测点的数据,并递归修正受影响的所有指标。对于日、月、年指标计算频率不一致的问题,我们也做了统一处理,现在所有计算频率统一为 15 分钟,并使用统一的时间窗口进行计算,确保数据的准确性。
  • 成本降低:原有的 OpenTSDB 架构使用十多台物理服务器,每台 60+ 核心,仍无法完全满足需求。迁移至 TDengine TSDB 后,服务器数量大幅减少,资源利用率显著提升,整体硬件与运维成本降低约 60%。服务器资源减少,运维复杂度下降。

过去与未来

从最初的选择 OpenTSDB,到我们面临种种挑战,决定进行新一轮的数据库选型,这一路走来充满了思考与抉择。2018 年到 2022 年,OpenTSDB 在我们私有化场景中的表现曾一度支撑着我们的系统,但随着业务的不断扩展,问题也接踵而至——高昂的部署成本、复杂的运维难题,让我们不得不寻求新的解决方案。

正是在这个关键时刻,TDengine 走入了我们的视野。初次接触 TDengine 时,我们带着试探的心态,先在私有化场景中做了尝试。出乎意料的是,它不仅帮助我们降低了部署和运维成本,还让我们对未来充满了信心。于是 2023 年 6 月,我们正式启动了平台的全面切换,将 TDengine 应用到核心生产环境。

TDengine TSDB 在泛能网平台中的成功应用,为系统性能与运维效率带来显著提升。未来,团队将持续关注 TDengine TSDB 新版本功能,进一步探索其在边缘计算、多级存储、实时分析等场景中的深度应用,推动平台向更智能、更高效的方向演进。

公司简介

新奥数能科技有限公司成立于 2018 年,隶属于新奥集团,专注于能源行业智能化平台研发与运营,致力于通过物联网、大数据与人工智能技术,为客户提供一体化的能碳管理与运维解决方案。泛能网依托新奥集团深厚的产业实践,以泛能理念为牵引,聚焦能源数智化,围绕 3100 万家庭用户、27 万工商业客户、260 个城市燃气项目积累了丰富的应用场景。

作者

龚恒星