一种监测数据的存储方法、查询方法、显示方法与流程

文档序号:26050434发布日期:2021-07-27 15:25阅读:200来源:国知局
一种监测数据的存储方法、查询方法、显示方法与流程

本发明涉及物联网数据处理技术领域,尤其涉及一种监测数据的存储方法、查询方法、显示方法。



背景技术:

物联网监测设备在监测过程中会产生海量数据,以gnss设备为例,设备每两秒钟会产生一个比较粗略的监测值(称为实时监测值),经过软件解算,两个小时会产生一个高精度的检测值(称为解算监测值)。实时监测值能实时的反应现场的监测情况,是监测项目安全时效性的重要保障,但实时监测值会产生大量的数据,占据计算机大量的储存空间,且在长时段内检索效率低下。

因此需要一定的策略,充分利用实时监测值和解算监测值,实现数据时效性、储存空间缩减以及快速数据检索。



技术实现要素:

鉴于现有技术的上述缺点、不足,本发明提供一种监测数据的存储方法、查询方法、显示方法,其解决了计算机存储空间利用率低、检索效率低技术问题。

为了达到上述目的,本发明采用的主要技术方案包括:

第一方面,本发明实施例提供一种监测数据的存储方法,监测设备在监测过程中产生监测数据,且所述监测设备与服务器通信连接,所述方法包括:

s1、所述监测设备将所述监测数据通过tcp协议传输至服务器;

所述服务器中包括第一数据接收软件和第二数据接收软件;

s2、所述服务器中的第一数据接收软件将所述监测数据存储在所述服务器中的非关系型数据库中;

s3、所述服务器按照预先设定的时间间隔将所述非关系型数据库中的监测数据持久化至关系型数据库中。

优选的,

所述非关系型数据库为redis。

优选的,

所述关系型数据库为mysql。

优选的,所述方法还包括:

s4、所述服务器中第二数据接收软件将所述监测数据进行解算获取相应的解算数据,并将所述解算数据存储至关系型数据库中。

所述监测数据为监测设备产生的比较粗略的数据;

所述解算数据为监测数据经过解算后的数据。

优选的,所述方法还包括:

s5、将关系型数据库中预先设定的时间段之前的监测数据导出相应sql文件并将所述预先设定的时间段之前的监测数据内容删除。

第二方面,本实施例还提供一种监测数据的查询方法,所述监测数据按照上述任一的方法存储至服务器中,所述服务器与至少一个客户端连接,所述监测数据的查询方法包括:

a1、接收用户查询的监测数据指令,根据所述指令确定所述用户查询的监测数据所对应的时间;

a2、判断所述用户查询的监测数据所对应的时间是否在预先设定的时间段内;

a3、若在,则根据所述指令,在所述关系型数据库中获取相应的监测数据。

优选的,所述方法还包括:

a4、若不在,则根据所述指令,确定相应的sql文件;

a5、将所述sql文件导入到关系型数据库中获取相应的监测数据。

第三方面,本实施例还提供一种监测数据的显示方法,所述监测数据按照上述任一的方法存储至服务器中,所述服务器与至少一个客户端连接,所述客户端与所述服务器具有http通信协议和websocket通信协议;所述显示方法包括:

当客户端接收到用户输入的解算数据显示指令后,客户端采用http通信协议向所述服务器解算数据时间请求;

所述服务器根据所述解算数据时间请求将相应的解算数据发送至客户端,并以图标的形式进行展示。

优选的,所述方法还包括:

所述服务器接收到客户端采用websocket的方式进行的监测数据请求后,则所述服务器将所述监测数据发送至客户端,并以图标的形式进行展示。

本发明的有益效果是:本发明的一种监测数据的存储方法,由于监测数据通过tcp协议传输至服务器中,监测数据首先储存在非关系型数据(比如redis)中,定期对监测数据进行持久化,将监测数据从内存数据转为硬盘数据,在保证服务器正常运行的前提下,实现最新实时数据的快速存储、检索,同时因为间隔较长时间才进行一次关系型数据库的入库,不需要对关系型数据库进行频繁的锁定、修改索引等操作,有效解决关系型数据库在频繁入库场景中的缺陷。

本发明的一种监测数据的查询方法,由于将预先设定的时间段前的监测数据从数据库导出到.sql文件并删除其在数据的内容,保证密集的监测数据可追溯性的同时保证也能较为快速查询到最近一段时间的监测数据。

本发明的一种监测数据的显示方法,由于采用websocket建立客户端与服务器端的连接,实时进行数据交换,提高了前端浏览性能、服务器性能。

附图说明

图1为本发明提供的一种监测数据的存储方法流程图;

图2为实现本发明的一种监测数据的存储方法结构示意图;

图3为本发明的一种监测数据的存储方法示意图;

