智能环保系统通常涉及大量的传感器和监测设备,以收集环境数据并对其进行分析和处理,这些数据通常是时序数据,即在一段时间内按时间顺序生成的数据,规模庞大且要求快速准确地进行分析和处理。也因此时序数据处理是智能环保系统面临的一个重要难题,很多项目在创建之初采用了传统的大数据解决方案,随着数据体量的日益增长,性能差、效率低、成本高等问题逐渐显露。在本篇文章中,我们汇总了三个典型的智能环保项目的数据架构升级实践,给到有需要的企业参考。

中科惠软 x TDengine

“以往智慧环保项目我们采用传统数据库架构设计,对在海量秒级监测数据实时统计和分析耗时长、CPU 和内存利用率低、磁盘 IO 超负荷。在 A 市智慧环保物联网应用项目我们创新使用了 TDengine,利用了实时流式计算相关函数,解决了大数据存储和计算,降低了代码开发复杂度,让运维工作变得极为简单,极大降低了运营成本。”

业务背景

中科惠软承建的 A 市“智慧环保”物联网应用项目需要采集各类感知设备产生的监测数据和监控设备各种运行状态,项目每天采集各类监测数据 2 亿余条,如果使用公司原架构,可以勉强将每天的数据存储下来,但如果需要实现“某天下午两点 A 路段有多少辆渣土车通过”类似条件的多纬度分组聚合查询,那么采用传统的数据库就无法达成这类查询需求了。考虑到各类感知监测设备会时刻产生大量秒级和分钟级监测数据存储和实时计算,在经过多个时序数据库Time Series Database)之间的性能和稳定性方面对比,最终,中科惠软采用了 TDengine 对生态环境监测数据进行实时存储、计算。

中科惠软选型测试结果

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

昆岳互联 x TDengine

“应用 TDengine 后,在进行每分钟的平均量进行实时计算时,我们只需要简单的定义时间窗口和滑动增量,数据库就能返回每分钟的平均量;在处理实时监测、预警的指标上,可以专门为这类数据建立流计算,并将计算结果写入新的表(如下strm_pt_0304)中存储,这样整个实时计算的结果也可以做历史回顾。原本很多需要在程序中处理的数值计算,现在完全都由 TDengine 承担,不仅分担了程序的计算压力,更重要的是聚合结果可以自动持久化存储,支持历史数据即时回看。”

业务背景

昆岳互联的“a 环保”APP 基于自主打造的环保产业互联网平台(INECO 平台),对环境基础设施海量数据实时处理与分析,可以秒级实时采集工业大气环保各项监控指标的数据,分别通过年、月、日三个维度,结合不同的采集频率周期,对采集到的海量数据进行分析、展示。在进行数据库选型中,分别对比了阿里的时序数据库 TSDB、传统的 MySQL 以及 TDengine 后,最终 TDengine 凭借着高效的性能和独特的设计思路脱颖而出。

架构图

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

广东环境科学研究院 x TDengine

“我们的一张超级表中存储了 76.5 亿条数据(四张超级表总共 160 亿条数据),分散在 19,419 张子表中,平均每张表 39 万行。由于 TDengine 超级表特性,再加上列式存储和超高的压缩能力,这些数据仅占用了 240GB 内存,不仅帮助我们节省了大量的存储空间,也为数据查询性能打下了良好的基础:对于 76 亿行的超级表,分组 TOP 查询仅用了 0.2 秒;基于 TDengine 返回 2,968 行,仅用了 0.06 秒。”

业务背景

为解决国内环境质量管理、污染源监管和数字政府等生态环境数据的管理工作,广东科学研究院创建了生态环境数据治理服务项目,帮助企业打通所有相关的业务信息系统、建立数据仓库。与一般的数据存储要求不同,该项目感知层的存储方案对数据读写频度和低延时要求更高,同时由于数据量极大,还需要更高的存储效率,此前采用关系型数据库进行数据存储,最多只能保留 3-5 天的数据,不得不按天删除旧数据。之后考虑过采用 PostgreSQL 的 TimescaleDB 扩展,但却不满足政务信息化自主可控的要求。在经过很长一段时间的研究和测试后,TDengine 被成功应用。

架构图

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

结语

从上述企业实践来看,TDengine 在智能环保项目上的应用具有很大的优势,可以实现高效的数据采集、存储、分析和展示等功能,为环保系统提供有力的技术支持。目前,全托管的时序数据云服务平台 TDengine Cloud 也已经上线,极致的弹性伸缩能进一步提升业务的降本增效,非常欢迎大家来试用~如果你正面临数据处理难题,也可添加小Tvx(tdengine),申请加入 TDengine 技术交流群,和志同道合的开发者共同探讨解决路径。

