一种数据处理方法、装置、存储介质及设备制造方法及图纸

技术编号:35174679 阅读:30 留言:0更新日期:2022-10-12 17:40
本说明书公开了一种数据处理方法、装置、存储介质及设备,通过接收待存储子文件的写入请求,当确定未对待存储子文件所属的临时文件分配目标存储块时,根据存有已存储临时文件的各存储块的空闲存储空间的大小,及该待存储子文件大小,从存有已存储临时文件的子文件的各存储块中确定第一待选存储块。根据第一待选存储块,确定用于存储该待存储子文件的目标存储块,确定外存储器中,目标存储块对应的用于存储该待存储子文件的存储地址,并将该待存储子文件存储在缓存中。可提供一种基于存储块进行数据存储的数据处理方法,该方法通过将不同临时文件的子文件存在相同存储块中,可提高存储块利用率,减少存储空间的浪费。减少存储空间的浪费。减少存储空间的浪费。

【技术实现步骤摘要】
一种数据处理方法、装置、存储介质及设备


[0001]本说明书涉及数据库
,尤其涉及一种数据处理方法、装置、存储介质及设备。

技术介绍

[0002]目前用户对自己的隐私数据越来越关注。在结构化查询语句(Structured Query Language,SQL)执行过程中,通常会产生临时数据,并需要对临时数据进行存储。
[0003]目前,在基于块存储的存储方式下,常将外存储器的存储空间划分为若干存储块,并将临时数据分成多个子文件后,写入存储块中。
[0004]本说明书提供一种解决如何基于存储块进行数据存储的数据处理方法。

技术实现思路

