掌桥专利:专业的专利平台
掌桥专利
首页

一种动态压缩时序数据的方法及系统

文献发布时间:2024-01-17 01:13:28


一种动态压缩时序数据的方法及系统

技术领域

本发明属于物联网的技术领域,具体涉及一种动态压缩时序数据的方法及系统。

背景技术

物联网(IoT)是指通过各种信息传感设备来实时采集需要被监测、连接的物体或过程的信息,来实现物与物、物与人在网络上的连接,从而能够方便识别和管理各类物体和过程。现如今,物联网技术已充分进入我们生活并深刻地影响着我们的生活,包括车联网、工业物联网、农业物联网、智能家居、智能安防等。IDC曾在2019年预测,到2025年全球将有416亿台物联网设备投入使用,共同构建起全球化物联网。在各类物联网应用中,基于物联网技术的监测系统,如环境监测系统、消防监测系统、设备运行状态监测系统等,能够替代人力对监测对象进行无间断的监测预警,因而具有更强大的灾害防范能力,能有效提升工业生产效率、降低工业生产成本、提高社会运行效率。

以基于物联网的燃气泄漏监测系统为例,一个物联网监测系统一般包含4个组成部分:一组铺设在各个管道的燃气监测传感器、一个中心或分布式服务器、一个存储监测数据的时序数据库(TSDB)和一群系统用户。每个传感器以固定的时间间隔(如10秒)从燃气管道收集漏气监测信息,并将其上传到服务器。服务器接收并分析这些传感器上传的数据,如果数据表现出异常,则服务器将向用户发送预警通知。TSDB接收来自服务器的处理后的数据并将其存储在磁盘上,系统用户则通过服务器查询存储在TSDB中的燃气泄漏监测时序数据。

通常情况下,在经典的物联网监测系统架构中,不同组件之间传输的数据流会消耗巨大的通信带宽,并占据服务器的巨大处理能力,且未经压缩的数据会占据存储磁盘的巨大空间。一种自然的解决思想是应用传统通用压缩算法来减少系统需要处理、传输、存储的数据量。但是这种方式在这种物联网监测系统中并不能简单奏效,因为监测传感器定时产生的每个数据点往往都具有实时的传输需求,因而传感器、服务器、时序数据库之间每次通信传输有且只有一个数据点。此时,这些针对静态批量数据的传统压缩方式,并不能减少只有一个数据点的数据流大小,因而无法减少系统模块之间的通信次数和带宽,也就无法有效提升系统吞吐量和性能。这些压缩算法所能发挥的最大作用,仅仅是在数据库端压缩整个数据流的大小,减少磁盘开销。所以,现有的通用压缩算法并不十分适用于这种物联网监测系统。

发明内容

本发明的主要目的在于克服现有技术的缺点与不足,提供一种动态压缩时序数据的方法及系统,该方法设计了一种时序数据动态去重策略来实现时序数据的动态压缩,本发明能够在物联网监测系统中,有效提升系统吞吐量、数据读取速度,并降低系统带宽消耗、存储空间消耗,使得物联网监测系统的整体性能得到极大提升。

为了达到上述目的,本发明采用以下技术方案:

第一方面,本发明提供了一种动态压缩时序数据的方法,包括下述步骤:

S1、传感器定时将采集到的监测数据上传至服务器;所述监测数据为包含数据采集时间戳和监测数值的数据元组;

S2、服务器接受并处理来自传感器的监测数据,若监测数据存在异常则服务器向用户发送预警信息;

S3、服务器对监测数据执行时序数据动态去重策略;所述时序数据动态去重策略为:每当一个新的数据点到达服务器时,服务器会判断该数据点与上一时刻数据点是否存在可以被去重的数据点,如果存在,则这些数据点将会被去重而不会被存储;如果不存在,则这些无需被去重的数据点将会被其传输至时序数据库进行下一步存储;

S4、若监测数据未被去重则服务器将其传输至时序数据库存储;

S5、用户通过服务器从时序数据库读取被去重压缩后的监测数据流;

S6、被去重压缩后的监测数据流在用户端通过时序数据解压还原算法还原为完整的原始监测数据流。

作为优选的技术方案,传感器为一组具有监测和通信能力的信息传感设备;所述服务器为具有处理监测时序数据能力的中心或分布式服务器。

作为优选的技术方案,步骤S2中,所述异常为当前监测数据数值超过设定的预警阈值,所述用户为系统的管理和业务用户U,所述发送预警信息的方式包括但不限于网页预警、邮件预警或短信预警。

