关于数据库:智慧水务系统如何进行有效的数据架构整改三个企业的改造实践分享

44次阅读

共计 2063 个字符,预计需要花费 6 分钟才能阅读完成。

在智慧水务零碎中,往往须要对设施中产生的液位、电流、水量等实时指标数据进行存储、剖析及监控操作,而这些都是典型的时序数据。面对这些数据的解决时,很多企业在后期抉择的大都是传统的实时数据库甚至关系型数据库,随着设施数量的减少,数据量也达到了百万、千万量级,传统的数据库解决方案曾经无奈满足业务需要。为了帮忙有以上问题的企业更好地进行数据架构整改,本篇文章汇总了三个典型智慧水务场景下的数据架构降级实际,给到大家参考。

禹为科技 x TDengine

“TDengine 的音讯订阅、缓存、流式计算等诸多个性,能够代替 Kafka、OpenTSDB 和 Flink,缩小业务代码中定时计算(如用水量)等性能,简化了整体架构。在架构简化当前,排查和定位问题也能失去疾速响应,开发和运维老本大大节约。同时,TDengine 代替了 OpenTSDB+Redis+MySQL,进步了数据实时性和一致性,其表结构设计正当,能够节俭存储空间,进而节俭存储费用。”

业务背景

相较于水利信息化零碎,禹为科技灌区信息化平台具备设施厂家多、数据多且存储周期长、数据类型较为集中、须要实时展现的指标较多等特点。为理解耦零碎中的数据接入和数据分析,禹为科技将数据的接入和计算剖析拆分为独立的通用物联网平台及大数据平台,在古代灌区信息化平台的建设过程中,经验了数据库 & 定时工作的架构、以流式计算为外围的架构和以 TDengine 为外围的架构三个阶段,最终选用 TDengine 帮忙其对水位、流量、水量等实时指标数据分析。

架构图

点击案例查看更多技术细节

鼎蓝水务 x TDengine

“应用感触就是 TDengine 的数据处理性能十分高。当初的接入网关的设施数是 23 个液位、9 个频率计、9 个电流计、10 个拦蓄盾、3 个泵站、3 个截留井、1 个泵闸,总共有 40 张表,每张表每天新增 6 万条数据,当初每张表的大概三百万条数据。应用 TDengine 带来的最大益处是不必再思考 SQLServer 中的分库分表操作,数据一直写入一个月后,查问时延也没有减少。而且咱们发现 TDengine 在解决 13 个设施、百万量级的数据量写入工作时,内存开销只有 1.5GB,查问时内存增长也发觉不进去,整体内存开销比 SQLServer 升高了 50%。”

业务背景

鼎蓝水务智慧排水系统须要解决来自拦蓄盾检测设施上报的数据。在这些监测数据的解决流程上,数据从网关推送过去后会有一个判断是否实时数据。此前所有数据都是应用 SQL Server 存储,数据量达到 2000 万后 SQL Server 的查问时延就变得十分慢,不得不做分库分表操作来进步查问速度,但这个解决办法遇到跨库跨表的查问十分不便。架构革新后,对于非实时数据,则会流经 Redis 去重,做报警判断而后写入 SQL Server;对于实时数据则间接写入 TDengine,不须要再通过 Redis,之后前端须要的一些相似液位电流数据等就能够间接从 TDengine 拜访。

数据处理流程图

点击案例查看更多技术细节

万朗智水 x TDengine

“设置参数为十万张点表,每个点表 1s 须要存储 1 条记录。在理论测试过程中,应用 HTTP 接口,采纳单机 4C16GB 的配置,8 线程每次写 500 条记录,10 万条记录写入只须要 300ms(如果应用 java 客户端更快);单变量采样查问根本在 2ms 内实现。整个测试继续了 48 小时,测试期间 CPU 在 20%-30% 之间,内存维持在 6GB 左右,写入相当稳固,没有呈现超时。查问方面,咱们应用 MySQL 查问 3 个点一年的数据间接申请超时,应用 TDengine 根本 2s 左右就能返回给页面进行渲染。写入和查问速度比 OpenTSDB 都还高一个级别。”

业务背景

万朗智水水环境综合治理运维零碎须要对截流井设施中的液位、电流、硫化氢等进行监测,并通过 PLC 程序进行自动化治理设施的启停与报警短信推送。零碎后期版本应用了 MySQL 来存储设备上报数据。但接入零碎的设施量日益增长、用户对数据实时性反馈的要求也越来越高,MySQL 曾经无奈满足业务需要——随着业务在一直扩张,站点在一直减少的状况下,频繁的跨表操作 MySQL 查问呈现了延时甚至超时死锁的状况。随后在数据库调研中,万朗智水发现将设施数据转移到时序数据库(Time Series Database)TDengine 中存储是个更好的解决方案。

数据传输门路

传感器采集的信息通过 MQTT 协定传到网关,网关收集到信息后会定时推送到业务后盾服务,由服务层来做数据存储和实时剖析。设施运行业务数据放在 MySQL 中,液位、电流频率、硫化氢、雨量物联网数据则存储在 TDengine 中。
点击案例查看更多技术细节

结语

从以上案例不难看出,在智慧水务场景下,面对一直增长的设施数量、宏大的时序数据处理需要,业余的时序数据库显然比传统数据库解决方案成果更加显著,不论是在写入还是查问抑或是存储上都有很大改善,资源开销老本也变得更低。如果你有同样的困扰,欢送增加小 T vx:tdengine1,咱们会邀请你进入 TDengine 用户交换群,和气味相投的研发小伙伴独特解决数据难题。

正文完
 0