[发明专利]一种文件写入方法、装置、设备及介质在审
申请号: | 202210331114.9 | 申请日: | 2022-03-31 |
公开(公告)号: | CN114706823A | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 荣章权 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F16/16 | 分类号: | G06F16/16;G06F16/172;G06F16/182 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 耿苑 |
地址: | 215100 江苏省苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 写入 方法 装置 设备 介质 | ||
本申请公开了一种文件写入方法、装置、设备及介质,涉及信息技术领域。该方法包括:获取针对目标文件的携带有待写入数据的文件写入请求;判断所述目标文件是否为用于通过分级聚合处理形成大文件的小文件;如果所述目标文件为所述小文件,则判断所述文件写入请求对应的文件写入类型是否为文件追加写类型;如果所述文件写入类型为文件追加写类型,则为所述目标文件创建相应的临时页以及目标页缓存,并将所述目标文件读入所述临时页中;基于页拷贝技术将所述临时页中的所述目标文件拷贝至所述目标页缓存中,并将所述待写入数据直写入所述目标文件中。通过上述方案能够在进行文件写入时减少不必要的资源浪费提高写入效率以优化文件的写入过程。
技术领域
本发明涉及信息技术领域,特别涉及一种文件写入方法、装置、设备及介质。
背景技术
在分布式存储系统中,用户通过内核客户端读写的文件其数据及元数据均保存在服务器端。通常将用户访问频率高的文件放置于源池中,将用户访问频率低的文件放置于迁入池中。文件在创建之初其数据通常放置在源池中,一段时间后将其迁移至迁入池中,其中,迁移的过程即成为数据分级。在一些特定场景下,会出现海量的小文件,为提升小文件的分级效率,服务器端需要将小文件聚合为大文件再对大文件进行迁移,其中聚合伴随着分级的过程进行。分级迁移的过程提升了服务器端对于海量、较小文件批量处理的效率,但是随之带来的问题是客户端无法对分级聚合后的小文件进行直接读、写、删除、截断等操作。现有技术中,lib库采用的一般技术为根据小文件在大文件中的偏移,定位到小文件在大文件中所处位置,通过操作大文件达成对小文件操作的目的,特别地,lib库写入分级聚合文件的过程要复杂一些,根据写入过程是否使文件变大可分为修改写和追加写两种写入方式:修改写即定位到小文件在大文件中所处位置,对大文件执行写入操作;追加写由于大、小文件对应对象储存设备中的底层对象的不同,首先要将小文件从大文件中读出,接下来通过字符串操作合并文件原始数据及将要写入的数据,然后将合并结果写入小文件,最后更改大、小文件的元数据信息。
然而,将小文件从大文件中读出小文件的过程,需要首先将数据读到大文件页缓存中,接下来将大文件页缓存中的数据拷贝到一段用户态的地址中。写入时,将用户态的地址中的数据拷贝到文件的页缓存中,再执行下刷线程将数据落盘,但事实上,读出的数据对于用户没有直接的使用价值,仅为了第二次写入数据的完整性,造成资源浪费。综上,如何在进行文件写入时减少不必要的资源浪费提高写入效率以优化文件的写入过程的问题有待进一步解决。
发明内容
有鉴于此,本发明的目的在于提供一种文件写入方法、装置、设备及介质,能够在进行文件写入时减少不必要的资源浪费以优化文件的写入过程。
其具体方案如下:
第一方面,本申请公开了一种文件写入方法,包括:
获取针对目标文件的携带有待写入数据的文件写入请求;
判断所述目标文件是否为用于通过分级聚合处理形成大文件的小文件;
如果所述目标文件为所述小文件,则判断所述文件写入请求对应的文件写入类型是否为文件追加写类型;
如果所述文件写入类型为文件追加写类型,则为所述目标文件创建相应的临时页以及目标页缓存,并将所述目标文件读入所述临时页中;
基于页拷贝技术将所述临时页中的所述目标文件拷贝至所述目标页缓存中,并将所述待写入数据直写入所述目标文件中。
可选的,所述获取针对目标文件的携带有待写入数据的文件写入请求之后,还包括:
获取所述目标文件对应的大文件的文件编号、所述目标文件相对于所述大文件起始位置的偏移量、所述目标文件对应的分级聚合类型、所述大文件中对象的对象头的排序序号、所述目标文件占据的无效空间及所述目标文件的大小。
可选的,所述判断所述目标文件是否为用于通过分级聚合处理形成大文件的小文件,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210331114.9/2.html,转载请声明来源钻瓜专利网。