作为优选的技术方案,步骤S3中,所述时序数据动态去重策略具体为:

S31、初始化初始数据点f

S32、判断当前到达的监测数据点c

S33、若S32判断结果为是,则跳至步骤S37;

S34、若S32判断结果为否,则继续判断上一时刻数据点f

S35、若S34判断结果为是,则将f

S36、若S34判断结果为否,则仅将c

S37、令f

作为优选的技术方案,步骤S4中,所述时序数据库为专为时序数据提供高效存储、读取和管理能力的本地或云端时序数据库服务。

作为优选的技术方案,步骤S5中,所述的被去重压缩后的监测数据流为经过步骤S3、S4处理后被实际存储在时序数据库的时序数据流Q。

作为优选的技术方案,步骤S6中,所述时序数据解压还原算法包括以下步骤:

S61、初始化interval为传感器S定时采集监测数据的时间间隔,令时序数据流Q′=Q;

S62、遍历时序数据流Q′中的每个数据点q

S63、返回填充还原后的数据流Q′。

作为优选的技术方案,经过所述时序数据解压还原算法,被去重压缩后的监测数据流Q中被去重丢弃的数据点将会被重新填充回来,从而还原回一个完整的原始监测数据流Q′。

作为优选的技术方案,步骤S6中,所述用户端为所述用户的设备,包括但不限于智能手机、网页浏览器。

第二方面,本发明提供了一种物联网监测系统,该系统利用所述的动态压缩时序数据的方法对监测数据进行处理,处理后,在服务器至时序数据库TSDB的数据存储过程、TSDB至服务器的数据读取过程、服务器至用户的数据查询过程,数据传输的数据由原始监测数据流Q′变为被去重压缩后的监测数据流Q,由于|Q′|>|Q|,所以这些过程的数据传输量将得到有效降低。

本发明与现有技术相比,具有如下优点和有益效果:

本发明中、服务器对监测数据执行时序数据动态去重策略;所述时序数据动态去重策略为:每当一个新的数据点到达服务器时,服务器会判断该数据点与上一时刻数据点是否存在可以被去重的数据点,如果存在,则这些数据点将会被去重而不会被存储;如果不存在,则这些无需被去重的数据点将会被其传输至时序数据库进行下一步存储。基于时序数据动态去重策略,本发明能够在物联网监测系统中对时序数据流进行动态压缩,提升系统的系统吞吐量和数据读取速度,并降低系统带宽和储存空间的消耗。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为采用本发明方法改进后的物联网监测系统架构图。

图2为采用原始方法的物联网监测系统时序数据采集、传输、存储流程图。

图3为采用本发明方法改进后的物联网监测系统时序数据采集、传输、存储流程图。

图4为原始方法与本发明方法的系统吞吐量对比结果。

图5为原始方法与本发明方法的数据读取速度对比结果。

图6为原始方法与本发明方法的系统带宽消耗对比结果。

图7为原始方法与本发明方法的存储空间消耗对比结果。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。

基于物联网的燃气泄漏监测系统,一般包含4个组成部分:一组铺设在各个管道的燃气监测传感器、一个中心或分布式服务器、一个存储监测数据的时序数据库(TSDB)和一群系统用户。每个传感器以固定的时间间隔(如10秒)从燃气管道收集漏气监测信息,并将其上传到服务器。服务器接收并分析这些传感器上传的数据,如果数据表现出异常,则服务器将向用户发送预警通知。TSDB接收来自服务器的处理后的数据并将其存储在磁盘上,系统用户通过服务器查询存储在TSDB中的燃气泄漏监测时序数据。现采用本发明方法对该系统进行改进,基于改进后的系统动态压缩时序数据的方法具体为:

S1、一组铺设在各个管道的燃气监测传感器P定时(比如每10秒)将采集到的监测数据(t,v)上传至服务器S,其中监测数据(t,v)包含数据采集时间戳t和监测数值v。

具体的,如果燃气监测传感器监测到管道为正常,则监测数值v=0,如果监测到管道发生燃气泄漏,则监测数值v为具体的燃气泄漏浓度,比如v=1。

S2、服务器S接受并处理来自各个传感器P定时上传的监测数据(t,v),若监测数据存在异常则所述服务器向用户发送预警信息,包括网页预警、邮件预警、短信预警等。

具体的,监测数据存在异常是指监测数值v>0,即监测到管道发生了燃气泄漏。

S3、所述服务器S对每个到达的监测数据点(t,v)执行时序数据动态去重策略。

具体的,所述的时序数据动态去重策略,包括以下步骤:

