一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种提高趋势数据查询效率的池化结构及方法与流程

2022-02-22 20:05:15 来源:中国专利 TAG:


1.本发明属于数据处理技术领域,具体涉及一种提高趋势数据查询效率的池化结构及方法。


背景技术:

2.如果需要绘制某个数据标签点的历史数据趋势曲线,通常做法是从数据库读取该数据标签的全部历史数据,然后在一个绘图区域上绘制,这样的方式需要花费大量的时间,造成不必要的资源浪费,因此如何在提高查询效率的同时降低资源浪费,是需要解决的问题。


技术实现要素:

3.本发明的目的在于针对上述现有技术中的问题,提供一种提高趋势数据查询效率的池化结构及方法,降低历史查询所需要花费的时间,提高查询效率,降低内存资源的浪费。
4.为了实现上述目的,本发明有如下的技术方案:
5.第一方面,提供一种提高趋势数据查询效率的池化结构,包括数据库和曲线池;
6.所述的数据库用于建立具有不同特征值的时间片模型;
7.所述的曲线池包括内存数据、plot_values接口以及数据存储结构;所述的内存数据对数据标签进行序列化和反序列化处理,获取数据标签的数据量;所述的plot_values接口取每个时间片对应的时间片模型的特征值还原出当前时间片的曲线特征;所述的数据存储结构用于存储缓存数据,对缓存数据的数据标签缓存时,将数据标签在绘制宽度为固定像素的绘制区域中进行绘制,使每像素代表绘制时间片长度为数据标签的历史时长/绘制区域的绘制宽度。
8.作为本发明池化结构的一种优选方案,所述的数据库搭建绘制区域,建立数据标签模型,并对数据标签模型进行标记;然后对数据标签的特征值进行设定,将数据标签模型与绘制区域通过plot_values接口进行链接,生成时间片模型。
9.作为本发明池化结构的一种优选方案,所述的plot_values接口包括用于对数据标签进行初始化的初始化查询池、用于释放查询池内存的释放查询池内存、用于对数据标签进行保存的保存查询池内存以及操作确认。
10.作为本发明池化结构的一种优选方案,所述的plot_values接口能够执行的操作包括设置历史方法外裹对象、增加数据标签点数据、添加对快照数据的更新、更新数据标签的数据量以及对数据标签的进行删除和修改操作;
11.所述的删除和修改操作包括删除数据标签、删除数据标签指定时间的数据值以及删除数据标签指定时间范围内的数据量值。
12.作为本发明池化结构的一种优选方案,所述的数据存储结构包括主缓存文件的文件头、缓存数据文件列表、数据标签编号列表以及数据标签命中权重列表。
13.作为本发明池化结构的一种优选方案,所述的缓存数据文件列表包括数据缓存文件和缓存索引文件,数据缓存文件和缓存索引文件的名称一致,且位于同一位置。
14.第二方面,提供一种提高趋势数据查询效率的池化方法,包括以下步骤:
15.对缓存数据的数据标签进行缓存时,将数据标签在绘制宽度为固定像素的绘制区域中进行绘制,使每像素代表绘制时间片长度为数据标签的历史时长/绘制区域的绘制宽度;
16.通过每个时间片对应的时间片模型的特征值还原出当前时间片的曲线特征。
17.作为本发明池化方法的一种优选方案,按照如下方式进行缓存数据的加载:打开缓存数据的主文件,并读取缓存数据的主文件的信息,缓存数据的主文件的信息包括缓存数据文件的数量以及数据标签的数量;
18.当数据标签的数量大于0时,则读取数据标签的缓存列表,当缓存数据文件的数量大于0时,则打开缓存索引文件,然后创建缓存节点,并将缓存数据绑定到缓存列表。
19.作为本发明池化方法的一种优选方案,所述的时间片模型具有不同的特征值,时间片模型的建立过程包括以下步骤:
20.搭建绘制区域,建立数据标签模型,并对数据标签模型进行标记;然后对数据标签的特征值进行设定,将数据标签模型与绘制区域通过plot_values接口进行链接,生成时间片模型。
21.作为本发明池化方法的一种优选方案,所述的plot_values接口通过以下的步骤进行调用:
22.调用绘制区域,并获取数据标签的数据缓存的时间顺序;
23.对数据标签进行缓存,并对数据标签信息进行更新;
24.执行查询线程,并将查询结果与原有缓存的数据标签进行合并。
25.相较于现有技术,本发明至少具有如下的有益效果:
26.在绘制某个数据标签点的历史数据趋势曲线时,本发明建立具有不同特征值的时间片模型,通过plot_values接口在对缓存数据的数据标签进行缓存时,将数据标签在绘制宽度为固定像素的绘制区域中进行绘制,则每像素代表绘制时间片长度即为数据标签的历史时长/绘制区域的绘制宽度,然后通过每个时间片对应的时间片模型的特征值就可以还原出当前时间片的曲线特征,时间片模型的特征值包括开始值、结束值、最大值、最小值、异常值,从而大大的降低了历史查询所需要花费的时间,提高了查询效率,同时降低了内存资源的浪费。
附图说明
27.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
28.图1本发明实施例提高趋势数据查询效率的池化方法流程图。
具体实施方式
29.为使本发明的目的、技术方案及优点更加清楚、明确,以下结合具体实施方式与附图对本发明进一步详细说明。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
30.实施例1
31.本发明提出一种提高趋势数据查询效率的池化结构,包括数据库和曲线池;
32.数据库,用于建立具有不同特征值的时间片模型;
33.曲线池即曲线查询池,为了解决绘制较长时间段内的历史数据曲线,从数据库中查询数据缓慢而增加的曲线缓存池。曲线池包括内存数据、具有取时间片内用以绘制曲线的特征值功能的plot_values接口以及缓存数据存储数据结构;所述曲线池的工作流程包括加载缓存数据流程和调用plot_values取得时间片内用以绘制曲线的特征值的流程。
34.时间片模型的建立过程包括:
35.搭建绘制区域,建立数据标签模型并对数据标签模型进行标记,然后对数据标签的特征值进行设定,将数据标记模型与绘制区域通过plot_values接口进行链接,生成时间片模型。
36.内存数据用于对数据标签进行序列化和反序列化处理,完成对数据标签的数据量的获取。
37.plot_values接口包括用于对数据标签进行初始化的初始化查询池、用于释放查询池内存的释放查询池内存、用于对数据标签进行保存的保存查询池内存以及操作确认。plot_values接口还包括设置历史方法外裹对象、增加数据标签点数据、添加对快照数据的更新、更新数据标签的数据量以及对数据标签的进行删除和修改操作;所述删除和修改操作具体包括删除数据标签、删除数据标签指定时间的数据值以及删除数据标签指定时间范围内的数据量值。
38.缓存数据存储数据结构包括主缓存文件的文件头、缓存数据文件列表、数据标签编号列表以及数据标签命中权重列表;主缓存文件的文件头包括文件标识、文件版本、开始时间、截止时间、文件索引数量、数据标签的编号及数量以及预留置零部分,所述主缓存文件的文件头所占用的内存共为512个字节,其中文件标识和文件版本所占用的内存均为4个字节。
39.缓存数据文件列表包括数据缓存文件和缓存索引文件,数据缓存文件和缓存索引文件的名称一致,且位于同一位置,数据缓存文件包括开始时间、截止时间、数据标签数量以及数据标签的数据量,缓存索引文件包括数据缓存文件的文件名称以及缓存位置的全路径信息。
40.数据标签编号列表包括数据标签编号、数据标签类型、数据标签长度以及预留空白;
41.数据标签命中权重列表包括数据标签编号、首次查询时间、最近查询时间以及查询次数。
42.一种提高趋势数据查询效率的池化方法,包括以下步骤:
43.对缓存数据的数据标签进行缓存时,将数据标签在绘制宽度为固定像素的绘制区域中进行绘制,使每像素代表绘制时间片长度为数据标签的历史时长/绘制区域的绘制宽度;
44.通过每个时间片对应的时间片模型的特征值还原出当前时间片的曲线特征。
45.按照如下方式进行缓存数据的加载:打开缓存数据的主文件,并读取缓存数据的主文件的信息,缓存数据的主文件的信息包括缓存数据文件的数量以及数据标签的数量;
46.当数据标签的数量大于0时,则读取数据标签的缓存列表,当缓存数据文件的数量大于0时,则打开缓存索引文件,然后创建缓存节点,并将缓存数据绑定到缓存列表。
47.其中,时间片模型具有不同的特征值,时间片模型的建立过程包括以下步骤:
48.搭建绘制区域,建立数据标签模型,并对数据标签模型进行标记;然后对数据标签的特征值进行设定,将数据标签模型与绘制区域通过plot_values接口进行链接,生成时间片模型。
49.plot_values接口通过以下的步骤进行调用:
50.调用绘制区域,并获取数据标签的数据缓存的时间顺序;
51.对数据标签进行缓存,并对数据标签信息进行更新;
52.执行查询线程,并将查询结果与原有缓存的数据标签进行合并。
53.实施例2
54.如图1所示,一种提高趋势数据查询效率的池化方法按数据库和曲线池包括以下步骤:
55.数据库用于建立具有不同特征值的时间片模型,具体建立过程包括以下步骤:
56.步骤s1:搭建绘制区域,所述绘制区域的绘制宽度为500像素;
57.步骤s2:建立数据标签模型,并对数据标签模型进行标记,然后对数据标签的特征值进行设定;所述特征值包括开始值、结束值、最大值、最小值、异常值;
58.步骤s3:将数据标记模型与绘制区域通过优化接口进行链接,然后生成时间片模型。
59.步骤s4:将所生成的时间片模型上传至数据库内,并建立优化接口,将时间片模型与绘制区域相链接。
60.曲线池包括内存数据、功能接口以及缓存数据存储数据结构;
61.其中,内存数据用于对数据标签进行序列化和反序列化处理,从而完成对数据标签的数据量的获取;功能接口包括用于对数据标签进行初始化的初始化查询池、用于释放查询池内存的释放查询池内存、用于对数据标签进行保存的保存查询池内存以及操作确认。功能接口还包括设置历史方法外裹对象、增加数据标签点数据、添加对快照数据的更新、更新数据标签的数据量以及对数据标签的进行删除和修改操作;所述删除和修改操作具体包括删除数据标签、删除数据标签指定时间的数据值以及删除数据标签指定时间范围内的数据量值。缓存数据存储数据结构包括主缓存文件的文件头、缓存数据文件列表、数据标签编号列表以及数据标签命中权重列表;主缓存文件的文件头包括文件标识、文件版本、开始时间、截止时间、文件索引数量、数据标签的编号及数量以及预留置零部分,所述主缓存文件的文件头所占用的内存共为512个字节,其中文件标识和文件版本所占用的内存均为4个字节。缓存数据文件列表包括数据缓存文件和缓存索引文件,数据缓存文件和缓存索
引文件的名称一致,且位于同一位置,所述数据缓存文件包括开始时间、截止时间、数据标签数量以及数据标签的数据量,所述缓存索引文件包括数据缓存文件的文件名称以及缓存位置的全路径信息。
62.数据标签编号列表包括数据标签编号、数据标签类型、数据标签长度以及预留空白;
63.数据标签命中权重列表包括数据标签编号、首次查询时间、最近查询时间以及查询次数。
64.在具体实施过程中,曲线池的工作流程包括加载缓存数据流程和调用plot_values流程;
65.加载缓存数据流程具体包括以下步骤:
66.步骤j1:加载缓存数据,并启动曲线池;
67.步骤j2:打开缓存数据的主文件,并读取缓存数据的主文件的信息,缓存数据的主文件的信息包括缓存数据文件的数量以及数据标签的数量;
68.步骤j3:当数据标签的数量大于0时,则读取数据标签的缓存列表,当缓存数据文件的数量大于0时,则打开缓存索引文件,然后创建缓存节点,并将缓存数据绑定到缓存列表。
69.调用plot_values流程具体包括以下步骤:
70.步骤d1:调用绘制区域,并获取数据标签的数据缓存的时间顺序;
71.步骤d2:对数据标签进行缓存,并对数据标签信息进行更新;
72.步骤d3:执行查询线程,并将查询结果与原有缓存的数据标签进行合并。
73.以下通过实际案例对本发明的实施效果加以验证:
74.如果要绘制某标签点3个月历史数据曲线,按照传统做法需要从数据库读取3个月的历史数据,如果是平均3秒一个值,则总数据量大约为:60*60*24/3*30*30=2592000条数据。在一个宽度为500像素的绘制区域上绘制,则平均每像素要绘制的数据量是2592000/500=51840个值。为了发送2592000条数据需要使用的带宽约为2592000*10字节=24mb,造成了资源浪费。而本发明通过增加了一个取得时间片内用以绘制曲线的特征值的接口对过程实现优化,则同样绘制某标签点3个月历史数据曲线,则对某个标签点按3秒一个值,3个月的总时间长度为7776000秒,在绘制宽度为500像素的绘制区域中,每像素代表绘制时间片长度为7776000/500=15552秒。每个时间片只要提供对应时间片模型的特征值,即开始值、结束值、最大值、最小值、异常值这5个值就可以还原出当前时间片的曲线特征,总数据量大约为:500*5=2500条数据,仅为未优化前的1/1000,需要使用的带宽约为2500*10字节=24kb。这大大提高了数据缓存和查询的效率,且减少了不必要的资源的浪费。
75.以上内容仅仅是对本发明结构所作的举例和说明,所属本技术领域的技术人员对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围,此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。在本发明所提供的实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其
它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方法的目的。
76.最后应说明的是,以上实施例仅用以说明本发明的技术方法而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方法进行修改或等同替换,而不脱离本发明技术方法的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献