助力 60+ 市区管理建设,TDengine 联手数字政通打造智慧城市平台

news/2024/7/6 0:11:22 标签: 数据库, TDengine, 大数据

小 T 导读:随着智慧城市的加速建设,物联设备的管理问题凸显,数字政通研发“城市管理物联网平台”对物联网设备实行监督,通过鸟瞰整体数据来发现设备问题,便于及时派单处理。面对海量物联网数据的处理,TDengine Database 的高效存储给了数字政通相当大的助力。

企业简介

北京数字政通科技股份有限公司是北京市认证的高新技术企业和拥有多项自主知识产权的软件企业,专业从事电子政务和 GIS 应用平台的开发和推广工作,为政府部门提供 GIS、MIS、OA 一体化的电子政务解决方案,并提供政府各个部门间基于数据共享的协同工作平台。

 随着 5G 基站等通信工程的加快建设,城市治理、城市安全管理成为热门话题,物联设备在我们的社会中扮演的角色也变得越来越重要,智慧燃气、智能电表、智能井盖等项目在众多城市开始布局。项目的快速爆发也让“如何管理物联设备”成为一个待解的难题。

 作为一个设备数据中台,由数字政通研发的“城市管理物联网平台”致力于为智慧园林、智慧井盖、智慧排水、智慧市政等城市管理项目的各子系统,提供数据清洗、数据接入、数据计算、数据存储的能力。通过接入各个市区的智能设备,该平台能够提供各类设备的实时监测数据及报警数据,进一步满足各类设备的数据分析、关联分析、历史分析、对比分析等需求。简单来讲,平台功能的实现就是通过鸟瞰整体数据来发现设备问题,便于及时派单处理,助力智慧城市管理。  

目前,我们已经在全国累计接入 60 余个市区项目,累计合作 100 余家设备厂商,累计接入 69 种设备类型、9 万余设备量,全国范围下日累计 5000 万数据量,全国范围下有效报警累计 20 万 +,解决 10 万 + 报警案件。  

面对海量物联网数据的处理,时序数据库 TDengine 的高效存储给了我们相当大的助力。

技术架构分析

设备数据的处理路径如下:通过各个协议(MQ、MQTT、AMQP、HTTP、TCP、HJT212、ModBus、NB等)接入物联设备到 Kafka 中进行消费,随后进行设备数据的噪点清洗,将有用的数据及时更新到 MySQL 以及 TDengine 中,同时根据配置的报警策略生成报警数据。

平台的报警是通过应用层来控制的,按照优先级排位如下:1-强制报警、2-具体监测项报警、3-全局报警、4-基础报警。

落地经验分享

因为我们的数据库服务众多,而且物联网平台主要工作是对接物联网设备,所以不同的数据库服务对硬件的需求配置要以项目实际接入的设备数量为衡量标准。本文案例中的场景有 57,634 个设备,对应的服务器配置为:CPU 16 核、内存 32G、硬盘 1T、带宽 120MB/s。

我们以 TDengine 2.0.22.3 版本单副本模式落地了一个三节点的集群,备份目前依靠其他方式完成。

 上文中提到的 57,634 个设备属于同一类型,所以归属于同一个超级表,表结构和相关信息如下:

 通过 select count(*) from iot_equip_data 可以看到,我们当前已经保留了 9 亿条数据。

压缩与查询效果

通过查看 3 个节点的 Vnode 目录总大小,可以得知目前数据占用总量为 8.7G。而从上述表结构我们也能看出实际入库数据总量大概为 203GB,经过压缩后为 8.7G,压缩率达到了 4% 左右,大幅节约了存储成本。

我们常用的业务 SQL 大概有如下类型:

  • 1.对 9 亿数据量的超级表使用降采样查询,展示设备指标日月年线,耗时仅仅 0.22 秒。
  1. Select first(value) as value from egovaiot.iot_equip_data where field_id='346fb64a-3e0f-4632-bd83-f4830ad91611' and time>=1645963
  2. 586260 and time<=1648555586260 interval(1000a) order by time;

  •  2.对 9 亿数据量的超级表使用降采样查询,并计算每个时间窗口的平均值、最大值、最小值,结果如下所示。

 1.select avg(value) as 'avgValue',max(value) as 'maxValue',min(value) as 'minValue' from egovaiot.iot_equip_data where field_id='346fb64a-3e0f-4