S31、初始化初始数据点f

S32、判断当前到达的监测数据点c

S33、若S32判断结果为是,则跳至步骤S37;

S34、若S32判断结果为否,则继续判断上一时刻数据点f

S35、若S34判断结果为是,则将f

S36、若S34判断结果为否,则仅将c

S37、令f

更具体的,所述策略意味着,每当一个新的数据点

在其中一个实施例中,例如,先前已有数据流

S4、若监测数据未被去重则服务器将其传输至时序数据库存储;所述时序数据库为专为时序数据提供高效存储、读取和管理能力的本地或云端时序数据库服务。

S5、用户通过服务器从时序数据库读取被去重压缩后的监测数据流;所述的被去重压缩后的监测数据流为经过步骤S3、S4处理后被实际存储在时序数据库的时序数据流Q。

S6、在读取监测数据流时,系统的管理或业务用户U通过所述服务器从所述时序数据库读取被去重压缩后的监测数据流Q,并在用户端通过时序数据解压还原算法将其还原为完整的原始监测数据流Q′。

具体的,所述用户端为所述用户的设备,包括智能手机、网页浏览器等;所述时序数据解压还原算法包括以下步骤:

S61、初始化interval为传感器S定时采集监测数据的时间间隔,如10秒,令时序数据流Q′=Q;

S62、遍历时序数据流Q′中的每个数据点q

S63、返回填充还原后的数据流Q′;

具体的,经过所述时序数据解压还原算法,被去重压缩后的监测数据流Q中被去重丢弃的数据点将会被重新填充回来,从而还原回一个完整的原始监测数据流Q′。例如

为清楚的展示本实施例的整体流程,图1展示了采用本发明方法改进后的物联网监测系统架构图。具体的,在此实施例中采用了本发明方法后,在服务器至TSDB的数据存储过程、TSDB至服务器的数据读取过程、服务器至用户的数据查询过程,数据传输的数据由原始监测数据流Q′变为被去重压缩后的监测数据流Q,由于|Q′|>|Q|,所以这些过程的数据传输量将得到有效降低。更进一步地,由于数据传输量的降低,系统相应的处理吞吐量、数据读取速度、通信带宽消耗、存储空间消耗都将得到有效优化。

为了更加清楚的展示本实施例与现有其他技术的区别,图2展示未采用本发明方法的原始物联网监测系统时序数据采集、传输、存储流程图,图3展示了采用本发明方法改进后的物联网监测系统时序数据采集、传输、存储流程图。具体的,在此实施例中采用了本发明方法后,每个到达服务器的监测数据点都将通过所述时序数据动态去重策略而被实时决定是否被去重。如果被去重,则该数据点将会在数据流中被丢弃;如果未被去重,则该数据点将会被正常传输至TSDB进行存储。进一步的,在TSDB服务中,可以实施进一步的通用静态压缩方法,来实现对监测数据的进一步压缩从而达到更低的磁盘存储空间消耗。

为了验证本发明的有效性能,在一个实施例中在以下三种不同的服务器设置中将原始方法与本发明方法进行比较:

(1)同步单线程模式:每个时刻服务器只能处理单个监测数据点,每个监测数据点将被同步传输至TSDB进行落盘存储,此时系统的性能瓶颈在系统通信带宽上;

(2)异步单线程模式:每个时刻服务器只能处理单个监测数据点,每个监测数据点将被异步传输至TSDB进行落盘存储,此时系统的性能瓶颈在单核CPU性能上;

(3)异步多线程模式:每个时刻服务器可以开启多个线程同时处理多个监测数据点,每个监测数据点将被异步传输至TSDB进行落盘存储,此时系统的性能瓶颈在TSDB最大写入速度上。

图4-图7展示了在这三种不同的服务器设置中原始方法与本发明方法的性能对比结果,包括系统吞吐量、数据读取速度、系统带宽消耗和存储空间消耗。由图4-图7可看出,本发明方法相较原始方法在多种服务器设置下均取得了有效的系统提升。

综上,本发明提出的一种在物联网监测系统中动态压缩时序数据的方法,可以有效解决物联网监测系统中的时序数据动态压缩问题,能够在物联网监测系统中有效提升系统吞吐量、数据读取速度,并降低系统带宽消耗、存储空间消耗,使得物联网监测系统的整体性能得到极大提升。

需要说明的是,对于前述的各方法实施例,为了简便描述,将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

相关技术
  • 一种时序数据库的数据压缩方法及系统
  • 一种时序数据库的数据压缩方法及系统
技术分类

06120116069455