CN113360551A - 一种靶场中时序数据的存储与快速统计方法及系统 - Google Patents

一种靶场中时序数据的存储与快速统计方法及系统 Download PDF

Info

Publication number
CN113360551A
CN113360551A CN202110916472.1A CN202110916472A CN113360551A CN 113360551 A CN113360551 A CN 113360551A CN 202110916472 A CN202110916472 A CN 202110916472A CN 113360551 A CN113360551 A CN 113360551A
Authority
CN
China
Prior art keywords
query
data
file
index
value
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.)
Granted
Application number
CN202110916472.1A
Other languages
English (en)
Other versions
CN113360551B (zh
Inventor
殷庆荣
卢成远
谢峥
高庆官
唐海均
王国伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Cyber Peace Technology Co Ltd
Original Assignee
Nanjing Cyber Peace Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Cyber Peace Technology Co Ltd filed Critical Nanjing Cyber Peace Technology Co Ltd
Priority to CN202110916472.1A priority Critical patent/CN113360551B/zh
Publication of CN113360551A publication Critical patent/CN113360551A/zh
Application granted granted Critical
Publication of CN113360551B publication Critical patent/CN113360551B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2474Sequence data queries, e.g. querying versioned data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种靶场中时序数据的存储与快速统计方法及系统。本发明中自定义了时序数据的矩阵式索引块,根据时间戳和靶场事件数据值的最值进行均匀分段,每个索引块代表一个指定范围的时序数据,并通过元数据记录物理存储和局部数据范围的统计信息;在接收到统计查询需求时,首先根据查询条件确定需要被查询的所有索引块,然后根据每个被查询的索引块的状态计算实际需要执行的物理查询计划,最后综合查询条件对应所有索引块的结果,完成快速统计。本发明通过建立自定义分段索引,可以快速定位需要查询的文件范围,从而减少磁盘的交互次数;通过在索引建立阶段记录必要的统计数据,减少不必要的磁盘数据查询。

Description

一种靶场中时序数据的存储与快速统计方法及系统
技术领域
本发明涉及一种靶场中时序数据的存储与快速统计方法及系统,属于网络安全、计算机软件领域。
背景技术
网络靶场是通过虚拟化技术,模拟仿真出真实网络空间攻防作战环境,能够支撑作战能力研究和武器装备验证的试验平台。靶场实际运行过程中随着用户的使用,系统会产生很多基于时间戳的时序数据,对该类数据的分析可以更好的指导靶场研究工作。
系统产生的时序数据经过预处理后,一般包含两个维度,形式如[t1, v1],[t2,v2],[t3, v3]…。其中t1, t2, t3为单调递增的时间序列,v1, v2, v3代表了靶场中某个事件发生时的参考值(如记录物理集群在每个时间点CPU使用率、内存占用率等)。考虑到事件发生的随机性,该值的概率分布呈现高斯特性,即v的值在某个指定的范围内([vmin, vmax])完全随机。
针对此类数据的存储与统计,现有流程如图1所示,主要包括:1、将该类数据存入关系型数据库(如mysql);2、考虑到数据的时序特性,针对时间戳t值建立索引,方便针对时间的数值筛选;3、系统通过数据查询的方式使用此类数据,一般的查询条件为t1<=t<=t2,v1<=v<=v2,即查询时间戳t和v值分别在某个区间内的数据;4、首先利用时间戳索引,过滤出时间范围在[t1, t2]之间的数据集合S;因为v值的无序性,该数据集合S包含很多v值不满足v1<=v<=v2的数据;假设v的范围为[vmin, vmax],考虑到数据分布的随机特性,其中有用的数据仅有(v2-v1)/(vmax-vmin);5、通过逐条遍历的方式,将步骤4中v值不满足条件的数据丢弃,从而得到所有符合条件的数据集合;6、对步骤5中数据集合的每个v值进行累加求和、求均值等统计计算,从而得到最终输出结果。
现有方案存在如下问题:1、无法针对两个维度同时建立索引,因为在数据量较大的情况下,此类联合索引会超过内存的存储上限;2、只支持按时间戳维度顺序内容检索,无法针对数据的另一个维度进行快速统计分析;3、两个维度数据不相关的情况下,对两个维度同时进行约束查询,只能先按时间戳维度做数据筛选,然后再对另一个维度筛选,此过程需要从磁盘读取大量无用数据,检索效率低。
发明内容
发明目的:针对上述现有技术存在的问题,本发明目的在于提供一种靶场中时序数据的存储与快速统计方法及系统,优化数据的索引结构,提高查询统计效率。
技术方案:为实现上述发明目的,本发明采用如下技术方案:
一种靶场中时序数据的存储与快速统计方法,所述方法包括如下步骤:
将时序数据分别按照时间戳和靶场事件数据值进行排序,得到第一数据集合和第二数据集合;在排序过程中获取时间戳的最大值和最小值,以及靶场事件数据值的最大值和最小值;所述时序数据至少包括记录靶场中某一事件发生时的时间戳和相应的靶场事件数据值;
将时间戳的最值之间以及靶场事件数据值的最值之间分别均匀分段,生成矩阵式索引块,每个索引块代表指定数值范围的时间戳和靶场事件数据值;索引块元数据包括该索引块对应的时间戳和靶场事件数据值的最值、该索引块覆盖的所有靶场事件数据值的累加和、覆盖的实际元素个数、索引块覆盖的元素中时间戳的最小值在实际存储文件中的偏移地址以及靶场事件数据值的最小值在实际存储文件中的偏移地址;
将第一数据集合逐条写入磁盘,得到第一文件;在数据写入过程中更新对应的索引块元数据,包括更新靶场事件数据的累加和、实际元素个数、时间戳的最小值在实际存储文件中的偏移地址;将第二数据集合逐条写入磁盘,得到第二文件,在数据写入过程中更新对应索引块元数据的靶场事件数据值的最小值在实际存储文件中的偏移地址;
在接收到统计查询需求时,首先根据查询条件确定需要被查询的所有索引块,然后根据每个被查询的索引块的状态计算实际需要执行的物理查询计划,对于索引块无实际的物理存储数据或所有数据均符合查询条件的,不执行实际物理查询;对于索引块的部分数据符合查询条件,执行实际物理查询,最后综合查询条件对应所有索引块的结果,完成快速统计。
作为优选,在需要执行实际物理查询时,将对具有相同时间戳范围的索引块对应到查询第一文件,记为一次查询,将对具有相同靶场事件数据值范围的索引块对应到查询第二文件,记为一次查询;在覆盖所有需要实际物理查询的索引块的情况下,若查询第一文件的总次数小于查询第二文件的总次数,则从第一文件中执行实际物理查询,若查询第二文件的总次数小于查询第一文件的总次数,则从第二文件中执行实际物理查询。
作为优选,在需要执行实际物理查询时,以磁盘访问次数最小为原则确定最优执行计划:将对具有相同时间戳范围的索引块对应到查询第一文件,记为一次查询,将对具有相同靶场事件数据值范围的索引块对应到查询第二文件,记为一次查询,优先将对连续的索引块的查询对应到查询同一文件,选取查询文件总次数最少的且能覆盖所有需要实际物理查询的索引块的查询计划为最优执行计划。
作为优选,通过物理查询计划从第一文件或第二文件中查找符合查询条件的数据,记录累加值或个数,结合所有数据均符合查询条件的索引块对应的元数据记录的累加值或个数,得到最终统计结果。
在具体应用时,所述靶场事件数据值为从靶场中物理机或虚拟机上采集的可以量化存储的数据值,包括CPU使用率、内存占用率、进程号、磁盘IO或网卡数据流量等;所述时序数据中还可记录靶场事件数据值对应的物理机或虚拟机的标记信息(名称、IP地址等)和/或环境信息(进程号、端口号等具体业务应用场景收集的信息)。
在具体应用时,所述统计包括求和、求均值、统计满足查询约束条件的个数中的一种或多种。
基于相同的发明构思,本发明提供的一种靶场中时序数据的存储与快速统计系统,包括:
排序模块,用于将时序数据分别按照时间戳和靶场事件数据值进行排序,得到第一数据集合和第二数据集合;在排序过程中获取时间戳的最大值和最小值,以靶场事件数据值的最大值和最小值;所述时序数据至少包括记录靶场中某一事件发生时的时间戳和相应的靶场事件数据值;
索引块创建模块,用于将时间戳的最值之间以及靶场事件数据值的最值之间分别均匀分段,生成矩阵式索引块,每个索引块代表指定数值范围的时间戳和靶场事件数据值;索引块元数据包括该索引块对应的时间戳和靶场事件数据值的最值、该索引块覆盖的所有靶场事件数据值的累加和、覆盖的实际元素个数、索引块覆盖的元素中时间戳的最小值在实际存储文件中的偏移地址以及靶场事件数据值的最小值在实际存储文件中的偏移地址;
文件存储模块,用于将第一数据集合逐条写入磁盘,得到第一文件;在数据写入过程中更新对应的索引块元数据,包括更新靶场事件数据的累加和、实际元素个数、时间戳的最小值在实际存储文件中的偏移地址;将第二数据集合逐条写入磁盘,得到第二文件,在数据写入过程中更新对应索引块元数据的靶场事件数据值的最小值在实际存储文件中的偏移地址;
以及统计模块,用于在接收到统计查询需求时,首先根据查询条件确定需要被查询的所有索引块,然后根据每个被查询的索引块的状态计算实际需要执行的物理查询计划,对于索引块无实际的物理存储数据或所有数据均符合查询条件的,不执行实际物理查询;对于索引块的部分数据符合查询条件,执行实际物理查询,最后综合查询条件对应所有索引块的结果,完成快速统计。
基于相同的发明构思,本发明提供的一种计算机系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现所述的靶场中时序数据的存储与快速统计方法。
有益效果:与现有技术相比,本发明具有如下优点:1、本发明不针对具体的存储内容建立索引,针对每一段物理存储文件建立索引块数据,该索引数据只包含实际物理数据的最值,文件偏移地址以及必要的统计数据,数据量很小。2、本发明可根据查询约束条件,自动在不同的数据维度上寻找最优统计方案。3、本发明可根据查询内容,采用不同的物理查询计划,减少了不需要的磁盘读写,大大提高查询统计效率。
附图说明
图1为现有的靶场中时序数据的存储与查询流程图。
图2为本发明实施例的总体流程图。
图3为本发明实施例中针对时间戳构建索引的流程图。
图4为本发明实施例中针对靶场事件数据的存储流程图。
图5为本发明实施例中的矩阵式索引块示意图。
图6为本发明实施例中数据查询统计的流程图。
具体实施方式
下面将结合附图和具体实施例,对本发明的技术方案进行清楚、完整的描述。
如图2所示,本发明实施例公开的一种基于文件的靶场中时序数据的存储与快速统计方法,首先将时序数据分别按照时间戳t和靶场事件数据值v进行排序,得到第一数据集合S1、第二数据集合S2,在排序过程中获取最大值和最小值;并将时间戳的最值之间以及靶场事件数据值的最值之间分别均匀分段,生成矩阵式索引块,每个索引块代表指定数值范围的时间戳和靶场事件数据值; 然后将S1逐条写入磁盘,得到第一文件F1,将S2逐条写入磁盘,得到第二文件F2,在数据写入过程中更新对应索引块元数据;在接收到统计查询需求时,根据查询条件确定需要被查询的所有索引块,根据索引块的状态计算实际需要执行的物理查询计划,综合查询条件对应所有索引块的结果,完成快速统计。本发明通过建立自定义分段索引,可以快速定位需要查询的文件范围,从而减少磁盘的交互次数;通过在索引建立阶段记录必要的统计数据,减少不必要的磁盘数据查询;对两个维度的分别压缩存储,通过索引得到磁盘查询执行计划,避免过多无效数据的写入。
下面分别从针对t值构建索引块、v值辅助数据存储以及实际的数据查询过程三个方面,对本发明实施例详细实现过程进行说明。
针对t值构建索引的过程如图3所示,主要包括:
1、将数据按时间戳t进行排序,排序后的数据集合记为S1。
2、在排序过程中,获取t的最大值tmax、最小值tmin,以及v的最大值vmax、最小值vmin。
3、将[tmin, tmax]均匀分为m份,[vmin, vmax]均为分为n份;m、n的取值可以根据实际情况进行配置。
4、生成m*n的矩阵式索引块,矩阵式索引块的表示形式如图5所示,每一块代表某个指定数值范围的t和v值。
5、将S1中的数据逐条写入磁盘,该文件记为F1。数据写入的时候需要更新对应的索引块元数据。索引块的寻找方式如下:
某数据(tx,vx),满足条件t2<=tx<t3, v2<=vx<v3,则该数据的索引块为图4中[t2,t3],[v2, v3]对应的矩阵单元;
索引块元数据包括该索引块对应的t和v的最值(最大、最小),该索引块覆盖的所有v值的累加和,覆盖的实际元素个数,以及该索引块覆盖的t的最小值在实际存储文件中的偏移地址、v的最小值在实际存储文件中的偏移地址。
索引块元数据的实际更新内容为:更新v的累加值,t的最小值在实际存储文件F1中的偏移地址,索引块对应的实际元素个数。
针对v值的辅助数据存储过程如图4所示,主要包括:
1、将数据按v值进行排序,排序后的数据集合记为S2。
2、复用t值构建的索引块。
3、将S2中的数据逐条写入磁盘,该文件记为F2。数据写入的时候需要更新对应的索引块元数据。索引块的寻找方式和t相同,同时更新对应的索引块元数据。
索引块元数据的实际更新内容为:更新v的最小值在实际存储文件F2中的偏移地址。
数据的查询统计过程如图6所示,主要包括:
1、根据查询条件获取索引块的索引边界。
如查询的t值范围为ta<t<tb,v值范围为va<v<vb,在索引块中寻找到最接近且小于ta的t值,假设该值对应图5中的t1;在索引块中寻找到最接近且大于tb的t值,假设该值对应图5中的t5;在索引块中寻找到最接近且小于va的v值,假设该值对应图5中的v2;在索引块中寻找到最接近且大于vb的v值,假设该值对应图5中的v6。
2、遍历[t1, t5], [v2, v6]之间的所有索引块,确定该索引块的状态。索引块的状态分为三种:
a)该索引块无实际的物理存储数据,该类型的索引块不需要执行实际物理查询(对应图4中的X节点);
b)该索引块的所有数据均符合查询条件(ta<t<tb,va<v<vb),该类型的索引不需要执行实际物理查询,可以直接获取物理文件对应的v值累加和(对应图4中的圆形节点);
c)该索引块的部分数据符合查询条件(ta<t<tb,va<v<vb),该类型的索引需要查找对应的物理文件(对应图4中的三角形节点)。
3、根据步骤2中确定的索引块状态,计算实际需要执行的物理查询计划。查询计划决定步骤2中c类型的索引块对应的物理文件从F1或者F2中获取,执行计划的优化目标为读取所有c类型索引块对应的物理文件需要访问的磁盘次数较少。
将对具有相同t值范围的索引块对应到查询F1,记为一次磁盘访问操作,具有相同v值范围的索引块对应到查询F2,记为一次磁盘访问操作,选取查询文件总次数较少(即磁盘访问次数较少)的且能覆盖所有c类型索引块的查询计划为最终执行计划。如图5所示,即将表格中每一行、每一列对应一次磁盘访问操作,尽可能选择较少的行、列数,且能覆盖索引块对应的c类型索引块作为执行计划。例如将v2至v6间的行数据中的c类型索引块通过读取存储文件F2实现,或将t1至t6间的列数据中的c类型索引块通过读取存储文件F1实现。
为进一步优化磁盘访问操作次数,优先将对连续的索引块的查询对应到查询同一文件,选取查询文件总次数最少的且能覆盖所有c类型索引块的查询计划为最优执行计划。例如,图5对应的最优执行计划为读取[t1, t2], [t4, t5]对应的列数据,该列数据通过读取t值对应的存储文件F1实现;读取[v5, v6]对应的行数据,该行数据通过读取v值对应的存储文件F2实现。
4、读取到c类型索引块对应的物理文件后,逐个判断文件中的存储数据是否满足查询要求,即ta<t<tb,va<v<vb,对于满足查询要求的数据,记录其累加值A。
5、在步骤4的基础上,遍历所有b类型索引块,将每个b类型索引块对应的v的累加值累加到步骤4中的A值,该步骤中最终累加值记为B。
6、B即为查询需要的最终结果。
上述统计以求和为例,本发明同样适用于求均值、以及统计满足查询约束条件的个数等。
基于相同的发明构思,本发明实施例提供的一种靶场中时序数据的存储与快速统计系统,包括:排序模块,用于将时序数据分别按照时间戳和靶场事件数据值进行排序,得到第一数据集合和第二数据集合;在排序过程中获取时间戳的最大值和最小值,以及靶场事件数据值的最大值和最小值;索引块创建模块,用于将时间戳的最值之间以及靶场事件数据值的最值之间分别均匀分段,生成矩阵式索引块,每个索引块代表指定数值范围的时间戳和靶场事件数据值;文件存储模块,用于将第一数据集合逐条写入磁盘,得到第一文件;在数据写入过程中更新对应的索引块元数据,包括更新靶场事件数据的累加和、实际元素个数、时间戳的最小值在实际存储文件中的偏移地址;将第二数据集合逐条写入磁盘,得到第二文件,在数据写入过程中更新对应索引块元数据的靶场事件数据值的最小值在实际存储文件中的偏移地址;以及统计模块,用于在接收到统计查询需求时,首先根据查询条件确定需要被查询的所有索引块,然后根据每个被查询的索引块的状态计算实际需要执行的物理查询计划,对于索引块无实际的物理存储数据或所有数据均符合查询条件的,不执行实际物理查询;对于索引块的部分数据符合查询条件,执行实际物理查询,最后综合查询条件对应所有索引块的结果,完成快速统计。具体各模块的实施细节参见上述方法实施例,此次不再赘述。
基于相同的发明构思,本发明实施例提供的一种计算机系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现所述的靶场中时序数据的存储与快速统计方法。

