TDengine 3.0 在实际企业中的应用效果如何?四个成功案例给你答案

原创
02/01 17:38
阅读数 100
AI总结

TDengine 3.0 自 2022 年 8 月于 TDengine 开发者大会正式亮相后,至今已经历多次更新迭代,不久前发布的《3.2.1.0 发布!时间转换函数+BI 集成+视图正式上线!》为大家介绍了最新版本 3.2.1.0 的优化详情。可以说,经过产品研发人员和社区用户的不断努力,3.0 的稳定性和易用性也在不断提升。在 3.0 版本中,我们对产品底层进行了全面的变化和调整,除了架构的科学性和高效性外,还将用户体验作为重点优化方向之一。

为了让大家更深入地了解到 TDengine 3.0 在实际企业环境中的应用和效果,本篇文章汇总了四个真实的企业部署实践案例,给到有需要的用户参考。

中国地震台网中心 x TDengine 3.0

“在地震监控领域的可视化中,最重要的就是展示信息的完整性、实时性、可交互性,灵活性。TDengine 高效的查询能力以及简单易用的 SQL 语句可以很方便的完成上述工作。通过网页展示工具调用 TDengine 的 SQL,我们完成了展示地震事件的主看板:看板中的地图可以展示台站的每秒峰值记录,点击近期地震事件便可以进行一段时间(例如该地震发生时刻前 1min 和后 2min)内的地震数据回放。”

业务背景

近年来,随着地震台站密集建设,台站仪器采集汇入中国地震台网中心的地震波形数据也增长了一个数量级。地震波形数据主要是指由国家地震台站、各省区域地震台网等地震观测网络系统中地震计采集并传回中心的数据,具有典型的时序数据特征,是开展地震监测预警、数据分析与挖掘、地震异常研判等应用的基础材料。为满足地震预警数据存储、检索和处理的建设与集成需求,以及响应国家国产软件自主可控的号召,中国地震台网中心决定选用国产数据库 TDengine 来存储和处理地震波形数据。

架构图

TDengine 3.0 在实际企业中的应用效果如何?四个成功案例给你答案 - TDengine Database 时序数据库

改造效果

该项目目前使用的是 3.0.6.0 版本的 5 节点集群,单台服务器配置为:48CPU(s), 192GB 内存 ,500GB SSD + 1.2TB *6HDD 硬盘。项目运行至今,TDengine 接入的原始数据包每天约 900GB,每秒大概接入超过 5 万个地震数据包,每天总数据量约 5000 亿条。对于常规的 INT 类型数据,TDengine 压缩比可达到 5%-10% 之间,对于 VARCHAR 类型的数据,压缩比可达到 15-20%,极大程度地节约存储成本。在集群日常负载上,单台数据库服务端 CPU 使用率 40%~50%,内存占用 14%~20%,运行平稳。

点此查看案例详情

中移物联 x TDengine 3.0

“我们当前使用的是 3.0.2.5 版本,但是由于业务本身不允许停机,所以没办法做离线升级,后续会由 TDengine 企业版团队协助我们在线升级至最新版本。TDengine 3.0 的安装部署上保留了和 2.0 一样的简单易用模式,升级操作只需要备份数据文件目录,覆盖安装即可,而且写入速度极高,接近硬盘的连续写入性能。”

业务背景

在中移物联网的智慧出行场景中,需要存储车联网设备的轨迹点,还要支持对车辆轨迹进行查询。为了更好地进行数据处理,他们在 2021 年上线了 TDengine 2.4.0.18 版本的 5 节点 3 副本集群,一直稳定运行。3.0 发布后又经过几度优化,中移物联网关注到了这一版本的众多特性,包括 Raft 协议的引入使 TDengine 拥有了更标准的一致性算法、存储引擎的重构优化了 2.x 版本的设计、查询灵活度大幅提升、支持更强大的流式计算等等。在经过进一步调研后,其决定进行从 2.x 到 3.x 的大版本升级。

架构图

TDengine 3.0 在实际企业中的应用效果如何?四个成功案例给你答案 - TDengine Database 时序数据库

改造效果

目前该项目共有 102 万张子表,已经累积的总数据量已经达到了 2000 亿行,3 副本,磁盘占用 3.1TB。在迁移到 TDengine 3.0 之后,各方面的表现依然非常不错:业务的写入峰值达到了 1.2-1.3w 行/s ,数据迁移的过程中可以达到 20w 行/s,这些情况下 TDengine 都可以轻松处理;存储大约只有 MySQL 的 1/7;读取数据性能也很突出,其最常用的单设备单日查询,可以在 0.1s 内返回结果。

