一种数据存储方法、电子设备及存储介质与流程

文档序号:35706431发布日期:2023-10-12 06:57阅读:30来源:国知局
一种数据存储方法、电子设备及存储介质与流程

本发明涉及数据存储领域,特别是涉及一种数据存储方法、电子设备及存储介质。


背景技术:

1、随着互联网技术的快速发展,服务器在互联网中的地位越来越重要,作为互联网中的核心硬件设备,服务器承载着互联网中大部分的数据存储及数据处理任务;目前,为了使得服务器的全流量数据具有可追溯性,服务器通常会将预设时间段内的全流量数据进行压缩生成数据包然后进行存储;采用该方法对全流量数据进行存储之后,在后期查找所需要的目标历史数据的时候,需要首先获取包含有该目标历史数据的数据压缩包,然后对整个压缩包进行解压,再从解压的数据中查询目标历史数据;然而,当数据压缩包内的数据量较大时,该存储方法会导致目标历史数据的查询效率较低。


技术实现思路

1、针对上述技术问题,本发明采用的技术方案为:

2、根据本技术的第一方面,提供了一种数据存储方法,所述方法包括以下步骤:

3、s100,获取目标时间段内的第一历史数据压缩包列表集a=(a1,a2,…,am,…,an),m=1,2,…,n;其中,am为第m个操作系统对应的第一历史数据压缩包列表,n为第一历史数据压缩包列表的数量;am=(am,1,am,2,…,am,j,…,am,f(m)),j=1,2,…,f(m);am,j为am中第j个第一历史数据压缩包,f(m)为am中第一历史数据压缩包的数量;am,j内每一第一历史数据的目标属性相同,am,j内任一第一历史数据的目标属性与am中其他的任一第一历史数据压缩包内的任一第一历史数据的目标属性不同;sam,r>sam,r+1,r=1,2,…,f(m)-1;sam,r为根据am,r对应的目标属性得到的查询优先级;所述目标属性为第一历史数据的文件属性;

4、s200,根据am中所有第一历史数据压缩包总的大小及单个机械硬盘的容量,确定am对应的每一机械硬盘标识,以得到am对应的机械硬盘标识集ym=(ym,1,ym,2,…,ym,p,…,ym,h(m)),p=1,2,…,h(m);其中,ym,p为am对应的第p个机械硬盘标识,h(m)为am对应的机械硬盘标识的数量;

5、s300,根据am中每一第一历史数据压缩包的大小将ym,1、ym,2、…、ym,p、…、ym,h(m)对应的机械硬盘均划分为f(m)个存储区域,每一存储区域对应一个存储区域标识,以得到am对应的存储区域标识集qm=(qm,1,qm,2,…,qm,j,…,qm,f(m));其中,qm,j为am,j对应的存储区域标识;qm,r对应的存储区域的读写速度大于qm,r+1对应的存储区域的读写速度;am,j在每一机械硬盘上均对应同一存储区域标识;

6、s400,将am,j分割为h(m)个子第一历史数据压缩包,以得到am,j对应的子第一历史数据压缩包集tam,j=(tam,j,1,tam,j,2,…,tam,j,p,…,tam,j,h(m));其中,tam,j,p为tam,j中的第p个子第一历史数据压缩包;

7、s500,将tam,j,p储存于第p个机械硬盘的qm,j对应的存储区域内。

8、可选的,步骤s300包括以下步骤:

9、s310,根据am,获取目标数据大小列表w=(wm,1,wm,2,…,wm,j,…,wm,f(m));其中,wm,j为am,j对应的目标数据大小;wm,j=wam,j/h(m);wam,j为am,j的数据大小;

10、s320,根据w,从am对应的每一机械硬盘的磁盘的最外侧逐渐向内将每一机械硬盘的磁盘划分为f(m)个目标存储区域;

11、s330,获取每一目标存储区域的存储区域标识,以得到am对应的存储区域标识集qm=(qm,1,qm,2,…,qm,j,…,qm,f(m));其中,qm,j包括qm,j对应的存储区域的起始存储地址和终止存储地址,且qm,j对应的存储区域的存储空间大小不小于wm,j。

12、可选的,sam,r通过以下步骤得到:

13、s110,获取am,r对应的目标属性;

