CN114547144B - 时序数据范围查询方法、装置及设备 - Google Patents
时序数据范围查询方法、装置及设备 Download PDFInfo
- Publication number
- CN114547144B CN114547144B CN202210140941.XA CN202210140941A CN114547144B CN 114547144 B CN114547144 B CN 114547144B CN 202210140941 A CN202210140941 A CN 202210140941A CN 114547144 B CN114547144 B CN 114547144B
- Authority
- CN
- China
- Prior art keywords
- data
- sub
- compressed data
- query
- query time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000011084 recovery Methods 0.000 claims abstract description 118
- 238000005070 sampling Methods 0.000 claims description 51
- 230000006835 compression Effects 0.000 claims description 38
- 238000007906 compression Methods 0.000 claims description 38
- 230000000717 retained effect Effects 0.000 claims description 23
- 238000012216 screening Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种时序数据范围查询方法、装置及设备,所述方法包括:接收用户输入的查询时间段,根据每一分段压缩数据的时间界限将所述查询时间段划分为多个子查询时间段;所述查询时间段表示查询时间范围;针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述统计信息确定所述子查询时间段对应的恢复点数,根据所述压缩数据段确定每一恢复数据点对应的数据值;所述统计信息用于表示原始数据和压缩数据的数据特征;将所有子查询时间段对应的数据值进行拼接,得到与所述查询时间段对应的恢复数据,能够基于每一压缩数据段的统计信息确定恢复数据的个数,能够提高得到的恢复数据的精确度。
Description
本申请要求于2022年01月30日提交中国国家知识产权局、申请号为202210113950.X、申请名称为“时序数据查询方法、装置及设备”的中国专利申请的优先权,其全部或部分内容通过引用结合在本申请中。
技术领域
本发明涉及数据库技术领域,尤其涉及一种时序数据范围查询方法、装置及设备。
背景技术
随着物联网技术的发展,时序数据的产生变得更加迅速,时序数据是同一统一指标按时间顺序记录的数据列。考虑到存储成本,在将时序数据存储之前,需要对时序数据进行压缩。
有损压缩方式是指采用抽样或其他方式选择时序数据中的部分数据来近似表示完整的时序数据。在将数据压缩存储后,还需要对压缩数据进行恢复。在现有技术中,对于恢复后数据的个数的设置通常都是用户指定的个数。
但是,上述方法得到的数据的个数具有精确度较低的问题,无法反应原始数据的特征。
发明内容
本申请提供一种时序数据范围查询方法、装置及设备,以解决现有的通过用户指定的方式确定恢复后数据的个数存在的精确度较低的问题。
第一方面,本申请提供一种时序数据范围查询方法,所述方法包括:
接收用户输入的查询时间段,根据每一分段压缩数据的时间界限将所述查询时间段划分为多个子查询时间段;所述查询时间段表示查询时间范围;
针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述统计信息确定所述子查询时间段对应的恢复点数,根据所述压缩数据段确定每一恢复数据点对应的数据值;所述统计信息用于表示原始数据和压缩数据的数据特征;
将所有子查询时间段对应的数据值进行拼接,得到与所述查询时间段对应的恢复数据。
可选的,所述统计信息包括:压缩倍数和采样信息;根据所述统计信息确定所述子查询时间段对应的恢复点数,包括:
确定所述压缩数据段包含的数据个数,根据所述压缩倍数和所述压缩数据段包含的数据个数确定所述压缩数据段对应的恢复点数;
根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;所述采样信息用于反映原始数据的时间间隔的分布情况。
可选的,根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数,包括:
当所述采样信息为均匀采样时,基于时间比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;或者,
当所述采样信息为非均匀采样时,基于点比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数。
可选的,获取包含所述子查询时间段的压缩数据段,包括:
获取所述子查询时间段的起始时间和结束时间;
根据所述起始时间、结束时间和所述对应的压缩数据段的时间界限确定所述压缩数据段的时间范围与所述子查询时间段的时间范围的交叠情况;
根据所述交叠情况,确定获取的压缩数据段中的保留数据。
可选的,根据所述交叠情况,确定获取的压缩数据段中的保留数据,包括:
当所述压缩数据段的时间范围与所述子查询时间段的时间范围全部交叠时,获取所述压缩数据段中的所有保留数据;或者,
当所述子查询时间段的时间范围与所述压缩数据段的时间范围部分交叠时,从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据。
可选的,所述统计信息还包括时间间隔的和、时间间隔的平均值以及时间间隔的平方和;从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据,包括:
当所述压缩数据段中不存在与所述子查询时间段对应的保留数据时,判断所述压缩数据段对应的压缩倍数是否大于1;
若所述压缩倍数大于1,则根据所述时间间隔的和以及时间间隔的平方和确定时间间隔的平均值和方差,并根据时间间隔的平均值和方差确定第一数值;所述第一数值为时间间隔的平均值与三倍标准差之和;
若所述子查询时间段对应的时间长度大于所述第一数值,则将与所述子查询时间段距离最近的预设数量的时间点对应的数据值作为该子查询时间段的保留数据。
第二方面,本申请提供一种时序数据范围查询装置,所述装置包括:
划分模块,用于接收用户输入的查询时间段,根据每一分段压缩数据的界限值将所述查询时间段划分为多个子查询时间段;所述查询时间段表示查询时间范围;
确定模块,用于针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述压缩数据段对应的统计信息确定该子查询时间段对应的总点数以及每一点数对应的数据值;
拼接模块,用于将每一子查询时间段的数据值进行拼接,得到与所述查询时间段对应的恢复数据。
第三方面,本申请提供一种时序数据范围查询设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面任一项所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如第一方面任一项所述的方法。
本发明提供一种时序数据范围查询方法、装置及设备,所述方法包括:接收用户输入的查询时间段,根据每一分段压缩数据的时间界限将所述查询时间段划分为多个子查询时间段;针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述统计信息确定所述子查询时间段对应的恢复点数,根据所述压缩数据段确定每一恢复数据点对应的数据值;所述统计信息用于表示原始数据和压缩数据的数据特征;将所有子查询时间段对应的数据值进行拼接,得到与所述查询时间段对应的恢复数据,能够基于每一压缩数据段的统计信息确定恢复数据的个数,能够提高得到的恢复数据的精确度。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种应用场景示意图;
图2为本发明提供的一种时序数据范围查询方法的流程示意图;
图3为本发明提供的一种图2中步骤S202中获取包含所述子查询时间段的压缩数据段的流程示意图;
图4为本发明提供的一种图2中步骤S202中根据所述统计信息确定所述子查询时间段对应的恢复点数的流程示意图;
图5为本发明提供的一种时序数据范围查询装置的结构示意图;
图6为本发明提供的一种时序数据范围查询设备的硬件结构示意图。
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1为本发明提供的一种应用场景示意图。本申请提供的时序数据范围查询方法可以应用于如图1所示的应用场景中。该场景包括用户101和终端设备102,其中,用户可以向终端设备发送查询时间段,在终端设备102中存储有分段压缩数据以及对应的统计信息,并可以根据查询时间段得到多个子查询时间段,并基于每一压缩数据段的统计信息确定每一子查询时间段的恢复点数,并按照时间顺序进行数据拼接,最终得到与查询时间段对应的恢复数据,并向用户101进行展示。
在现有技术中,当在对时序数据压缩后,若要对原始数据进行查询,则需要用户指定恢复数据的个数。例如,采集2021年这一年内的温度数据,其中可以在一天内存储多个时刻的温度数据,并将温度数据进行压缩,得到压缩后的温度数据。例如,当原始数据是以每十分钟的时间间隔采集的数据,压缩后的数据可能为每三个小时对应一个数据。当需要对压缩后的数据进行查询时,例如,查询2021年2月15日至4月5日每日的原始温度数据时,无法明确恢复数据的点数。
基于上述问题,本发明提供的时序数据范围查询方法,在将数据进行压缩时,可以根据压缩方式的不同,将压缩后的数据分段存储,在存储时,通过存储压缩数据段以及对应的统计信息,并当在根据用户输入的查询时间段进行数据恢复时,能够按照分段压缩数据的时间界限划分为多个子查询时间段,并基于每一压缩数据段的统计信息确定该子查询时间段对应的恢复点数,最后基于预设数据恢复方法,得到与查询时间段对应的恢复数据,能够实现基于统计信息确定恢复点数,能够精确得到任一时间段对应的恢复数据。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2为本发明提供的一种时序数据范围查询方法的流程示意图,如图2所示,所述方法的执行主体为时序数据范围查询装置,该装置设置在时序数据范围查询设备上,所述方法包括:
步骤S201、接收用户输入的查询时间段,根据每一分段压缩数据的时间界限将所述查询时间段划分为多个子查询时间段。
其中,终端设备中存储有与时序数据对应的压缩数据,由于压缩方式的不同,可以得到多段压缩数据。例如,基于时间序列存在数据价值随时间递减的天然特性,因此,在将原始时序数据进行压缩时,可以将距离当前时间越近的时序数据的压缩倍数设置的较小,将距离当前时间越远的时序数据的压缩倍数设置的较大。基于2021年这一年内的温度数据,在进行压缩时,可以将12月份的压缩倍数设置为10倍,将6月份的压缩倍数设置为50倍,将1月份的压缩倍数设置为100倍等。因此,可以得到分段压缩数据,每一分段压缩数据对应一个时间界限。例如第一段压缩数据的时间界限为1月1日零点至1月31日24点;第二段压缩数据的时间界限为2月1日零点至2月28日24点等。
其中,查询时间段表示查询时间范围,在确定每一分段压缩数据的时间界限后,可以对查询时间段进行划分,得到多个子查询时间段。例如,当用户输入的查询时间段为2月15日至4月5日,则可以根据每一分段压缩数据对应的时间界限确定子查询时间段,如第一子查询时间段2月15日至2月28日;第二子查询时间段3月1日至3月31日;第三子查询时间段4月1日至4月5日。
步骤S202、针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述统计信息确定所述子查询时间段对应的恢复点数,根据所述压缩数据段确定每一恢复数据点对应的数据值;所述统计信息用于表示原始数据和压缩数据的数据特征。
在确定子查询时间段后,可以根据子查询时间段获取对应的压缩数据段,以及该压缩数据段对应的统计信息。其中,统计信息可以为反映原始数据和压缩数据的数据特征。例如,统计信息可以为压缩倍数,采样信息等,基于统计信息可以反映原始数据的数据特征,以及由原始数据得到压缩数据时的特点。基于统计信息可以确定每一子查询时间段对应的恢复点数。在确定恢复点数后,基于压缩数据段中的保留数据可以确定每个恢复点对应的数据值,具体的,可以基于线性插值的方法或与压缩方法对应的恢复方法确定每一恢复点对应的数据值。
步骤S203、将所有子查询时间段对应的数据值进行拼接,得到与所述查询时间段对应的恢复数据。
在确定每一子查询时间段对应的数据值后,可以按照各个子查询时间段的时间顺序将对应的数据值进行拼接,最终得到与查询时间段对应的恢复数据。
本申请实施例提供的时序数据范围查询方法通过接收用户输入的查询时间段,并按照每一分段压缩数据的时间界限将查询时间段划分为多个子查询时间段,并针对每一子查询时间段进行数据恢复,通过子查询时间段对应的压缩数据段和统计信息确定该子查询时间段对应的恢复点数以及每一恢复点数对应的数据值,最终将各个子查询时间段的数据值进行拼接,得到恢复数据,通过将压缩数据以及对应的统计数据分段存储,并基于统计数据确定恢复点数,能够精确的得到恢复数据,提高了数据恢复的准确性。
此外,本申请的方法由于压缩数据为分段数据,因此是针对每个分段数据分别进行恢复,因此可以实现同时对不同压缩倍数的数据进行查询。另外,上述时序数据范围查询方法通过对查询范围和数据范围的每个交叠段进行精细恢复,因此支持任意时间范围的数据点的查询。
下面对确定恢复数据的各个过程进行详细说明。
图3为本发明提供的一种图2中步骤S202中获取包含所述子查询时间段的压缩数据段的流程示意图。
可选的,获取包含所述子查询时间段的压缩数据段,包括:
步骤S301、获取所述子查询时间段的起始时间和结束时间。
步骤S302、根据所述起始时间、结束时间和所述对应的压缩数据段的时间界限确定所述压缩数据段的时间范围与所述子查询时间段的时间范围的交叠情况。
步骤S303、根据所述交叠情况,确定获取的压缩数据段中的保留数据。
其中,在获取与子查询时间段对应的压缩数据段时,可以确定子查询时间段的起始时间和结束时间,根据起始时间、结束时间以及每一压缩数据段的时间界限来确定与该子查询时间段存在交叠的压缩数据段,并得到交叠情况,最后基于交叠情况确定获取的保留数据。
可选的,根据所述交叠情况,确定获取的压缩数据段中的保留数据,包括:
当所述压缩数据段的时间范围与所述子查询时间段的时间范围全部交叠时,获取所述压缩数据段中的所有保留数据;或者,
当所述子查询时间段的时间范围与所述压缩数据段的时间范围部分交叠时,从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据。
例如,当第一子查询时间段为2月15日至2月28日时,对应的压缩数据段的时间界限为2月1日至2月28日,则交叠情况为部分交叠,仅从压缩数据段中获取交叠部分的保留数据即可。当第二字查询时间段为3月1日至3月31日时,对应的压缩数据段的时间界限为3月1日至3月31日,则可以确定交叠情况为全部交叠,则可以从该压缩数据段中获取所有保留数据。其中,保留数据是指将原始数据进行压缩处理后保留的数据。
此外,对于每一压缩数据段由于数据数量较多,还可以将每一压缩数据段划分为多个数据块,例如将2月份的压缩数据划分为四个数据块,将2月1日至2月7日的数据存储在该数据段中的第一数据块;将2月8日至2月14日的数据存储在该数据段中的第二数据块;将2月15日至2月22日的数据存储在该数据段中的第三数据块;以及将2月23日至2月28日的数据存储在该数据段中的第四数据块。在确定第一子查询时间段的保留数据时,可以先获取第一查询时间段的最大值和最小值,以及每一数据块的时间界限,判断最大值和最小值分别所属的时间界限,得到最终的保留数据。
可选的,所述统计信息还包括时间间隔的和、时间间隔的平均值以及时间间隔的平方和;从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据,包括:
当所述压缩数据段中不存在与所述子查询时间段对应的保留数据时,判断所述压缩数据段对应的压缩倍数是否大于1;
若所述压缩倍数大于1,则根据所述时间间隔的和以及时间间隔的平方和确定时间间隔的平均值和方差,并根据时间间隔的平均值和方差确定第一数值;所述第一数值为时间间隔的平均值与三倍标准差之和;
若所述子查询时间段对应的时间长度大于所述第一数值,则将与所述子查询时间段距离最近的预设数量的时间点对应的数据值作为该子查询时间段的保留数据。
其中,在得到保留数据后,还可以对得到的保留数据进行检验,若在某一时间段内不存在保留数据,则可以通过下述方法进行判断。
例如,当查询时间为2月7日晚11时至2月25日,需要从2月1日至2月7日对应的第一数据块中获取2月7日晚11时至12时的保留数据,若获取的保留数据中该一小时不存在保留数据,则需要判断该时间段对应的原始数据是否不存在数据点。由于原始数据中相邻数据之间的时间间隔不同,因此,需要基于该压缩数据段对应的原始数据的时间间隔信息来确定。
具体的,可以认为每一压缩数据段对应的原始数据的时间间隔服从正态分布,并基于3sigma准则(拉依达准则)判断不存在保留数据的子查询时间段是否真实存在原始数据。
在判断之前,先获取不存在保留数据的子查询时间段所对应的压缩数据段的压缩倍数,当压缩倍数大于1时,表示该压缩数据段是经过压缩后的数据。可以继续判断不存在保留数据的子查询时间段对应的时间长度与第一数值之间的关系,其中第一数值表示时间间隔的均值与3倍标准差之和。当压缩倍数等于1时,则表示该数据段未经过压缩,无需进行数据恢复,直接返回该数据段即可。
其中,判断原理为:原始数据的时间间隔符合正态分布,实际的时间间隔小于第一数值。因此,当子查询时间段对应的时间长度小于第一数值时,则表示该时间长度属于一个采样间隔,该时间长度内没有保留点是正常情况。当子查询时间段对应的时间长度大于第一数值时,则表示该时间长度大于一个采样间隔,该采样间隔内需要有保留点。当子查询时间段对应的数据长度小于等于第一数值时,表示该采样间隔内无需增加保留点。其中,标准差可以根据时间间隔的和以及时间间隔的平方和来计算得到。
具体的,在确定子查询时间段对应的时间长度大于第一数值时,可以将与子查询时间段距离最近的两个时间点对应的数据值作为该子查询时间段的保留数据。例如,对于2月7日晚11时至12时,若不存在保留数据,但经过计算该时间长度大于第一数值时,若距离11点最近的保留数据为晚9点和2月8日凌晨1点,则将晚9点的保留数据和2月8日凌晨1点的保留数据分别作为2月7日晚11时和12时的保留数据。
通过上述的判断方法可以准确确定不存在保留数据的子查询时间段是否也不存在原始数据,避免未将该子查询时间段的数据恢复。
下面对确定恢复点数的过程进行详细说明。
图4为本发明提供的一种图2中步骤S202中根据所述统计信息确定所述子查询时间段对应的恢复点数的流程示意图。
可选的,所述统计信息包括:压缩倍数和采样信息;根据所述统计信息确定所述子查询时间段对应的恢复点数,包括:
步骤S401、确定所述压缩数据段包含的数据个数,根据所述压缩倍数和所述压缩数据段包含的数据个数确定所述压缩数据段对应的恢复点数;
步骤S402、根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;所述采样信息用于反映原始数据的时间间隔的分布情况。
其中,当在确定子查询时间段对应的恢复点数时,可以确定子查询时间段对应的压缩数据段的恢复点数。具体的,可以先确定压缩数据段包含的数据个数,再根据压缩数据段对应的压缩倍数和该压缩数据段包含的数据个数确定压缩数据段的恢复点数。其中,压缩数据段的恢复点数为压缩数据段包含的数据个数与压缩倍数的乘积。例如,压缩数据段包含的数据个数为1万个,压缩倍数为30倍,则该压缩数据段对应的恢复点数为30万个。
在得到压缩数据段对应的恢复点数后,可以将压缩数据段对应的恢复点数和采样信息确定子查询时间段对应的恢复点数。其中,采样信息是指原始数据中时间间隔的分布情况,具体的,采样信息可以为均匀采样和非均匀采样。均匀采样是指在压缩数据段对应的原始数据中任一相邻两个原始数据的时间间隔均相同;非均匀采样是指压缩数据段对应的原始数据中相邻两个原始数据的时间间隔不相同。对于不同的采样信息可以基于不同的方法确定该子查询时间段对应的恢复点数。
可选的,根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数,包括:
当所述采样信息为均匀采样时,基于时间比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;或者,
当所述采样信息为非均匀采样时,基于点比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数。
其中,当采样信息为均匀采样时,可以基于时间比例填充方法确定子查询时间段对应的恢复点数。其中,时间比例是指:将子查询时间段对应的时间长度与整个压缩数据段对应的时间长度的比值再与整个压缩数据段对应的恢复点数相乘,得到子查询时间段对应的恢复点数。例如,当子查询时间段为2月8日至2月28日,压缩数据段为2月1日至2月28日,压缩数据段对应的恢复点数为30万个,则子查询时间段对应的恢复点数为3/4*30万=22.5万个。
相反的,当采样信息为非均匀采样时,可以基于点比例填充的方法确定子查询时间段对应的恢复点数,该填充方法可以确定压缩数据段的重要数据点的个数。其中,点比例填充是指:将子查询时间段对应的数据个数和整个压缩数据段对应的数据个数的比值再与整个压缩数据段对应的恢复点数相乘,得到子查询时间段对应的恢复点数。例如,当子查询时间段对应的数据个数为7000个,整个压缩数据段对应的数据个数为1万,压缩数据段对应的恢复点数为30万个,则子查询时间段对应的恢复点数为:0.7*30万=21万个。
其中,根据不同的采样信息和压缩倍数确定子查询时间段对应的恢复点数,能够实现尽可能的得到与原始数据个数及数值相同的恢复数据,提高获得的恢复数据的准确性。
图5为本发明提供的一种时序数据范围查询装置的结构示意图。如图5所示,本实施例的时序数据范围查询装置50可以包括:
划分模块501,用于接收用户输入的查询时间段,根据每一分段压缩数据的时间界限将所述查询时间段划分为多个子查询时间段;所述查询时间段表示查询时间范围;
确定模块502,用于针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述统计信息确定所述子查询时间段对应的恢复点数,根据所述压缩数据段确定每一恢复数据点对应的数据值;所述统计信息用于表示原始数据和压缩数据的数据特征;
拼接模块503,用于将所有子查询时间段对应的数据值进行拼接,得到与所述查询时间段对应的恢复数据。
可选的,所述统计信息包括:压缩倍数和采样信息;所述确定模块502在根据所述统计信息确定所述子查询时间段对应的恢复点数时,具体用于:
确定所述压缩数据段包含的数据个数,根据所述压缩倍数和所述压缩数据段包含的数据个数确定所述压缩数据段对应的恢复点数;
根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;所述采样信息用于反映原始数据的时间间隔的分布情况。
可选的,所述确定模块502在根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数时,具体用于:
当所述采样信息为均匀采样时,基于时间比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;或者,
当所述采样信息为非均匀采样时,基于点比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数。
可选的,所述确定模块502在获取包含所述子查询时间段的压缩数据段时,具体用于:
获取所述子查询时间段的起始时间和结束时间;
根据所述起始时间、结束时间和所述对应的压缩数据段的时间界限确定所述压缩数据段的时间范围与所述子查询时间段的时间范围的交叠情况;
根据所述交叠情况,确定获取的压缩数据段中的保留数据。
可选的,所述确定模块502在根据所述交叠情况,确定获取的压缩数据段中的保留数据时,具体用于:
当所述压缩数据段的时间范围与所述子查询时间段的时间范围全部交叠时,获取所述压缩数据段中的所有保留数据;或者,
当所述子查询时间段的时间范围与所述压缩数据段的时间范围部分交叠时,从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据。
可选的,所述统计信息还包括时间间隔的和、时间间隔的平均值以及时间间隔的平方和;所述确定模块502从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据时,具体用于:
当所述压缩数据段中不存在与所述子查询时间段对应的保留数据时,判断所述压缩数据段对应的压缩倍数是否大于1;
若所述压缩倍数大于1,则根据所述时间间隔的和以及时间间隔的平方和确定时间间隔的平均值和方差,并根据时间间隔的平均值和方差确定第一数值;所述第一数值为时间间隔的平均值与三倍标准差之和;
若所述子查询时间段对应的时间长度大于所述第一数值,则将与所述子查询时间段距离最近的预设数量的时间点对应的数据值作为该子查询时间段的保留数据。
本发明提供的时序数据范围查询装置,可以实现上述如图2至图5所示的实施例的时序数据范围查询方法,其实现原理和技术效果类似,此处不再赘述。
图6为本发明提供的一种时序数据范围查询设备的硬件结构示意图。如图6所示,本实施例提供的时序数据范围查询设备60包括:至少一个处理器601和存储器602。其中,处理器601、存储器602通过总线603连接。
在具体实现过程中,至少一个处理器601执行所述存储器602存储的计算机执行指令,使得至少一个处理器601执行上述方法实施例中的时序数据范围查询方法。
处理器601的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述的图6所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例的时序数据范围查询方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
本申请一个实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如本申请图2至图5所对应的实施例中任意实施例提供的时序数据范围查询方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (9)
1.一种时序数据范围查询方法,其特征在于,所述方法包括:
接收用户输入的查询时间段,根据每一分段压缩数据的时间界限将所述查询时间段划分为多个子查询时间段;所述查询时间段表示查询时间范围;
针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述统计信息确定所述子查询时间段对应的恢复点数,根据所述压缩数据段确定每一恢复数据点对应的数据值;所述统计信息用于表示原始数据和压缩数据的数据特征;所述恢复点数表示压缩数据段包含的数据个数与压缩倍数的乘积;
将所有子查询时间段对应的数据值进行拼接,得到与所述查询时间段对应的恢复数据。
2.根据权利要求1所述的方法,其特征在于,所述统计信息包括:压缩倍数和采样信息;根据所述统计信息确定所述子查询时间段对应的恢复点数,包括:
确定所述压缩数据段包含的数据个数,根据所述压缩倍数和所述压缩数据段包含的数据个数确定所述压缩数据段对应的恢复点数;
根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;所述采样信息用于反映原始数据的时间间隔的分布情况。
3.根据权利要求2所述的方法,其特征在于,根据所述采样信息和所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数,包括:
当所述采样信息为均匀采样时,基于时间比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数;或者,
当所述采样信息为非均匀采样时,基于点比例填充方法根据所述压缩数据段对应的恢复点数确定所述子查询时间段对应的恢复点数。
4.根据权利要求1-3任一项所述的方法,其特征在于,获取包含所述子查询时间段的压缩数据段,包括:
获取所述子查询时间段的起始时间和结束时间;
根据所述起始时间、结束时间和所述对应的压缩数据段的时间界限确定所述压缩数据段的时间范围与所述子查询时间段的时间范围的交叠情况;
根据所述交叠情况,确定获取的压缩数据段中的保留数据。
5.根据权利要求4所述的方法,其特征在于,根据所述交叠情况,确定获取的压缩数据段中的保留数据,包括:
当所述压缩数据段的时间范围与所述子查询时间段的时间范围全部交叠时,获取所述压缩数据段中的所有保留数据;或者,
当所述子查询时间段的时间范围与所述压缩数据段的时间范围部分交叠时,从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据。
6.根据权利要求5所述的方法,其特征在于,所述统计信息还包括时间间隔的和、时间间隔的平均值以及时间间隔的平方和;从所述压缩数据段中筛选出与所述子查询时间段对应的保留数据,包括:
当所述压缩数据段中不存在与所述子查询时间段对应的保留数据时,判断所述压缩数据段对应的压缩倍数是否大于1;
若所述压缩倍数大于1,则根据所述时间间隔的和以及时间间隔的平方和确定时间间隔的平均值和方差,并根据时间间隔的平均值和方差确定第一数值;所述第一数值为时间间隔的平均值与三倍标准差之和;
若所述子查询时间段对应的时间长度大于所述第一数值,则将与所述子查询时间段距离最近的预设数量的时间点对应的数据值作为该子查询时间段的保留数据。
7.一种时序数据范围查询装置,其特征在于,所述装置包括:
划分模块,用于接收用户输入的查询时间段,根据每一分段压缩数据的时间界限将所述查询时间段划分为多个子查询时间段;所述查询时间段表示查询时间范围;
确定模块,用于针对每一子查询时间段,获取包含所述子查询时间段的压缩数据段,以及每一压缩数据段对应的统计信息,根据所述统计信息确定所述子查询时间段对应的恢复点数,根据所述压缩数据段确定每一恢复数据点对应的数据值;所述统计信息用于表示原始数据和压缩数据的数据特征;所述恢复点数表示压缩数据段包含的数据个数与压缩倍数的乘积;
拼接模块,用于将所有子查询时间段对应的数据值进行拼接,得到与所述查询时间段对应的恢复数据。
8.一种时序数据范围查询设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-6任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210113950X | 2022-01-30 | ||
CN202210113950 | 2022-01-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114547144A CN114547144A (zh) | 2022-05-27 |
CN114547144B true CN114547144B (zh) | 2023-03-24 |
Family
ID=81674932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210140941.XA Active CN114547144B (zh) | 2022-01-30 | 2022-02-16 | 时序数据范围查询方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114547144B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046183A (zh) * | 2019-04-16 | 2019-07-23 | 北京易沃特科技有限公司 | 一种时序数据聚合检索方法、设备及介质 |
CN110162542A (zh) * | 2019-04-19 | 2019-08-23 | 平安科技(深圳)有限公司 | 基于cassandra的数据翻页方法、装置、计算机设备和存储介质 |
CN110689953A (zh) * | 2019-09-03 | 2020-01-14 | 东软医疗系统股份有限公司 | 数据存储方法及装置、数据查找方法及装置、电子设备 |
CN111291037A (zh) * | 2018-11-22 | 2020-06-16 | 中国移动通信集团重庆有限公司 | 一种数据存储和查询方法、装置、设备及计算机存储介质 |
CN112269769A (zh) * | 2020-11-18 | 2021-01-26 | 远景智能国际私人投资有限公司 | 数据压缩方法、装置、计算机设备及存储介质 |
CN112332853A (zh) * | 2020-11-02 | 2021-02-05 | 重庆邮电大学 | 一种基于电力系统的时序数据压缩与恢复方法 |
CN112528097A (zh) * | 2020-12-17 | 2021-03-19 | 浙江全世科技有限公司 | 一种在线设备监测数据的历史趋势查询方法及装置 |
CN113659993A (zh) * | 2021-08-17 | 2021-11-16 | 深圳市康立生物医疗有限公司 | 免疫批次数据处理方法、装置、终端及可读存储介质 |
CN113761013A (zh) * | 2020-06-05 | 2021-12-07 | 杭州海康威视数字技术股份有限公司 | 时序数据预统计方法、装置及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10248681B2 (en) * | 2014-07-08 | 2019-04-02 | Sap Se | Faster access for compressed time series data: the block index |
-
2022
- 2022-02-16 CN CN202210140941.XA patent/CN114547144B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291037A (zh) * | 2018-11-22 | 2020-06-16 | 中国移动通信集团重庆有限公司 | 一种数据存储和查询方法、装置、设备及计算机存储介质 |
CN110046183A (zh) * | 2019-04-16 | 2019-07-23 | 北京易沃特科技有限公司 | 一种时序数据聚合检索方法、设备及介质 |
CN110162542A (zh) * | 2019-04-19 | 2019-08-23 | 平安科技(深圳)有限公司 | 基于cassandra的数据翻页方法、装置、计算机设备和存储介质 |
CN110689953A (zh) * | 2019-09-03 | 2020-01-14 | 东软医疗系统股份有限公司 | 数据存储方法及装置、数据查找方法及装置、电子设备 |
CN113761013A (zh) * | 2020-06-05 | 2021-12-07 | 杭州海康威视数字技术股份有限公司 | 时序数据预统计方法、装置及存储介质 |
CN112332853A (zh) * | 2020-11-02 | 2021-02-05 | 重庆邮电大学 | 一种基于电力系统的时序数据压缩与恢复方法 |
CN112269769A (zh) * | 2020-11-18 | 2021-01-26 | 远景智能国际私人投资有限公司 | 数据压缩方法、装置、计算机设备及存储介质 |
CN112528097A (zh) * | 2020-12-17 | 2021-03-19 | 浙江全世科技有限公司 | 一种在线设备监测数据的历史趋势查询方法及装置 |
CN113659993A (zh) * | 2021-08-17 | 2021-11-16 | 深圳市康立生物医疗有限公司 | 免疫批次数据处理方法、装置、终端及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
"物联网大数据场景下的分布式哈希表适用条件分析";安彦哲 等;《计算机学报》;20210831;第44卷(第8期);第1679-1695页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114547144A (zh) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108388509B (zh) | 一种软件测试方法、计算机可读存储介质及终端设备 | |
CN108093275B (zh) | 一种数据处理方法及装置 | |
CN114547144B (zh) | 时序数据范围查询方法、装置及设备 | |
CN107704340B (zh) | Pe镜像文件生成方法、装置及电子设备 | |
CN114328280A (zh) | 一种基于Flash的日志存取方法、装置、存储介质及终端 | |
CN115630100A (zh) | 单元和多元时序数据的混合处理方法、装置及计算机设备 | |
CN115080292A (zh) | 一种异常检测的方法及装置 | |
US11532150B1 (en) | Method for determining a histogram of variable sample rate waveforms | |
CN114996240A (zh) | 数据表校验方法、装置、设备、存储介质及程序 | |
CN115268794A (zh) | 数据存储方法及相关装置 | |
CN110674214B (zh) | 大数据同步方法、装置、计算机设备及存储介质 | |
CN112445835B (zh) | 一种业务数据处理方法及装置、网管服务器、存储介质 | |
CN111382068B (zh) | 一种大批量数据的层次测试方法及装置 | |
CN112835908B (zh) | 一种时序数据存储方法、系统、存储设备和存储介质 | |
CN112256462A (zh) | NAND Flash存储器的寿命预估方法、装置及介质 | |
CN111352984A (zh) | 数据分发方法、设备和存储介质 | |
CN116108022B (zh) | 一种电能表数据存储方法、装置、终端及存储介质 | |
CN113689207B (zh) | 单价形式的切换方法、装置及电子设备 | |
CN115688494B (zh) | 数据处理方法、装置、电子设备及计算机可读取存储介质 | |
CN113076237B (zh) | 一种内存性能测试方法、系统及计算机可读存储介质 | |
CN111309623B (zh) | 一种坐标类数据分类测试方法及装置 | |
CN118132562A (zh) | 数据关联方法、装置、存储介质以及终端 | |
CN110569217A (zh) | 流式文件系统中的索引数据更新方法、装置 | |
CN116662269A (zh) | 监控数据的存储方法、装置、设备及存储介质 | |
CN114429114A (zh) | 一种自动解析jmeter脚本文件生成报表的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |