数据处理方法技术

技术编号:39573621 阅读:9 留言:0更新日期:2023-12-03 19:25
本发明专利技术涉及计算机技术领域,公开了一种数据处理方法

【技术实现步骤摘要】
数据处理方法、装置、磁盘阵列卡及介质


[0001]本专利技术涉及计算机
,具体涉及数据处理方法

装置

磁盘阵列卡及介质


技术介绍

[0002]RAID

Redundant Array of Independent Disks
)是一种数据存储技术,可以将多个磁盘组合成一个
RAID
阵列,构成
RAID
卡,提供数据冗余和读写性能的提升
。RAID
卡具有自己的内存和处理器,用于管理磁盘和实现
RAID
级别

然而,随着硬盘容量的不断增加和数据访问的不断加速,
RAID
卡的内存访问效率成为一个瓶颈

因此,需要一种新的技术来提高
RAID
卡内存访问的效率,以实现更高的读写性能和更好的数据保护


技术实现思路

[0003]有鉴于此,本专利技术提供了一种数据处理方法

装置

磁盘阵列卡及介质,用以提高
RAID
卡内存访问效率

[0004]第一方面,本专利技术提供了一种数据处理方法,该方法应用于一种磁盘阵列卡,该方法包括:当获取到操作指令后,解析操作指令中的配置参数;根据配置参数,确定待处理文件以及待处理文件所占用的存储空间;当确定待处理文件所占用的存储空间大于或等于预设阈值时,采用第一处理模式对待处理文件进行切分,获取多个第一类待处理子文件;为第
i
个第一类待处理子文件分别配置多个第一元数据结构体以及与每一个第一元数据结构体对应的内存页,第一元数据结构体中存储与第
i
个第一类待处理子文件对应的元数据,内存页用于存储第
i
个第一类待处理子文件中与元数据对应的数据,其中
i
为正整数,第
i
个第一类待处理子文件为多个第一类待处理子文件中的任一个;创建与第
i
个第一类待处理子文件对应的第二元数据结构体;将多个第一元数据结构体中的元数据进行压缩后,存储至第二元数据结构体,释放多个第一元数据结构体所占用的存储资源

[0005]本专利技术提供的一种数据处理方法,具有如下优点:当获取到操作指令后,解析操作指令中的配置参数

根据配置参数,确定待处理文件以及待处理文件所占用的存储空间

如果确定待处理文件所占用的存储空间大于或等于预设阈值时,则可以确定待处理文件为大文件

需要采用第一处理模式对待处理文件进行切分,获取第一类待处理子文件

然后为每一个待处理子文件分别配置多个第一元数据结构体,以及与每一个第一元数据结构体对应的内存页,用以分别存储元数据,以及与元数据对应的数据

考虑到多个第一元数据结构体将占用更多的存储空间

因此,可以创建一个第二元数据结构体,然后将多个第一元数据结构体中的元数据进行压缩后,存储至第二元数据结构体,进而释放第一元数据结构体所占用的存储空间

通过该方式,利用压缩方式降低多个第一元数据结构体所占用的存储空间,也即是降低内存占用率,而且,上述方案中直接
在内核层做一次内部映射,也即是直接通过第一元数据结构体映射到对应的数据,相较于已有技术中的方案,映射次数减少

不论是存储空间的占用率的降低还是映射次数的减少,都可以提升
RAID
卡内存访问效率

[0006]在一种可选的实施方式中,当确定待处理文件所占用的存储空间小于预设阈值时,采用第二处理模式对待处理文件进行切分,获取多个第二类待处理子文件,其中,第二类待处理子文件占用的存储空间小于第一类待处理子文件占用的存储空间;创建与每一个第二类待处理子文件对应的第三元数据结构体,以及与每一个第三元数据结构体对应的内存页,第三元数据结构体中存储与第二类待处理子文件对应的元数据

[0007]具体的,当确定待处理文件所占用的存储空间小于预设阈值时,确定待处理文件为小文件

可以采用第二处理模式对待处理文件进行切分,获取多个第二类待处理子文件

因为每一个第二类待处理子文件所占用的存储空间较小,可以直接创建一个第三元数据结构体即可,无需创建多个第三数据结构体,因此也无需创建一个新的数据结构体用于存储多个第三元数据结构体的压缩数据

但是对小文件的处理方式,同样是只执行一次内部映射,所以同样是可以提升
RAID
卡内存访问效率

[0008]在一种可选的实施方式中,方法还包括:获取数据访问指令;根据数据访问指令访问与待访问数据对应的元数据所属的第四元数据结构体;当确定第四元数据结构体对应的物理资源已被释放时,分配与第四元数据结构体对应的物理资源,并触发缺页中断操作;根据缺页中断操作,从存储待访问数据对应的元数据的第五元数据结构体中解压待访问数据对应的元数据;将待访问数据对应的元数据存储至第四元数据结构体,以便根据第四元数据结构体中存储的元数据访问待访问数据

[0009]具体的,当获取到数据访问指令时,需要根据数据访问指令访问与待访问数据对应的元数据所属的第四元数据结构体,当确定第四元数据结构体对应的物理资源已被释放时,则分配新的物理资源用于支持第四元数据结构体

然后触发缺页中断操作,通过缺页中断操作,从存储待访问数据对应的元数据的第五元数据结构体中解压出待访问数据对应的元数据,将待访问数据对应的元数据存储至第四元数据结构体

进而根据第四元数据结构体中的元数据访问待访问数据

通过该方式,充分利用硬件固有的缺页中断实现元数据结构体对应物理资源的动态释放和分配,最大化提升
RAID
卡内存访问效率

