• 从 OpenTSDB 到 TDengine,至数物联网平台技术改造之路


    小 T 导读:至数物联网平台场景多、数据模型复杂,伴随着业务需求的不断迭代及数据量的不断上涨,原有的 OpenTSDB+MySQL 的组合逐渐力不从心,局限性日益凸显。在对 TDengine 进行充分了解与调研后,基于 TDengine 对至数摇光进行了彻底性的改造。本文分享了至数结合自身平台特点进行系统架构升级改造的经验,以供参考。

    公司简介&项目背景

    至数(Medatc)是一家致力于打造行业最佳设备资产数据化运营、管理、服务的平台,为客户提供全方位的设备资产管理支撑,其拥有丰富的行业经验,以及在大数据、人工智能、物联网、互联网+领域的创新实践能力。公司成立至今已经获得红杉资本等知名投资机构的战略投资。

    至数摇光(即:至数物联网平台)通过动态能量主动标识,动态环境主动标识,智能网关,应用工业互联网时序数据高效采集,边缘计算以及智能算法自动分发等一系列技术,基于医疗设备行业主数据规范,助力医疗机构短周期、低成本、高质量、广覆盖地实现有源设备智慧管理。

    一、至数摇光具有场景多、数据模型复杂的特点

    至数摇光是以提效降耗为目标,帮助医疗机构实现有源设备的高效管理,为设备使用效率智能分析,设备科学配置,设备动态调配,设备安全保障提供全方位支撑。目前共推出了 15 项智能场景应用,30 项事件及异常告警提醒。

    至数摇光的上述场景改造前数据库采用 OpenTSDB+MySQL 结合的方式实现,由于 OpenTSDB 无法满足复杂查询场景,因此 80% 的场景指标只能基于 MySQL 数据库来实现,这样带来的问题就是 MySQL 数据库的数据增长迅速,需要定时做冷热数据分离及数据库表维护动作。

    二、TDengine 助力至数物联网平台实现技术改造

    作为一个大而全的数据库,OpenTSDB 稍显笨重,伴随着业务需求的不断迭代及数据量的不断上涨,其局限性日益凸显,系统的架构升级和改造工作日渐迫切。

    2021 年我们在对 TDengine 有了充分的了解后,决定将至数摇光从时序数据 OpenTSDB 迁移到 TDengine,并基于 TDengine 的特性对摇光进行彻底性的改造。目前改造工作已经全部完成,改造后有大约 80% 左右的指标模型放到了 TDengine 中,20% 左右的主数据或维表数据存放在 MySQL 数据库中。

    相较于改造前的 80% 指标模型存放在 MySQL 中,20% 指标数据存放在 OpenTSDB 数据库中,结果刚好进行了颠倒,服务器资源使用情况也有所下降。应用整体的页面影响速度显著提高,数据模型及数据指标上也可以更加地灵活多变。

    以下为至数摇光网络拓扑路图:

    至数摇光网络拓扑路图

    以下为改造前后的数据库对比:

    改造前后的数据库对比

    以下以 11 万条数据表来做查询,结果如下:

    11万数据用时0.091578s

    聚合查询,1,155,876 条数据在耗时不到 0.17 秒的时间完成 GROUP BY 聚合查询

    聚合查询截图

    写入情况,这里截了一张 Flink 写入TDengine 数据库图片,3 个小时左右的时间里写入了 250 万条采集数据,这样的写入量远远没有达到 TDengine 的写入瓶颈,对业务的增长留有充裕的空间。 

    Flink 写入TDengine 数据库图片

    下面是我们的部分应用展示: 

    应用展示1
    应用展示2

    三、TDengine 使用上的一些意见反馈

    我们有些按小时、按天、按月的指标计算的时候如果当时的维表数据有误需要重算,重算的数据需要覆盖之前的数据或者把之前的数据删除掉重新写入。不过 TDengine 目前不支持数据删除,希望未来能够支持删除功能。

    目前更新只支持更新相同时间戳数据,希望 tag 和普通字段能够联合筛选做 update;也有业务场景需要此类功能。

    另外,目前排序还存在一定的限制,希望 tag 和普通字段能够进行自由升降序排列。

    最后感谢涛思团队开源出来 TDengine 这款优秀的时序数据库系统,也要感谢一下涛思团队对至数研发团队的支持与帮助,祝福涛思数据越办越好!


    想了解更多 TDengine 的具体细节,欢迎大家在GitHub上查看相关源代码。

  • 相关阅读:
    autolayout--约束的优先级
    CV
    iOS及Mac开源项目和学习资料(超级全面)
    终端中命令总结
    git使用方法笔记
    Shell命令
    git-在控制台下向gitHub中的repository中上传一个文件
    iOS
    iOS -雪花动画
    copy语法
  • 原文地址:https://www.cnblogs.com/taosdata/p/16078035.html
Copyright © 2020-2023  润新知