Claims (10)

1.一种靶场中时序数据的存储与快速统计方法,其特征在于,所述方法包括如下步骤:
将时序数据分别按照时间戳和靶场事件数据值进行排序,得到第一数据集合和第二数据集合;在排序过程中获取时间戳的最大值和最小值,以及靶场事件数据值的最大值和最小值;所述时序数据至少包括记录靶场中某一事件发生时的时间戳和相应的靶场事件数据值;
将时间戳的最值之间以及靶场事件数据值的最值之间分别均匀分段,生成矩阵式索引块,每个索引块代表指定数值范围的时间戳和靶场事件数据值;索引块元数据包括该索引块对应的时间戳和靶场事件数据值的最值、该索引块覆盖的所有靶场事件数据值的累加和、覆盖的实际元素个数、索引块覆盖的元素中时间戳的最小值在实际存储文件中的偏移地址以及靶场事件数据值的最小值在实际存储文件中的偏移地址;
将第一数据集合逐条写入磁盘,得到第一文件;在数据写入过程中更新对应的索引块元数据,包括更新靶场事件数据的累加和、实际元素个数、时间戳的最小值在实际存储文件中的偏移地址;将第二数据集合逐条写入磁盘,得到第二文件,在数据写入过程中更新对应索引块元数据的靶场事件数据值的最小值在实际存储文件中的偏移地址;
在接收到统计查询需求时,首先根据查询条件确定需要被查询的所有索引块,然后根据每个被查询的索引块的状态计算实际需要执行的物理查询计划,对于索引块无实际的物理存储数据或所有数据均符合查询条件的,不执行实际物理查询;对于索引块的部分数据符合查询条件,执行实际物理查询,最后综合查询条件对应所有索引块的结果,完成快速统计。
2.根据权利要求1所述的靶场中时序数据的存储与快速统计方法,其特征在于,在需要执行实际物理查询时,将对具有相同时间戳范围的索引块对应到查询第一文件,记为一次查询,将对具有相同靶场事件数据值范围的索引块对应到查询第二文件,记为一次查询;在覆盖所有需要实际物理查询的索引块的情况下,若查询第一文件的总次数小于查询第二文件的总次数,则从第一文件中执行实际物理查询,若查询第二文件的总次数小于查询第一文件的总次数,则从第二文件中执行实际物理查询。
3.根据权利要求1所述的靶场中时序数据的存储与快速统计方法,其特征在于,在需要执行实际物理查询时,以磁盘访问次数最小为原则确定最优执行计划:将对具有相同时间戳范围的索引块对应到查询第一文件,记为一次查询,将对具有相同靶场事件数据值范围的索引块对应到查询第二文件,记为一次查询,优先将对连续的索引块的查询对应到查询同一文件,选取查询文件总次数最少的且能覆盖所有需要实际物理查询的索引块的查询计划为最优执行计划。
4.根据权利要求1所述的靶场中时序数据的存储与快速统计方法,其特征在于,通过物理查询计划从第一文件或第二文件中查找符合查询条件的数据,记录累加值或个数,结合所有数据均符合查询条件的索引块对应的元数据记录的累加值或个数,得到最终统计结果。
5.根据权利要求1所述的靶场中时序数据的存储与快速统计方法,其特征在于,所述靶场事件数据值为从靶场中物理机或虚拟机上采集的可以量化存储的数据值,包括CPU使用率、内存占用率、进程号、磁盘IO或网卡数据流量;所述时序数据中还记录靶场事件数据值对应的物理机或虚拟机的标记信息和/或环境信息。
6.根据权利要求1所述的靶场中时序数据的存储与快速统计方法,其特征在于,所述统计包括求和、求均值、统计满足查询约束条件的个数中的一种或多种。
7.一种靶场中时序数据的存储与快速统计系统,其特征在于,包括:
排序模块,用于将时序数据分别按照时间戳和靶场事件数据值进行排序,得到第一数据集合和第二数据集合;在排序过程中获取时间戳的最大值和最小值,以靶场事件数据值的最大值和最小值;所述时序数据至少包括记录靶场中某一事件发生时的时间戳和相应的靶场事件数据值;
索引块创建模块,用于将时间戳的最值之间以及靶场事件数据值的最值之间分别均匀分段,生成矩阵式索引块,每个索引块代表指定数值范围的时间戳和靶场事件数据值;索引块元数据包括该索引块对应的时间戳和靶场事件数据值的最值、该索引块覆盖的所有靶场事件数据值的累加和、覆盖的实际元素个数、索引块覆盖的元素中时间戳的最小值在实际存储文件中的偏移地址以及靶场事件数据值的最小值在实际存储文件中的偏移地址;
文件存储模块,用于将第一数据集合逐条写入磁盘,得到第一文件;在数据写入过程中更新对应的索引块元数据,包括更新靶场事件数据的累加和、实际元素个数、时间戳的最小值在实际存储文件中的偏移地址;将第二数据集合逐条写入磁盘,得到第二文件,在数据写入过程中更新对应索引块元数据的靶场事件数据值的最小值在实际存储文件中的偏移地址;
以及统计模块,用于在接收到统计查询需求时,首先根据查询条件确定需要被查询的所有索引块,然后根据每个被查询的索引块的状态计算实际需要执行的物理查询计划,对于索引块无实际的物理存储数据或所有数据均符合查询条件的,不执行实际物理查询;对于索引块的部分数据符合查询条件,执行实际物理查询,最后综合查询条件对应所有索引块的结果,完成快速统计。
8.根据权利要求7所述的靶场中时序数据的存储与快速统计系统,其特征在于,统计模块中,在需要执行实际物理查询时,将对具有相同时间戳范围的索引块对应到查询第一文件,记为一次查询,将对具有相同靶场事件数据值范围的索引块对应到查询第二文件,记为一次查询;在覆盖所有需要实际物理查询的索引块的情况下,若查询第一文件的总次数小于查询第二文件的总次数,则从第一文件中执行实际物理查询,若查询第二文件的总次数小于查询第一文件的总次数,则从第二文件中执行实际物理查询。
9.根据权利要求7所述的靶场中时序数据的存储与快速统计系统,其特征在于,统计模块中,在需要执行实际物理查询时,以磁盘访问次数最小为原则确定最优执行计划:将对具有相同时间戳范围的索引块对应到查询第一文件,记为一次查询,将对具有相同靶场事件数据值范围的索引块对应到查询第二文件,记为一次查询,优先将对连续的索引块的查询对应到查询同一文件,选取查询文件总次数最少的且能覆盖所有需要实际物理查询的索引块的查询计划为最优执行计划。
10.一种计算机系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被加载至处理器时实现根据权利要求1-6任一项所述的靶场中时序数据的存储与快速统计方法。
CN202110916472.1A 2021-08-11 2021-08-11 一种靶场中时序数据的存储与快速统计方法及系统 Active CN113360551B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110916472.1A CN113360551B (zh) 2021-08-11 2021-08-11 一种靶场中时序数据的存储与快速统计方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110916472.1A CN113360551B (zh) 2021-08-11 2021-08-11 一种靶场中时序数据的存储与快速统计方法及系统

