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

一种DCS历史数据的统计数据记录与查询方法、系统、设备及介质与流程

2022-05-26 19:52:47 来源:中国专利 TAG:

一种dcs历史数据的统计数据记录与查询方法、系统、设备及介质
技术领域
1.本发明涉及dcs数据处理技术领域,尤其涉及一种dcs历史数据的统计数据记录与查询方法、系统、设备及介质。


背景技术:

2.在日常工业应用中,dcs通常会有大量历史数据,以每个观测点每秒采集一个数据为例,则每个观测点每天会产生超过八万条数据,而通常的dcs系统中会有成千上万个观测点,如果每次查询统计数据都查对应的原始数据进行计算会消耗大量的系统资源。
3.而解决方案则是在原始实时数据记录入库之前计算出相应的统计数据,存入数据库中,甚至有方案是将历史数据存入一个单独设置的分布式数据库中,这样情况比较复杂且性价比不高。


技术实现要素:

4.(一)要解决的技术问题
5.鉴于现有技术的上述缺点、不足,本发明提供一种dcs历史数据的统计数据记录与查询方法、系统、设备及介质,其解决了现有方案针对历史数据的查询效率不高且系统较为复杂的技术问题。
6.(二)技术方案
7.为了达到上述目的,本发明采用的主要技术方案包括:
8.第一方面,本发明实施例提供一种dcs历史数据的统计数据记录与查询方法,包括:
9.依次确定每个文件的记录时间跨度和若干统计时间跨度;
10.基于获取的每个文件的记录时间跨度内的原始数据,得出每个统计时间跨度的统计数据,并将所述统计数据记录到每个文件中;
11.在收到查询指令时,解析查询指令得到查询时间范围和查询观测点;
12.依据所述查询时间范围和统计时间跨度,确定待查询统计时间段;
13.通过读取每个文件中所述待查询统计时间段内多个统计数据的索引地址,获得所述查询观测点所对应的统计数据;
14.其中,所述文件记录有所对应的记录时间跨度内各个观测点数据。
15.可选地,所述文件包括文件头和数据部分;
16.所述文件头记录有文件标识和文件类型;
17.所述数据部分包括按照预设顺序依次组合而成的多个数据块;各个所述数据块均包括数据头和数据,所述数据头记录有对应数据块的观测点数量、观测点数据的索引地址和下一数据块的索引地址。
18.可选地,依次确定每个文件的记录时间跨度和若干统计时间跨度之前,还包括:
19.依次在所述文件头写入相应的文件标识和文件类型、在第一数据块的数据头写入第一数据块的观测点数量、多个观测点数据的索引地址和下一数据块的索引地址以及在所述第一数据块的数据部分写入第一数据块的多个观测点的初始化数据;
20.多次重复上述写入步骤,直至将每个数据块所对应的观测点数量、多个观测点的索引地址、下一数据块的索引地址写入数据头以及将多个观测点的初始化数据写入所述数据部分中。
21.可选地,依次确定文件的记录时间跨度和若干统计时间跨度包括:
22.获取每个文件的记录时间跨度;
23.基于所述记录时间跨度,确定若干统计时间跨度;
24.其中,所述记录时间跨度为所述统计时间跨度的整数倍;所述统计时间跨度包括至少一个第一统计时间跨度和至少一个第二统计时间跨度,所述第一统计时间跨度不大于第一预设值,所述第二统计时间跨度不小于第二预设值,且所述第二预设值大于所述第一预设值。
25.可选地,基于获取的每个文件的记录时间跨度内的原始数据,得出每个统计时间跨度的统计数据,并将所述统计数据记录到每个文件中包括:
26.在所述记录时间跨度内,每隔所述统计时间跨度获取每个文件的原始数据;
27.求取每个统计时间跨度内所述原始数据的统计数据,并得到所述统计数据的索引地址;
28.依据所述索引地址将所述统计数据记录到每个文件的对应位置,并将对应位置的初始化数据重新改写为统计数据;
29.其中,所述统计数据包括原始数据的最大值、最小值、平均值以及瞬时值。
30.可选地,依据所述查询时间范围和所述统计时间跨度,确定待查询统计时间段包括:
31.依据时间跨度大小将所述查询时间范围和所述统计时间跨度进行对比;
32.若所述查询时间范围的时间跨度不大于所述第一统计时间跨度,则选用所述第一统计时间跨度作为待查询统计时间段;
33.若所述查询时间范围的时间跨度不小于所述第二统计时间跨度,则选用所述第二统计时间跨度作为待查询统计时间段。
34.可选地,通过计算出的所述统计时间段内多个统计数据的索引地址,读取所述查询文件的对应位置的统计数据包括:
35.依次排查每个数据块的数据头,直至找寻到所述查询观测点的索引地址;
36.确定待查询统计时间段的序号,并将序号与每个时间段数据大小相乘得到待查询统计时间段的偏移;
37.将所述查询观测点的索引地址和所述待查询统计时间段的偏移相加得到数据地址,进而读取所述数据地址处的统计数据。
38.其中,每个观测点的各个统计时间段的数据是按照时间顺序排列的,即待查询统计时间段具备对应的序号;
39.所述待查询统计时间段的偏移为相对于查询观测点所有数据起始地址的偏移,所述起始地址为数据头记录的该观测点的数据索引地址。
40.第二方面,本发明实施例提供一种dcs历史数据的统计数据记录与查询系统,包括:
41.时间确定模块,用于依次确定每个文件的记录时间跨度和若干统计时间跨度;
42.统计数据记录模块,用于基于获取的每个文件的记录时间跨度内的原始数据,得出每个统计时间跨度的统计数据,并将所述统计数据记录到每个文件中;
43.指令解析模块,用于在收到查询指令时,解析查询指令得到查询时间范围和查询观测点;
44.统计时间段确定模块,用于依据所述查询时间范围和统计时间跨度,确定待查询统计时间段;
45.统计数据查询模块,用于通过读取每个文件中所述待查询统计时间段内多个统计数据的索引地址,获得所述查询观测点所对应的统计数据。
46.第三方面,本发明实施例提供一种dcs历史数据的统计数据记录与查询设备,包括:
47.至少一个数据库;
48.以及与所述至少一个数据库通信连接的存储器;
49.其中,所述存储器存储有可被所述至少一个数据库执行的指令,所述指令被所述至少一个数据库执行,以使所述至少一个数据库能够执行如上所述的一种dcs历史数据的统计数据记录与查询方法。
50.第四方面,本发明实施例提供一种计算机可读介质,其上存储有计算机可执行指令,所述可执行指令被处理器执行时实现如上所述的一种 dcs历史数据的统计数据记录与查询方法。
51.(三)有益效果
52.本发明的有益效果是:本发明将历史数据的统计数据存储到数据文件中,实现了基于数据文件来对统计数据进行先计算后查询的方式,提高了查询效率;同时,避免了设计数据库,仅采用数据文件即可,降低了系统复杂度。
附图说明
53.图1为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的流程示意图;
54.图2为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的步骤s1之前的具体流程示意图;
55.图3为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的文件的组成示意图;
56.图4为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的数据头的组成示意图;
57.图5为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的观测点数据所包含的数据示意图;
58.图6为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的步骤s1的具体流程示意图;
59.图7为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的步骤s2的具体流程示意图;
60.图8为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的步骤s4的具体流程示意图;
61.图9为本发明实施例提供的一种dcs历史数据的统计数据记录与查询方法的步骤s5的具体流程示意图;
62.图10为本发明实施例提供的一种dcs历史数据的统计数据记录与查询系统的组成示意图。
63.【附图标记说明】
64.100:dcs历史数据的统计数据记录与查询系统;
65.110:时间确定模块;
66.120:统计数据记录模块;
67.130:指令解析模块;
68.140:统计时间段确定模块;
69.150:统计数据查询模块。
具体实施方式
70.为了更好地解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
71.如图1所示,本发明实施例提出的一种dcs历史数据的统计数据记录与查询方法,包括:首先,依次确定每个文件的记录时间跨度和若干统计时间跨度;其次,基于获取的每个文件的记录时间跨度内的原始数据,得出每个统计时间跨度的统计数据,并将所述统计数据记录到每个文件中;接着,在收到查询指令时,解析查询指令得到查询时间范围和查询观测点;再者,依据所述查询时间范围和统计时间跨度,确定待查询统计时间段;最后,通过读取每个文件中所述待查询统计时间段内多个统计数据的索引地址,获得所述查询观测点所对应的统计数据;其中,所述文件记录有所对应的记录时间跨度内各个观测点数据。
72.本发明将dcs历史数据的统计数据存储到相应的文件中,实现了基于文件来对统计数据进行先计算后查询的方式,提高了查询效率;同时,避免了设计数据库,仅采用数据文件即可,降低了系统复杂度。
73.为了更好地理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更清楚、透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
74.具体地,本发明实施例提供一种dcs历史数据的统计数据记录与查询方法,其包括:
75.如图2所示,在步骤s1之前还包括:
76.f11、依次在所述文件头写入相应的文件标识和文件类型、在第一数据块的数据头写入第一数据块的观测点数量、多个观测点数据的索引地址和下一数据块的索引地址以及在所述第一数据块的数据部分写入第一数据块的多个观测点的初始化数据。
77.f12、多次重复上述写入步骤,直至将每个数据块所对应的观测点数量、多个观测点的索引地址、下一数据块的索引地址写入数据头以及将多个观测点的初始化数据写入所述数据部分中。
78.本发明在每个文件创建时已经将各个数据空间开辟好,创建的文件大小即为该文件记录这些数据所需要的大小,此时数据位置写入的是初始化数据。
79.如图3所示,文件由文件头和数据部分组成,所述文件头记录有文件标识和文件类型;所述数据部分包括按照预设顺序依次组合而成的多个数据块;各个所述数据块均包括数据头和数据。
80.如图4所示,所述数据头记录有对应数据块的观测点数量、观测点数据的索引地址和下一数据块的索引地址。
81.如图5所示,每个观测点的数据依次记录了每个统计时间跨度的数据,每个统计时间跨度的数据指该文件记录时间被该时间跨度划分得到的每个时间段的数据。
82.s1、依次确定每个文件的记录时间跨度和若干统计时间跨度。
83.如图6所示,步骤s1包括:
84.s11、获取每个文件的记录时间跨度。
85.s12、基于所述记录时间跨度,确定若干统计时间跨度。
86.其中,所述记录时间跨度为所述统计时间跨度的整数倍;所述统计时间跨度包括至少一个第一统计时间跨度和至少一个第二统计时间跨度,所述第一统计时间跨度不大于第一预设值,所述第二统计时间跨度不小于第二预设值,且所述第二预设值大于所述第一预设值。
87.在步骤s1中,首先根据需要确定每个文件的记录时间跨度,如每个文件记录一天的数据。再确定不同的统计时间跨度,至少确定一个较小时间跨度(如一分钟)用于精确查询,至少确定一个较大时间跨度(如十分钟)用于提高查询时间跨度大时的查询效率。
88.s2、基于获取的每个文件的记录时间跨度内的原始数据,得出每个统计时间跨度的统计数据,并将所述统计数据记录到每个文件中。
89.如图7所示,步骤s2包括:
90.s21、在所述记录时间跨度内,每隔所述统计时间跨度获取每个文件的原始数据。
91.对于dcs等实时运行系统来说,按照统计时间跨度取原始数据可以每运行一段时间记录一次,且数据量相对较小。相对于统计时间跨度来说一个文件会记录较长时间的统计数据,需要取较长时间才会记录且需要取的原始数据量较大。例如统计时间跨度为一分钟和十分钟,可以每十分钟取一次十分钟的数据计算存储,而如果取一天(24小时)的原始数据计算,原始数据量就很大了。
92.s22、求取每个统计时间跨度内所述原始数据的统计数据,并得到所述统计数据的索引地址。
93.s23、依据所述索引地址将所述统计数据记录到每个文件的对应位置,并将对应位置的初始化数据重新改写为统计数据。
94.当文件创建好之后真正记录数据时,要写某数据就在得到该数据的索引地址后,将对应位置的数据由初始化数据改写为实际数据值。
95.其中,所述统计数据包括原始数据的最大值、最小值、平均值以及瞬时值。
96.在上述s2的具体步骤中,当需要计算及记录统计值时,如每次(每时间跨度)采集的数据记录后,取这次记录(这个时间跨度)的原始数据,计算出其中每个统计时间跨度范围的最大值、最小值、平均值等统计数据。
97.s3、在收到查询指令时,解析查询指令得到查询时间范围和查询观测点。
98.s4、依据所述查询时间范围和统计时间跨度,确定待查询统计时间段。
99.如图8所示,步骤s4包括:
100.s41、依据时间跨度大小将所述查询时间范围和所述统计时间跨度进行对比。
101.s42、若所述查询时间范围的时间跨度不大于所述第一统计时间跨度,则选用所述第一统计时间跨度作为待查询统计时间段。
102.s43、若所述查询时间范围的时间跨度不小于所述第二统计时间跨度,则选用所述第二统计时间跨度作为待查询统计时间段。
103.本发明优先时间跨度大的统计时间数据指:当查询的时间跨度较大,能够覆盖大的统计时间跨度,则采用大时间跨度数据,目的是减小查询量以提高效率,此时不会查小时间跨度的数据而不是查了舍弃。而当时间跨度不能覆盖大时间跨度时,会用小时间跨度做补充。例如:两个统计时间跨度分别为一分钟和十分钟,查询10:15:00~12:30:00的统计数据时,10:20:00~12:30:00会查询每十分钟的统计数据,10:15:00~10:20:00 会查询每分钟的统计数据。
104.s5、通过读取每个文件中所述待查询统计时间段内多个统计数据的索引地址,获得所述查询观测点所对应的统计数据。
105.如图9所示,步骤s5包括:
106.s51、依次排查每个数据块的数据头,直至找寻到所述查询观测点的索引地址。
107.s52、确定待查询统计时间段的序号,并将序号与每个时间段数据大小相乘得到待查询统计时间段的偏移。
108.s53、将所述查询观测点的索引地址和所述待查询统计时间段的偏移相加得到数据地址,进而读取所述数据地址处的统计数据。
109.其中,每个观测点的各个统计时间段的数据是按照时间顺序排列的,即所述待查询统计时间段具备对应的序号;所述待查询统计时间段的偏移为相对于查询观测点所有数据起始地址的偏移,所述起始地址为数据头记录的该观测点的数据索引地址。具体包括如下步骤:
110.第一步,先查第一数据头,看看本次查询的观测点数据在不在,如果不在就找下一块,直到找到该观测点所在的块。
111.第二步,从该观测点所在块的数据头得到该观测点数据的索引地址 (这个地址指向了该观测点的所有数据)。
112.第三步,算出待查询统计时间段的序号,序号x每个时间段数据大小得到待查询统计时间段的偏移。
113.第四步,第二步得到的索引地址和第三步得到的偏移相加就得到了这段数据的地址。
114.逻辑需要详述的应该是第三步和第四步,说明如下:
115.每个观测点每个统计时间段的数据大小是固定的,本方法设计的文件中每个观测
点的各个统计时间段的数据是按照时间连续排列的。所以根据待查询统计时间段就可以算出序号进而算出这个时间段数据相对于该观测点所有数据起始地址的偏移,而这个起始地址,就是第二步所述的块的数据头记录的该观测点的数据索引。
116.在具体实施例中,一长期运行dcs采用此方法记录100个观测点的统计数据。首先确定单个文件记录12小时数据,统计时间跨度分别为一分钟和十分钟。系统运行时记录统计数据,每天0点按照本方法创建文件用于存储当天这100个观测点的统计数据。每10分钟取这十分钟(如 10:20:00取10:10:00~10:20:00)的数据分别计算这十分钟的统计数据和每分钟的统计数据,算出该数据对应的索引将数据写入文件中对应位置。当收到查询指令要查询某观测点10:15:00~11:40:00的平均值,根据统计时间跨度得,应查询10:15:00~10:20:00每分钟的统计数据和 10:20:00~11:40:00每10分钟的统计数据,对于要查寻的每个数据,先找到这个观测点在哪个数据块,从头部读出这个观测点数据的索引地址,再计算出这个时间对应的数据序号来算出偏移,偏移加索引地址得到这个数据的地址取出数据。
117.值得一提的是,在本发明实施例中,本发明的历史数据,指按照设定时间定期实时采集记录的数据,如dcs趋势数据等每秒采集记录的程序或设备的运行数据
118.如图10所示,一种dcs历史数据的统计数据记录与查询系统100,包括:
119.时间确定模块110,用于依次确定每个文件的记录时间跨度和若干统计时间跨度;
120.统计数据记录模块120,用于基于获取的每个文件的记录时间跨度内的原始数据,得出每个统计时间跨度的统计数据,并将所述统计数据记录到每个文件中;
121.指令解析模块130,用于在收到查询指令时,解析查询指令得到查询时间范围和查询观测点;
122.统计时间段确定模块140,用于依据所述查询时间范围和统计时间跨度,确定待查询统计时间段;
123.统计数据查询模块150,用于通过读取每个文件中所述待查询统计时间段内多个统计数据的索引地址,获得所述查询观测点所对应的统计数据。
124.由于本发明上述实施例所描述的系统/装置,为实施本发明上述实施例的方法所采用的系统/装置,故而基于本发明上述实施例所描述的方法,本领域所属技术人员能够了解该系统/装置的具体结构及变形,因而在此不再赘述。凡是本发明上述实施例的方法所采用的系统/装置都属于本发明所欲保护的范围。
125.此外,本发明还提供一种dcs历史数据的统计数据记录与查询设备,包括:至少一个数据库;以及与所述至少一个数据库通信连接的存储器;其中,所述存储器存储有可被所述至少一个数据库执行的指令,所述指令被所述至少一个数据库执行,以使所述至少一个数据库能够执行如上所述的一种dcs历史数据的统计数据记录与查询方法。
126.以及,本发明还提供一种计算机可读介质,其上存储有计算机可执行指令,所述可执行指令被处理器执行时实现如上所述的一种dcs历史数据的统计数据记录与查询方法。
127.综上所述,本发明提供一种dcs历史数据的统计数据记录与查询方法、系统、设备及介质,本发明公开了:记录时,每个文件第一次记录时,先写入文件头信息和第一个块,写入这个块的每个观测点的初始化数据,每个观测点的索引写在该块的头部对应位置。后续追加块和观测点时同理。记录数据时,计算出该数据索引地址,将对应位置的初始化数据改
写成实际的统计数据。读数据时,先根据需要查询的时间范围,计算出所需查询的各个时间段,优先时间跨度大的统计时间段,以减少查询的数据量。对于需要查询的每个数据,计算出该数据的索引地址,读取出该位置的统计数据即为所得。其中,计算统计数据索引地址时,先在块头部信息读取该观测点的索引地址,再计算出该数据的序号,以此计算得该数据的偏移,与该观测点索引地址相加即为该数据的地址。
128.基于上述技术方案,可知本发明使用文件对统计数据进行存储,以便记录不同时间跨度的统计数据,且使用索引进行查询,简化了记录与查询系统设计,提高效率和性价比。
129.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例,或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用记录介质(包括但不限于磁盘记录器、cd-rom、光学记录器等)上实施的计算机程序产品的形式。
130.本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。
131.应当注意的是,在权利要求中,不应将位于括号之间的任何附图标记理解成对权利要求的限制。词语“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的词语“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的权利要求中,这些装置中的若干个可以是通过同一个硬件来具体体现。词语第一、第二、第三等的使用,仅是为了表述方便,而不表示任何顺序。可将这些词语理解为部件名称的一部分。
132.此外,需要说明的是,在本说明书的描述中,术语“一个实施例”、“一些实施例”、“实施例”、“示例”、“具体示例”或“一些示例”等的描述,是指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
133.尽管已描述了本发明的优选实施例,但本领域的技术人员在得知了基本创造性概念后,则可对这些实施例作出另外的变更和修改。所以,权利要求应该解释为包括优选实施例以及落入本发明范围的所有变更和修改。
134.显然,本领域的技术人员可以对本发明进行各种修改和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也应该包含这些修改和变型在内。
再多了解一些

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

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

相关文献