2.bd83-f4830ad91611' and time>=1646137565000 and time<=1648556765000 interval(1000a) order by time;

  • 3.对 9 亿数据量的超级表使用降采样查询,并计算每个时间窗口的最大值最小值后,求出差值。

  1. select spread(value) as value from egovaiot.iot_equip_data where equip_type_id='1' and time>=1633004978592 and time<=1648556978592 and field_c
  2. ode like 'WATER_LEVEL' interval(1d) group by field_id order by time;

写在最后

物联设备在我们的生活中扮演的角色越来越重要,是实现智慧生活、智慧城市的重要媒介。携手 TDengine Database,数字政通一直在致力于做好物联设备的智能化管理,以此助力智慧生活、智慧城市的发展。未来,我们还将会与 TDengine 一起探索更多维度的生态合作,为建设智慧城市、保障社会民生提供自身力所能及的帮助。

作者简介

张东旭,数字政通 Java 研发,城市管理物联网产品负责人。专注于城市物联设备数据采集和交换、数据计算能力。兴趣是看书和爬山。


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


http://www.niftyadmin.cn/n/983077.html

相关文章

noip200802排座椅

排座椅难度级别&#xff1a;B&#xff1b; 运行时间限制&#xff1a;1000ms&#xff1b; 运行空间限制&#xff1a;51200KB&#xff1b; 代码长度限制&#xff1a;2000000B 试题描述上课的时候总有一些同学和前后左右的人交头接耳&#xff0c;这是令小学班主任十分头疼的一件事…

Sqoop---数据迁移工具

https://blog.csdn.net/u012453843/article/details/52951120 说明的比较详细&#xff0c;可他参考一下

MySQL 无法满足查询性能?北明天时选择 TDengine 实现热网监控和能源分析

小 T 导读&#xff1a;目前&#xff0c;北明天时已经在热网监控和能耗分析系统上应用了 TDengine&#xff0c;相比于 MySQL&#xff0c;当前在存储和查询上都获得了显著提升。在其他项目中&#xff0c;他们也正在加速 TDengine 对其他数据库产品的替代。本文中北明天时分享了关…

mongoose crud

Js代码 exports.insert function(modelname, data) { var model require(./models/ modelname); model.create(data, function(err, doc) { if (err) return next(err); }); }; //Model.remove function remove (conditions, ca…

快速安装samba

现下载samba http://pan.baidu.com/s/1eRq9lIy 简介&#xff1a;Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件&#xff0c;由服务器及客户端程序构成。SMB&#xff08;Server Messages Block&#xff0c;信息服务块&#xff09;是一种在局域网上共享文件和打印机的一种…

【直播】通过一条 SQL 语句,看透分布式数据库的查询优化

我们先看一下&#xff0c;一条 SQL 语句从客户端发起到服务端执行所经历的过程。图片来源于网络优化器是这个过程中的关键环节&#xff0c;它决定了如何更好地执行一条 SQL 语句。优化器中包含很多优化规则&#xff0c;比如子查询提升、条件优化、无用列裁剪、子链接转换等。各…

新项目:思考(Terminal Think Music)

Are you executing a process that takes a long time? Do you want to know that it’s still working while you are in another terminal/making coffee? Do you have a favorite game show tune to play while doing something? 您正在执行需要很长时间的过程吗&#xf…

“一个扫描枪一张表”,韵达选择 TDengine 应对每日亿级数据量

小 T 导读&#xff1a;此前&#xff0c;韵达使用 MySQL 分区索引处理订单数据的方式遭受到了挑战&#xff0c;面对每日亿级的数据量&#xff0c;MySQL 显然已经无法满足当下的数据处理需求。为更好地发展业务&#xff0c;在此基础上韵达新增了 TDengine 的数据源&#xff0c;用…