点此查看案例详情

搜狐基金 x TDengine 3.0

“由于‘超级表’的存在,数据建模变得非常清晰,几乎所有查询都可以以‘超级表’为核心用简单的 SQL 完成。此外,基于‘自动建表’这个特色功能,我们可以无需校验就能够直接建表,这让我们得以非常轻松地完成各只基金数据的拆分建表以及写入工作。”

业务背景

对于搜狐基金来说,其所购买的数据源的基金数据都是混在一起的,包含来自国内的 2 万只基金,跨越几十年(从九几年至今)的数千万行较宽的数据。此前他们通过 MySQL 来存储这些数据,首先要把每个基金的数据分表,有一定程度的工作量,只能先全量保存这些数据在一张表中,但这种大表会导致查询的性能非常低下,为了应对这一问题,只能通过离线查询生成每天的基金数据图片返回给用户,无法对外提供自定义查询服务。在此背景下,搜狐基金决定基于 TDengine 3.0 尝试一下全新的方案。

建模展示

TDengine 3.0 在实际企业中的应用效果如何?四个成功案例给你答案 - TDengine Database 时序数据库

改造效果

我们使用三台 4C 16GB 的服务器组建了 TDengine 的集群。值得一提的是,基金数据是一日一条,属于低频次数据。对于这种数据,默认的配置是不够的。一开始我们的查询性能并不快,基本都是在秒级别甚至还有更高。通过文档和博客以及官方团队的支持,我们放大了 duration 和 stt_trigger 参数,这样确保了不会产生过多的文件碎片影响读写性能,后续的查询全部被优化至毫秒级别。

点此查看案例详情

智光电气 x TDengine 3.0

“当前 TDengine 3.0 已成功应用于我司多个工业项目中,涵盖数万台各类工业设备的数据存储与查询。作为数据中台,TDengine 为上层应用提供了高效的历史数据查询,精确到秒级和分钟级粒度,帮助我们大幅提升了应用效率,同时减少了硬件和人力资源的消耗。”

业务背景

在使用 TDengine 之前,子公司智光研究院在工业项目中使用基于 Apache Hadoop 的 CDH 集群来做时序业务数据的处理。但是由于数据量级太大,处理占用了大量资源,导致集群的不稳定性增加,有频繁发生崩溃的风险。经过充分测试后,该团队最终决定把由 HBase 处理的、数据量最大的时序数据业务抽离出来,引入 TDengine 来降低 Hadoop 集群的压力,成为独立出来的数据中台。

改造后部分查询展示

TDengine 3.0 在实际企业中的应用效果如何?四个成功案例给你答案 - TDengine Database 时序数据库

改造效果

写入存储方面,同样是列式存储,以半年的数据作为比较,三副本的 HBase 的总数据量占用是 10TB,TDengine 三副本的磁盘占用只有 2TB,存储成本仅为 HBase 的 20 %。(由于和其他应用共用,内存、CPU 方面不好估算,但成本均大幅降低)

在查询上,智光研究员的业务主要就是针对 rundata_t1m(分钟级数据)、rundata(原始数据)这两张千亿级别的大型超级表的筛选、过滤、降采样。应用的查询性能和 SQL 筛选的时间范围相关较大,整体上的耗时大概在毫秒级至 2 秒内。

点此查看案例详情

结语

通过上述案例我们能看到,在经过不断打磨优化后,如今的 TDengine 3.0 已经在性能、功能、稳定性各个方面均有大幅提升,从一款时序数据库Time Series DatabaseTSDB)蜕变成为高性能、云原生、分布式的物联网、工业大数据平台。为此,我们也强烈建议老用户尽快向 TDengine 3.0 版本进行迁移,以便体验到 TDengine 更加强大的产品力。

为了帮助大家最短时间内在本地完成自助式版本迁移,除了官方文档以外,我们还准备了大量技术文章,全部汇总在《万字解读|怎样激活 TDengine 最高性价比?》中,以供有需要的用户参考。如果你在迁移工作中遇到任何问题,欢迎添加小T vx:tdengine 寻求帮助。

展开阅读全文
加载中
点击加入讨论🔥(1) 发布并加入讨论🔥
1 评论
0 收藏
0
分享
AI总结
返回顶部
顶部