14、s111,根据am,r对应的目标属性从预设的查询优先级映射表中获取sam,r;其中,所述查询优先级映射表包括若干行,每一行对应一个目标属性以及该目标属性对应的查询优先级。

15、可选的,所述目标属性通过以下步骤确定:

16、s120,获取预设的历史时间段内接收到的若干第二历史数据,确定出候选属性列表集u=(u1,u2,…,ux,…,uy),x=1,2,…,y;ux为第x个候选属性列表;每一候选属性列表包括若干候选属性;每一第二历史数据在ux中具有一个唯一对应的候选属性;

17、s130,根据u对所有第二历史数据进行分组,以得到第二历史数据组列表集tu=(tu1,tu2,…,tux,…,tuy);其中,tux为根据ux对所有第二历史数据分组得到的第二历史数据组列表;tux=(tux,1,tux,2,…,tux,d,…,tux,c(x)),d=1,2,…,c(x);tux,d为tux内的第d个第二历史数据组,c(x)为tux内第二历史数据组的数量;

18、s140,对tu内的每一第二历史数据组列表内的每一第二历史数据组进行压缩,以得到tu对应的第二历史数据压缩包列表集qtu=(qtu1,qtu2,…,qtux,…,qtuy);其中,qtux为tux对应的第二历史数据压缩包列表;

19、s150,获取u内每一候选属性列表对应的第二历史数据读写时长,以得到u对应的读写时长集ts=(ts1,ts2,…,tsx,…,tsy);其中,tsx为将qtux内的每一第二历史数据压缩包存储于预设的固定存储区域,并从所述固定存储区域读取预设数量的第二历史数据样本所用的时长;

20、s160,将最短第二历史数据读写时长tmin对应的候选属性列表内的候选属性作为目标属性;tmin=min(ts),min()为预设的求最小值函数。

21、可选的,步骤s150包括以下步骤:

22、s151,获取每一候选属性列表对应的存储时长集t1=(t1,1,t1,2,…,t1,x,…,t1,y);其中,t1,x为将qtux内的每一第二历史数据压缩包存储于预设的固定存储空间所用时长;

23、s152,获取每一候选属性列表对应的读取时长集t2=(t2,1,t2,2,…,t2,x,…,t2,y);其中,t2,x为从存储有qtux内的每一第二历史数据压缩包的固定存储空间内,读取预设数量的第二历史数据样本所用的时长;

24、s153,根据t1,x和t2,x确定tsx,以得到ts。

25、可选的,tsx=η1×t1,x+η2×t2,x;η1为预设的第一权重,η2为预设的第二权重,η1+η2=1,η1<η2。

26、可选的,η1的取值范围为0.3-0.4。

27、可选的,tam,j内任意两个子第一历史数据压缩包的大小相等。

28、根据本技术的另一方面,还提供了一种非瞬时性计算机可读存储介质,存储介质中存储有至少一条指令或至少一段程序,至少一条指令或至少一段程序由处理器加载并执行以实现上述数据存储方法。

29、根据本技术的另一方面,还提供了一种电子设备,包括处理器和上述非瞬时性计算机可读存储介质。

30、本发明至少具有以下有益效果:

31、本发明的数据存储方法,获取到的第一历史数据压缩包列表集对应于目标时间段,第一历史数据压缩包列表集中每一第一历史数据压缩包对应于一个操作系统类型,每一第一历史数据的目标属性相同;由此,将目标时间段内的所有第一历史数据先按照操作系统类型分类,然后再按照第一历史数据的目标属性分类,在后期查询目标历史数据时,能够根据所要查询的目标历史数据对应的时间、操作系统类型以及属性,快速确定包含有目标历史数据的第一历史数据压缩包的信息,从而提高获取目标历史数据的效率。

32、进一步的,本发明根据各第一历史数据压缩包的查询优先级,对各第一历史数据压缩包进行排序;同时,根据每个操作系统类型对应的第一历史数据压缩包总的大小,确定机械硬盘的数量,使得所有的第一历史数据压缩包均能够存储于机械硬盘内;将查询优先级高的第一历史数据压缩包分割为若干子第一历史数据压缩包,将每一子第一历史数据压缩包存储于各机械硬盘的读写速度较快的存储区域,使得后期读取查询优先级较高的第一历史数据压缩包时,能够以最短的时间读取出来,从而提高第一历史数据压缩包的读取效率。

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