TDengine 用户案例合集 | 智能环保项目的时序数据处理难点与优化实践的更多相关文章

  1. [转载]HTML5开发入门经典教程和案例合集(含视频教程)

    http://www.iteye.com/topic/1132555 HTML5作为下一代网页语言,对Web开发者而言,是一门必修课.本文档收集了多个HTML5经典技术文档(HTML5入门资料.经典) ...

  2. 双11电商剁手节,最全的H5互动营销案例合集

    距离双11不足一个月! 是否准备好为双十一疯狂剁手! 自从天猫2009年首创双11购物节以来双十一不仅成为了消费者的"剁手日" 更是每年企业营销的"狂欢节" 各 ...

  3. HTML5开发入门经典教程和案例合集(含视频教程)

    HTML5作为下一代网页语言,对Web开发者而言,是一门必修课.本文档收集了多个HTML5经典技术文档(HTML5入门资料.经典)以及游戏开发案例以及教学视频等,帮助同学们掌握这门重要的技术. 资源名 ...

  4. 干货最新版 Spring Boot2.1.5 教程+案例合集

    最近发了一系列的 Spring Boot 教程,但是发的时候没有顺序,有小伙伴反映不知道该从哪篇文章开始看起,刚好最近工作告一个小小段落,松哥就把这些资料按照学习顺序重新整理了一遍,给大家做一个索引, ...

  5. App界面设计利器Sketch 精选案例合集

    第1章 课程介绍主要介绍课程的安排及你将学到哪些使用技巧 1-1 课程介绍第2章 sketch 实例及相关工具本节课你将学到钢笔工具的使用.渐变及填充.投影的使用,体会并观察实际中物品的光影与材质:模 ...

  6. 【前端学习笔记】JavaScript 小案例合集

    获取一个0-9的随机数: Math.round(Math.random()*9); 去除数组中重复的元素: var arr=[1,3,5,4,3,3,1,4] function editArr(arr ...

  7. NLP知识图谱项目合集(信息抽取、文本分类、图神经网络、性能优化等)

    NLP知识图谱项目合集(信息抽取.文本分类.图神经网络.性能优化等) 这段时间完成了很多大大小小的小项目,现在做一个整体归纳方便学习和收藏,有利于持续学习. 1. 信息抽取项目合集 1.PaddleN ...

  8. 【收藏】每天更新!全网热门公共BT种子 BitTorrent Tracker 列表合集

    每天更新!全网热门公共 BitTorrent Tracker 列表合集. 该项目仅将全网热门的公共 Tracker 列表制作成合集方便大家使用,无需再一个个导入了~. 「English」(tracke ...

  9. 最新最全的 Android 开源项目合集

    原文链接:https://github.com/opendigg/awesome-github-android-ui 在 Github 上做了一个很新的 Android 开发相关开源项目汇总,涉及到 ...

  10. 深度学习优质学习项目大放送!-AI Studio精选开源项目合集推荐

    近期 在AI Studio上发现了不少优质的开源深度学习项目,从深度学习入门到进阶,涵盖了CV.NLP.生成对抗网络.强化学习多个研究方向,还有最新的动态图,都以NoteBook的方式直接开源出来,并 ...

随机推荐

  1. Linux 下的动态库、静态库与环境变量

    最近这几天在处理集群软件的过程中,遇到各种各样的库和环境变量的问题,被虐的不清!趁此机会,整理了一下 Linux 下静态库.动态库(共享库)和环境变量的一些知识,与大家共享一下. 库的种类 Linux ...

  2. 资源高效搜索方法,你 Get 到了吗?

      随手转发给好友和朋友圈  编辑:办公小通 百度搜索谁都会,但是搜出来的资料往往良莠不齐.搜索速度是快了,但是还要花大量的时间去筛选. 通过下面的两个最常用的栗子,小通强烈推荐大家用高级搜索. 高级 ...

  3. App性能测试之iTest

    本文主要介绍下App性能测试工具iTest_V4.7的使用. 功能简介 1.监控Andorid系统(支持手机,平板,电视,车机等智能终端设备)以及应用app的cpu.内存.流量.电池.帧率.页面耗时等 ...

  4. C++面试八股文:std::array如何实现编译器排序?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第25面: 面试官:array熟悉吗? 二师兄:你说的是原生数组还是std::array? 面试官:你觉得两者有什么区别? 二师兄:区别不是很大,原生 ...

  5. JS中使用Promise.all控制所有的异步请求都完成后,在执行后续逻辑

    使用场景为,在js中连续的几个异步耗时操作,后面的耗时操作需要使用第一个操作的返回结果.例如调用ajax异步接口,需要先创建完主表,然后拿到主表id在去循环创建明细表,等全部创建完成后,弹出提示来,或 ...

  6. .NET 8 Preview 6发布,支持新的了Blazor呈现方案 和 VS Code .NET MAUI 扩展

    2023年7月11日 .NET 8 Preview 6,.NET 团队在官方博客发布了系列文章: Announcing .NET 8 Preview 6[1] ASP.NET Core updates ...

  7. ubuntu22.04安装vsftp遇到的问题

    问题 FileZilla连接文件服务器时出现"无法读取文件目录",随后出现"20秒后无活动,连接超时"."无法连接到服务器"文件目录无法读取 ...

  8. Parallel 与 ConcurrentBag<T> 这对儿黄金搭档

    〇.前言 日常开发中经常会遇到数据统计,特别是关于报表的项目.数据处理的效率和准确度当然是首要关注点. 本文主要介绍,如何通过 Parallel 来并行处理数据,并组合 ConcurrentBag&l ...

  9. HBase架构和技术原理介绍

    一.HBase数据模型(☆) 1.NameSpace 命名空间,类似于关系型数据库的 DataBase 概念,每个命名空间下有多个表.HBase有两个自带的命名空间,分别是 hbase 和 defau ...

  10. 编码技巧 --- 使用dynamic简化反射

    引言 dynamic 是 Framework 4.0 就出现特性,它的出现让 C# 具有了弱语言类型的特性.编译器在编译的时候不再对类型进行检查,默认 dynamic 对象支持开发者想要的任何特性. ...