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

技术编号:30641372 阅读:44 留言:0更新日期:2021-11-04 00:38
本申请公开了一种数据处理方法、装置、设备及存储介质,具体的,获取基于文件系统接口接收到的数据处理请求,该数据处理请求包括针对存储设备中的目标数据的处理操作类型,并根据该数据处理请求中的处理操作类型,对存储设备中的目标数据进行相应处理,并在完成处理后,生成针对目标数据的缓存失效指令,从而根据该缓存失效指令,利用预先配置的缓存失效操作接口,对虚拟文件系统中存储的目标数据的元数据以及文件系统的缓存中存储的目标数据的元数据进行无效。由于在处理目标数据的过程中,可以数据流动可以发生在存储设备之间,无需通过存储链路进入主机、跨越主机操作系统的存储栈再写出到存储设备,从而无需Linxu系统以及CPU接入,释放了CPU的计算能力。释放了CPU的计算能力。释放了CPU的计算能力。

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


[0001]本申请涉及数据处理
,特别是涉及一种数据处理方法、装置、设备及存储介质。

技术介绍

[0002]在服务器虚拟化及超融合等应用场景中,由于QEMU

KVM的优异的虚拟化性能及成熟度,Linux常被选为虚拟化系统内核用于构建超融合系统。超融合系统包含存储管理软件和商用硬件,通常应用虚拟存储设备,其采用以虚拟机(Virtual Machine,VM)为中心的策略将存储管理、数据保护和网络集成到一个盒子。其中,Linux系统可以包括虚拟文件系统(Virtual File System,VFS)层,并且,VFS层所具有的抽象设计,可以屏蔽Linux系统和具体的文件系统实现,使其很好的支持多种文件系统,如ext3、ext4、xfs、btrfs等单机文件系统,也支持如GFS、GlusterFS、OCFS2等集群或者分布式文件系统。这些单机或集群文件系统常被用于构建服务器虚拟化系统中的存储池,基于文件系统提供的特性可方便实现快照、数据备份、扩容、HA等虚拟化系统服务。
[0003]在Linux系统中,用户态的针对数据读写的输入输出(Inout/Output,IO)会通过系统调用进入内核层,经由VFS层、文件系统层、块层、设备驱动层,才会到达真正的存储设备并对存储设备中的数据进行读写。其中,IO经过的所有抽象层统称为IO栈。为了避免较深的IO栈对性能的影响,Linux设计中会充分利用缓存机制来提高性能,在文件系统中主要有数据缓存(dcache)、页缓存(page cache)等。在Linux VFS设计方案下,数据访问必须通过操作系统提供的IO接口来进行,由kernel和VFS、缓存机制等配合,才能保证的完整性。如果试图跨越kernel、VFS等,直接对块设备乃至磁盘进行访问,就出现一致性问题。这是因为内核对缓存的管理是自上而下的,上层的修改可以停留在缓存,并在适当时机下刷到磁盘。也即磁盘上的数据完整性完全由内核及VFS层决定,而底层数据的修改是无法被上层感知的。并且,基于文件系统接口的拷贝必须由主机CPU和操作系统的介入,既占用系统计算资源,也无法发挥存储设备的加速特性,这就使得超融合系统中实现诸如数据拷贝卸载、数据迁移卸载、虚拟磁盘第三方应用接口访问等非常困难。

技术实现思路