[0005]本说明书提供一种数据处理方法及装置,可将不同临时文件的子文件存在相同存储块中,提高存储块利用率,减少存储空间的浪费。
[0006]本说明书采用下述技术方案:本说明书提供了一种数据处理方法,外存储器的存储空间被划分为若干存储块,所述方法包括:接收待存储子文件的写入请求,所述写入请求至少携带有所述待存储子文件所属的临时文件的标识以及所述待存储子文件;当根据所述标识确定未对所述临时文件分配目标存储块时,根据存有已存储临时文件的各存储块的空闲存储空间的大小,以及所述待存储子文件的大小,从存有已存储临时文件的各存储块中,确定第一待选存储块;根据所述第一待选存储块,确定用于存储所述待存储子文件的目标存储块,确定所述待存储子文件在所述目标存储块的存储地址,并将所述待存储子文件存储在缓存中。
[0007]可选地,将所述待存储子文件存储在缓存中之前,所述方法还包括:当确定所述缓存不足以存储所述待存储子文件时,确定为所述缓存中各已存储子文件分别分配的存储块,作为已分配存储块;针对每个已分配存储块,根据该已分配存储块中已存储子文件的总大小与该已分配存储块的总存储空间大小的比值,确定该已分配存储块的利用率;根据确定出的各利用率,从各已分配存储块中确定待处理存储块;将所述缓存中所述待处理存储块对应的子文件作为待落盘的子文件,将确定出的待落盘的子文件写入所述待落盘的子文件对应的存储地址中,并将所述待落盘的子文件从所述缓存中删除。
[0008]可选地,针对所述外存储器的每个存储块,该存储块被划分为若干存储页;根据存有已存储临时文件的各存储块的空闲存储空间的大小,以及所述待存储子文件的大小,从存有已存储临时文件的各存储块中,确定第一待选存储块,具体包括:
获取动态链表,所述动态链表用于记录空闲的存储页构成的存储页组,针对每个存储页组,该存储页组中的各存储页连续,且属于同一存储块;从所述动态链表中确定存有已存储临时文件的各存储块包含的存储页组,作为各待定存储页组;将大小不小于所述待存储子文件的大小的待定存储页组所属的存储块,作为第一待选存储块。
[0009]可选地,根据所述第一待选存储块,确定用于存储所述待存储子文件的目标存储块之前,所述方法还包括:从各存储块中,确定存储的已存储临时文件与所述待存储子文件所属的临时文件的生命周期的差值在预设范围内的存储块,作为第二待选存储块;根据所述第一待选存储块,确定用于存储所述待存储子文件的目标存储块,具体包括:根据所述第一待选存储块以及所述第二待选存储块,确定用于存储所述待存储子文件的目标存储块。
[0010]可选地,针对所述外存储器的每个存储块,该存储块被划分为若干存储页;从各存储块中,确定存储的已存储临时文件与所述待存储子文件所属的临时文件的生命周期的差值在预设范围内的存储块,作为第二待选存储块,具体包括:获取动态链表,所述动态链表用于记录空闲的存储页构成的存储页组,针对每个存储页组,该存储页组中的各存储页连续,且属于同一存储块;从所述动态链表中确定存有已存储临时文件的各存储块的存储页组,作为各待定存储页组,并将各待定存储页组所属的存储块作为各待定存储块;将存储的已存储临时文件与所述待存储子文件所属的临时文件的生命周期的差值在预设范围内的待定存储块,作为第二待选存储块。
[0011]可选地,根据所述第一待选存储块以及所述第二待选存储块,确定用于存储所述待存储子文件的目标存储块,具体包括:确定所述第一待选存储块以及所述第二待选存储块的交集,得到命中存储块;从所述命中存储块中,确定空闲存储空间最小的存储块,作为用于存储所述待存储子文件的目标存储块;或,从所述命中存储块中,确定存储的已存储临时文件的生命周期与所述待存储子文件所属的临时文件的生命周期差值最小的存储块,作为用于存储所述待存储子文件的目标存储块。
[0012]可选地,各存储块大小相同,同一存储块中各存储页大小相同;所述动态链表包含若干层,处于同一层的各存储页组大小相同;针对所述动态链表的每一层,该层的下一层中各存储页组的大小为该层中各存储页组的二倍;所述方法还包括:确定释放数据后空闲的存储页组,作为待入链存储页组;当所述动态链表中存在与所述待入链存储页组存在伙伴关系的其他存储页组时,将所述待入链存储页组与所述其他存储页组合并,得到新的存储页组,并根据所述新的存储页组的大小以及所述动态链表各层中存储页组的大小,确定所述动态链表中的目标层,将所述新的存储页组加入所述目标层;
当所述动态链表中不存在与所述待入链存储页组存在伙伴关系的其他存储页组时,根据所述待入链存储页组的大小以及所述动态链表各层中存储页组的大小,确定所述动态链表中的目标层,并将所述待入链存储页组加入所述目标层。
[0013]可选地,所述缓存包括可写可读缓存以及只读缓存;将所述待存储子文件存储在缓存中,具体包括:根据确定出的所述目标存储块的至少部分空闲存储空间,从所述可写可读缓存的存储空间中划分缓存块;当成功划分缓存块时,将所述待存储子文件存储在所述缓存块中;当确定所述可写可读缓存不足以存储所述待存储子文件时,确定为所述可写可读缓存中各已存储子文件分别分配的存储块的利用率,根据确定出的各利用率,从所述可写可读缓存中确定待落盘的子文件,将所述待落盘的子文件写入所述只读缓存中,并将所述可写可读缓存中的所述待落盘的子文件删除,重新从所述可写可读缓存的存储空间中划分缓存块,并将所述待存储子文件存储在划分的缓存块中。
[0014]可选地,所述方法还包括:接收对已存储子文件的读取请求,所述读取请求至少携带有所述已存储子文件所属的已存储临时文件的标识,以及所述读取请求所请求的所述已存储子文件在所述已存储临时文件中的位置;当根据所述读取请求,未从所述可写可读缓存中读取到所述读取请求所请求的已存储子文件时,从所述只读缓存中读取所述读取请求所请求的已存储子文件;当成功从所述只读缓存中读取所述读取请求所请求的已存储子文件时,向所述读取请求的发送方返回读取结果;当未成功从所述只读缓存中读取所述读取请求所请求的已存储子文件时,将所述读取请求所请求的已存储子文件从所述外存储器中加载到所述只读缓存中,并向所述读取请求的发送方返回读取结果。
[0015]本说明书提供了一种数据处理装置,外存储器的存储空间被划分为若干存储块,所述装置包括:第一接收模块,用于接收待存储子文件的写入请求,所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,外存储器的存储空间被划分为若干存储块,所述方法包括:接收待存储子文件的写入请求,所述写入请求至少携带有所述待存储子文件所属的临时文件的标识以及所述待存储子文件;当根据所述标识确定未对所述临时文件分配目标存储块时,根据存有已存储临时文件的各存储块的空闲存储空间的大小,以及所述待存储子文件的大小,从存有已存储临时文件的各存储块中,确定第一待选存储块;根据所述第一待选存储块,确定用于存储所述待存储子文件的目标存储块,确定所述待存储子文件在所述目标存储块的存储地址,并将所述待存储子文件存储在缓存中。2.如权利要求1所述的方法,将所述待存储子文件存储在缓存中之前,所述方法还包括:当确定所述缓存不足以存储所述待存储子文件时,确定为所述缓存中各已存储子文件分别分配的存储块,作为已分配存储块;针对每个已分配存储块,根据该已分配存储块中已存储子文件的总大小与该已分配存储块的总存储空间大小的比值,确定该已分配存储块的利用率;根据确定出的各利用率,从各已分配存储块中确定待处理存储块;将所述缓存中所述待处理存储块对应的子文件作为待落盘的子文件,将确定出的待落盘的子文件写入所述待落盘的子文件对应的存储地址中,并将所述待落盘的子文件从所述缓存中删除。3.如权利要求1所述的方法,针对所述外存储器的每个存储块,该存储块被划分为若干存储页;根据存有已存储临时文件的各存储块的空闲存储空间的大小,以及所述待存储子文件的大小,从存有已存储临时文件的各存储块中,确定第一待选存储块,具体包括:获取动态链表,所述动态链表用于记录空闲的存储页构成的存储页组,针对每个存储页组,该存储页组中的各存储页连续,且属于同一存储块;从所述动态链表中确定存有已存储临时文件的各存储块包含的存储页组,作为各待定存储页组;将大小不小于所述待存储子文件的大小的待定存储页组所属的存储块,作为第一待选存储块。4.如权利要求1所述的方法,根据所述第一待选存储块,确定用于存储所述待存储子文件的目标存储块之前,所述方法还包括:从各存储块中,确定存储的已存储临时文件与所述待存储子文件所属的临时文件的生命周期的差值在预设范围内的存储块,作为第二待选存储块;根据所述第一待选存储块,确定用于存储所述待存储子文件的目标存储块,具体包括:根据所述第一待选存储块以及所述第二待选存储块,确定用于存储所述待存储子文件的目标存储块。5.如权利要求4所述的方法,针对所述外存储器的每个存储块,该存储块被划分为若干存储页;从各存储块中,确定存储的已存储临时文件与所述待存储子文件所属的临时文件的生命周期的差值在预设范围内的存储块,作为第二待选存储块,具体包括:
获取动态链表,所述动态链表用于记录空闲的存储页构成的存储页组,针对每个存储页组,该存储页组中的各存储页连续,且属于同一存储块;从所述动态链表中确定存有已存储临时文件的各存储块的存储页组,作为各待定存储页组,并将各待定存储页组所属的存储块作为各待定存储块;将存储的已存储临时文件与所述待存储子文件所属的临时文件的生命周期的差值在预设范围内的待定存储块,作为第二待选存储块。6.如权利要求4所述的方法,根据所述第一待选存储块以及所述第二待选存储块,确定用于存储所述待存储子文件的目标存储块,具体包括:确定所述第一待选存储块以及所述第二待选存储块的交集,得到命中存储块;从所述命中存储块中,确定空闲存储空间最小的存储块,作为用于存储所述待存储子文件的目标存储块;或,从所述命中存储块中,确定存储的已存储临时文件的生命周期与所述待存...

【专利技术属性】
技术研发人员:涂云山赵裕众陈嘉华谢振江
申请(专利权)人:北京奥星贝斯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1