Publications (2)

Publication Number Publication Date
CN113360551A true CN113360551A (zh) 2021-09-07
CN113360551B CN113360551B (zh) 2021-11-16

Family

ID=77522898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110916472.1A Active CN113360551B (zh) 2021-08-11 2021-08-11 一种靶场中时序数据的存储与快速统计方法及系统

Country Status (1)

Country Link
CN (1) CN113360551B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117573703B (zh) * 2024-01-16 2024-04-09 科来网络技术股份有限公司 时序数据的通用检索方法、系统、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107871022A (zh) * 2017-12-20 2018-04-03 清华大学 一种时序数据列式存储、查询方法及系统
CN110362572A (zh) * 2019-06-25 2019-10-22 浙江邦盛科技有限公司 一种基于列式存储的时序数据库系统
CN111694839A (zh) * 2020-04-28 2020-09-22 平安科技(深圳)有限公司 基于大数据的时间序列指数构建方法、装置及计算机设备
CN112286867A (zh) * 2020-10-27 2021-01-29 山东鼎滏软件科技有限公司 油气田时序数据存储方法、查询方法及其装置、存储介质
CN113312313A (zh) * 2021-01-29 2021-08-27 淘宝(中国)软件有限公司 数据查询方法、非易失性存储介质及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107871022A (zh) * 2017-12-20 2018-04-03 清华大学 一种时序数据列式存储、查询方法及系统
CN110362572A (zh) * 2019-06-25 2019-10-22 浙江邦盛科技有限公司 一种基于列式存储的时序数据库系统
CN111694839A (zh) * 2020-04-28 2020-09-22 平安科技(深圳)有限公司 基于大数据的时间序列指数构建方法、装置及计算机设备
CN112286867A (zh) * 2020-10-27 2021-01-29 山东鼎滏软件科技有限公司 油气田时序数据存储方法、查询方法及其装置、存储介质
CN113312313A (zh) * 2021-01-29 2021-08-27 淘宝(中国)软件有限公司 数据查询方法、非易失性存储介质及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117573703B (zh) * 2024-01-16 2024-04-09 科来网络技术股份有限公司 时序数据的通用检索方法、系统、设备及存储介质