[0004]本申请实施例提供了一种数据处理方法、装置、设备及存储介质,以使得超融合系统能够支持对文件系统内数据拷贝、数据迁移、第三方应用数据访问等操作,使得超融合系统既可以充分利用文件系统的特性又能够发挥存储设备拷贝等功能。
[0005]第一方面,本申请实施例提供了一种数据处理方法,所述方法应用于将Linux系统作为系统内核的超融合系统,所述超融合系统还包括虚拟文件系统、文件系统以及存储设备,所述方法包括:
[0006]获取基于文件系统接口接收到的数据处理请求,所述数据处理请求包括针对所述目标数据的处理操作类型;
[0007]根据所述数据处理请求中的处理操作类型,对存储设备中的目标数据进行相应处理;
[0008]在完成对所述目标数据的处理后,生成针对所述目标数据的缓存失效指令,所述缓存失效指令包括所述目标数据的标识;
[0009]基于所述缓存失效指令,利用预先配置的缓存失效操作接口,对所述虚拟文件系统的缓存中存储的所述目标数据的元数据以及所述文件系统的缓存中存储的所述目标数据的元数据进行无效。
[0010]在一种可能的实施方式中,所述处理操作类型包括数据拷贝、数据迁移、数据卸载中的任意一种。
[0011]在一种可能的实施方式中,所述处理操作包括数据拷贝或数据迁移,所述根据所述数据处理请求中的处理操作类型,对存储设备中的目标数据进行相应处理包括:
[0012]在所述存储设备中为所述目标数据分配新的目标存储空间,所述目标存储空间的容量不低于所述目标数据的数据量;
[0013]根据所述数据处理请求所指示的数据拷贝操作或数据迁移操作,在所述目标存储空间存储所述目标数据。
[0014]在一种可能的实施方式中,所述在所述存储设备中为所述目标数据分配新的目标存储空间包括:
[0015]利用所述虚拟文件系统提供的预分配接口在所述存储设备中为所述目标数据分配新的目标存储空间。
[0016]在一种可能的实施方式中,在对所述虚拟文件系统中存储的所述目标数据的元数据以及所述文件系统的缓存中存储的所述目标数据的元数据进行无效后,所述方法还包括
[0017]接收来自Linux系统的针对所述目标数据的数据访问请求;
[0018]从所述虚拟文件系统和/或所述文件系统的缓存中查询所述目标数据的元数据;
[0019]当从所述虚拟文件系统和/或所述文件系统的缓存中查询到所述目标数据的元数据无效时,访问所述存储设备,以获得所述目标数据。
[0020]在一种可能的实施方式中,所述虚拟文件系统的缓存中存储的所述目标数据的元数据,包括所述目标数据在所述虚拟文件系统的缓存中的页缓存元数据;
[0021]所述文件系统的缓存中存储的所述目标数据的元数据,包括所述目标数据在所述文件系统的缓存中的存储区间元数据和/或索引节点元数据。
[0022]在一种可能的实施方式中,所述对所述虚拟文件系统中存储的所述目标数据的元数据以及所述文件系统的缓存中存储的所述目标数据的元数据进行无效包括:
[0023]当所述存储设备中的目标数据未被进程访问时,对所述虚拟文件系统中存储的所述目标数据的元数据以及所述文件系统的缓存中存储的所述目标数据的元数据进行无效。
[0024]第二方面,本申请实施例提供了一种数据处理装置,所述装置应用于将Linux系统作为系统内核的超融合系统,所述超融合系统还包括虚拟文件系统、文件系统以及存储设备,所述装置包括:
[0025]获取模块,用于获取基于文件系统接口接收到的数据处理请求,所述数据处理请求包括针对所述目标数据的处理操作类型;
[0026]数据处理模块,用于根据所述数据处理请求中的处理操作类型,对存储设备中的
目标数据进行相应处理;
[0027]指令执行模块,用于在完成对所述目标数据的处理后,生成针对所述目标数据的缓存失效指令,所述缓存失效指令包括所述目标数据的标识;
[0028]无效数据模块,用于基于所述缓存失效指令,利用预先配置的缓存失效操作接口,对所述虚拟文件系统的缓存中存储的所述目标数据的元数据以及所述文件系统的缓存中存储的所述目标数据的元数据进行无效。
[0029]在一种可能的实施方式中,所述处理操作类型包括数据拷贝、数据迁移、数据卸载中的任意一种。
[0030]在一种可能的实施方式中,所述处理操作包括数据拷贝或数据迁移,所述数据处理模块,包括:
[0031]分配单元,用于在所述存储设备中为所述目标数据分配新的目标存储空间,所述目标存储空间的容量不低于所述目标数据的数据量;
[0032]存储本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法应用于将Linux系统作为系统内核的超融合系统,所述超融合系统还包括虚拟文件系统、文件系统以及存储设备,所述方法包括:获取基于文件系统接口接收到的数据处理请求,所述数据处理请求包括针对所述目标数据的处理操作类型;根据所述数据处理请求中的处理操作类型,对存储设备中的目标数据进行相应处理;在完成对所述目标数据的处理后,生成针对所述目标数据的缓存失效指令,所述缓存失效指令包括所述目标数据的标识;基于所述缓存失效指令,利用预先配置的缓存失效操作接口,对所述虚拟文件系统的缓存中存储的所述目标数据的元数据以及所述文件系统的缓存中存储的所述目标数据的元数据进行无效。2.根据权利要求1所述的方法,其特征在于,所述处理操作类型包括数据拷贝、数据迁移、数据卸载中的任意一种。3.根据权利要求1所述的方法,其特征在于,所述处理操作包括数据拷贝或数据迁移,所述根据所述数据处理请求中的处理操作类型,对存储设备中的目标数据进行相应处理包括:在所述存储设备中为所述目标数据分配新的目标存储空间,所述目标存储空间的容量不低于所述目标数据的数据量;根据所述数据处理请求所指示的数据拷贝操作或数据迁移操作,在所述目标存储空间存储所述目标数据。4.根据权利要求3所述的方法,其特征在于,所述在所述存储设备中为所述目标数据分配新的目标存储空间包括:利用所述虚拟文件系统提供的预分配接口在所述存储设备中为所述目标数据分配新的目标存储空间。5.根据权利要求1所述的方法,其特征在于,在对所述虚拟文件系统中存储的所述目标数据的元数据以及所述文件系统的缓存中存储的所述目标数据的元数据进行无效后,所述方法还包括接收来自Linux系统的针对所述目标数据的数据访问请求;从所述虚拟文件系统和/或所述文件系统的缓存中查询所述目标数据的元数据;当从所述虚拟文件系统和/或所述文件系统的缓存中查询到所述目标数据的元数据无效时,访问所述存储设备,以获得所述目...

【专利技术属性】
技术研发人员:李宏伟颜秉珩
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:

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

1