图4为本发明提供的一种监测数据的查询方法流程图;

图5为本发明提供的一种监测数据的查询方法示意图;

图6为本发明的一种监测数据的显示方法示意图。

具体实施方式

为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。

为了更好的理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更清楚、透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

第一方面,参见图1,本发明实施例提供一种监测数据的存储方法,参见图2,监测设备在监测过程中产生监测数据,且所述监测设备与服务器通信连接,所述方法包括:

s1、所述监测设备将所述监测数据通过tcp协议传输至服务器;

所述服务器中包括第一数据接收软件和第二数据接收软件;

s2、所述服务器中的第一数据接收软件将所述监测数据存储在所述服务器中的非关系型数据库中;

s3、所述服务器按照预先设定的时间间隔将所述非关系型数据库中的监测数据持久化至关系型数据库中。

本实施例中,数据持久化就是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称。

本实施例中,关系型数据库:是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,一般数据储存在硬盘中。非关系型数据库:存储和检索数据的非关系数据库系统,一般数据储存在内存中,检索速度比关系型数据库快。

优选的,所述非关系型数据库为redis。

优选的,所述关系型数据库为mysql。

优选的,所述方法还包括:

s4、所述服务器中第二数据接收软件将所述监测数据进行解算获取相应的解算数据,并将所述解算数据存储至关系型数据库中。

参见图3,优选的,所述方法还包括:

s5、将关系型数据库中预先设定的时间段之前的监测数据导出相应sql文件并将所述预先设定的时间段之前的监测数据内容删除。

本发明的一种监测数据的存储方法,由于监测数据通过tcp协议传输至服务器中,监测数据首先储存在非关系型数据(比如redis)中,定期对监测数据进行持久化,将监测数据从内存数据转为硬盘数据,在保证服务器正常运行的前提下,实现最新实时数据的快速存储、检索,同时因为间隔较长时间才进行一次关系型数据库的入库,不需要对关系型数据库进行频繁的锁定、修改索引等操作,有效解决关系型数据库在频繁入库场景中的缺陷。

第二方面,参见图4、图5,本实施例还提供一种监测数据的查询方法,所述监测数据按照上述任一的方法存储至服务器中,所述服务器与至少一个客户端连接,所述监测数据的查询方法包括:

a1、接收用户查询的监测数据指令,根据所述指令确定所述用户查询的监测数据所对应的时间;

a2、判断所述用户查询的监测数据所对应的时间是否在预先设定的时间段内;

a3、若在,则根据所述指令,在所述关系型数据库中获取相应的监测数据。

优选的,所述方法还包括:

a4、若不在,则根据所述指令,确定相应的sql文件;

a5、将所述sql文件导入到关系型数据库中获取相应的监测数据。

本实施例中的一种监测数据的查询方法,由于将预先设定的时间段前的监测数据从数据库导出到.sql文件并删除其在数据的内容,保证密集的监测数据可追溯性的同时保证也能较为快速查询到最近一段时间的监测数据。

第三方面,本实施例还提供一种监测数据的显示方法,所述监测数据按照上述任一的方法存储至服务器中,参见图6,所述服务器与至少一个客户端连接,所述客户端与所述服务器具有http通信协议和websocket通信协议;所述显示方法包括:

本实施例中http请求过程:客户端向服务端发送请求,服务端根据客户端发送给你的请求内容返回相应的内容。

本实施例中websocket是一种在单个tcp连接上进行全双工通信的协议,以双向数据交换为显著特点。

当客户端接收到用户输入的解算数据显示指令后,客户端采用http通信协议向所述服务器解算数据时间请求;

所述服务器根据所述解算数据时间请求将相应的解算数据发送至客户端,并以图标的形式进行展示。

优选的,所述方法还包括:

所述服务器接收到客户端采用websocket的方式进行的监测数据请求后,则所述服务器将所述监测数据发送至客户端,并以图标的形式进行展示。

本实施例中的一种监测数据的显示方法,由于采用websocket建立客户端与服务器端的连接,实时进行数据交换,提高了前端浏览性能、服务器性能。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例,或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。

应当注意的是,在权利要求中,不应将位于括号之间的任何附图标记理解成对权利要求的限制。词语“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的词语“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的权利要求中,这些装置中的若干个可以是通过同一个硬件来具体体现。词语第一、第二、第三等的使用,仅是为了表述方便,而不表示任何顺序。可将这些词语理解为部件名称的一部分。

此外,需要说明的是,在本说明书的描述中,术语“一个实施例”、“一些实施例”、“实施例”、“示例”、“具体示例”或“一些示例”等的描述,是指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管已描述了本发明的优选实施例,但本领域的技术人员在得知了基本创造性概念后,则可对这些实施例作出另外的变更和修改。所以,权利要求应该解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种修改和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也应该包含这些修改和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1