Also Published As

Publication number Publication date
CN113360551B (zh) 2021-11-16

Similar Documents

Publication Publication Date Title
CN110321344B (zh) 关联数据的信息查询方法、装置、计算机设备及存储介质
CN102521405B (zh) 支持高速加载的海量结构化数据存储、查询方法和系统
JP6025149B2 (ja) データを管理するシステムおよび方法
US6546394B1 (en) Database system having logical row identifiers
CN107103032B (zh) 一种分布式环境下避免全局排序的海量数据分页查询方法
US7895171B2 (en) Compressibility estimation of non-unique indexes in a database management system
CN111475105B (zh) 监控数据存储方法、设备、服务器及存储介质
CN103488684A (zh) 基于缓存数据多线程处理的电力可靠性指标快速计算方法
CN113867627B (zh) 一种存储系统性能优化方法及系统
CN113094374A (zh) 分布式存储和检索方法、装置及计算机设备
CN114020790A (zh) 一种数据查询的方法及装置
CN113360551B (zh) 一种靶场中时序数据的存储与快速统计方法及系统
CN114936188A (zh) 数据处理方法、装置、电子设备及存储介质
CN113641681B (zh) 一种空间自适应的海量数据查询方法
CN106383897B (zh) 数据库容量计算方法和装置
US7440936B2 (en) Method for determining an access mode to a dataset
CN100399338C (zh) 一种数据记录处理方法
CN109299106B (zh) 数据查询方法和装置
US20240220470A1 (en) Data storage device and storage control method based on log-structured merge tree
CN116450607A (zh) 数据处理方法、设备及存储介质
CN112632058A (zh) 轨迹确定方法、装置及设备、存储介质
CN114844638B (zh) 一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统
US8290935B1 (en) Method and system for optimizing database system queries
CN110990394B (zh) 分布式面向列数据库表的行数统计方法、装置和存储介质
CN112667859A (zh) 基于内存的数据处理方法及装置

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