[0010]在一种可选的实施方式中,当确定待访问数据访问完成后,释放与第四元数据结构体对应的物理资源

[0011]具体的,当确定待访问数据访问完成后,释放与第四元数据结构体对应的物理资源,同样是为了降低内存占用率,进而提升
RAID
卡内存访问效率

[0012]在一种可选的实施方式中,当确定待处理文件所占用的存储空间大于或等于预设阈值时,采用第一处理模式对待处理文件进行切分,获取多个第一类待处理子文件,具体包括:按照第一字节存储单位对待处理文件进行切分,获取多个第三类待处理子文件;
针对每一个第三类待处理子文件,按照第二字节存储单位进行切分,获取多个第一类待处理子文件

[0013]在一种可选的实施方式中,该方法还包括:统计与待访问数据对应的元数据触发的缺页中断次数,当缺页中断次数超过次数阈值时,查询内本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种数据处理方法,其特征在于,所述方法应用于一种磁盘阵列卡,所述方法包括:当获取到操作指令后,解析所述操作指令中的配置参数;根据所述配置参数,确定待处理文件以及所述待处理文件所占用的存储空间;当确定所述待处理文件所占用的存储空间大于或等于预设阈值时,采用第一处理模式对所述待处理文件进行切分,获取多个第一类待处理子文件;为第
i
个所述第一类待处理子文件分别配置多个第一元数据结构体以及与每一个所述第一元数据结构体对应的内存页,所述第一元数据结构体中存储与所述第
i
个所述第一类待处理子文件对应的元数据,所述内存页用于存储第
i
个所述第一类待处理子文件中与所述元数据对应的数据,其中
i
为正整数,第
i
个所述第一类待处理子文件为所述多个第一类待处理子文件中的任一个;创建与第
i
个所述第一类待处理子文件对应的第二元数据结构体;将多个所述第一元数据结构体中的元数据进行压缩后,存储至第二元数据结构体,释放多个所述第一元数据结构体所占用的存储资源
。2.
根据权利要求1所述的方法,其特征在于,当确定所述待处理文件所占用的存储空间小于所述预设阈值时,采用第二处理模式对所述待处理文件进行切分,获取多个第二类待处理子文件,其中,所述第二类待处理子文件占用的存储空间小于所述第一类待处理子文件占用的存储空间;创建与每一个所述第二类待处理子文件对应的第三元数据结构体,以及与每一个所述第三元数据结构体对应的内存页,所述第三元数据结构体中存储与所述第二类待处理子文件对应的元数据
。3.
根据权利要求2所述的方法,其特征在于,所述方法还包括:获取数据访问指令;根据所述数据访问指令访问与待访问数据对应的元数据所属的第四元数据结构体;当确定所述第四元数据结构体对应的物理资源已被释放时,分配与所述第四元数据结构体对应的物理资源,并触发缺页中断操作;根据所述缺页中断操作,从存储所述待访问数据对应的元数据的第五元数据结构体中解压所述待访问数据对应的元数据;将所述待访问数据对应的元数据存储至所述第四元数据结构体,以便根据所述第四元数据结构体中存储的元数据访问所述待访问数据
。4.
根据权利要求3所述的方法,其特征在于,当确定所述待访问数据访问完成后,释放与所述第四元数据结构体对应的物理资源
。5.
根据权利要求1‑4任一项所述的方法,其特征在于,所述当确定所述待处理文件所占用的存储空间大于或等于预设阈值时,采用第一处理模式对所述待处理文件进行切分,获取多个第一类待处理子文件,具体包括:按照第一字节存储单位对所述待处理文件进行切分,获取多个第三类待处理子文件;针对每一个所述第三类待处理子文件,按照第二字节存储单位进行切分,获取多个所述第一类待处理子文件
。6.
根据权利要求3或4所述的方法,其特征在于,所述方法还包括:统计与所述待访问数据对应的元数据触发的缺页中断次数,当所述缺页中断次数超过
次数阈值时,查询内存中未被访问页面的持续时间;当确定第一页面未被访问的持续时间最长时,则在所述内存中利用所述第四元数据结构体置换掉所述第一页面对应的第六元数据结构体,并将所述第五元数据结构体中的元数据解压缩后存储至所述第四元数据结构体中;将所述第六元数据结构体中的元数据进行压缩处理后,存储至所述内存以外的其他预设存储位置,其中,所述第一页面为所述内存中存储的任一内存页
。7.
根据权利要求3或4所述的方法,其特征在于,所述获取所述数据访问指令之后,所述方法还包括:当确定所述数据访问指令用以指示访问除所述待访问数据之外的其他数据时,预测后续进程是否会访问所述待访问数据;当预测后续进程依然会访问所述待访问数据时,从所述第五元数据结构体中解压与所述待访问数据对应的元数据,并将所述待访问数据对应的元数据存储至所述第四元数据结构体
。8.
根据权利要求2所述的方法,其特征在于,所述当确定所述待处理文件所占用的存储空间小于所述预设阈值时,采用第二处理模式对所述待处理文件进行切分,获取多个第二类待处理子文件,具体包括:对所述待处理文件按照第二字节存储单位对所述待处理文件进行切分,获取多个所述第二类待处理子文件
。9.
根据权利要求1‑4任一项所述的方法,其特征在于,所述操作指令包括读操作指令或写操作指令
。10.
根据权利要求3所述的方法,其特征在于,第一元数据结构体

第三元数据结构...

【专利技术属性】
技术研发人员:李飞龙王刚王见钟戟孙明刚
申请(专利权)人:苏州元脑智能科技有限公司
类型:发明
国别省市:

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

1