[发明专利]用于分布式文件系统执行重命名操作的方法和设备有效
申请号: | 201710192717.4 | 申请日: | 2017-03-28 |
公开(公告)号: | CN107239480B | 公开(公告)日: | 2021-01-29 |
发明(设计)人: | 刘俊峰;姚文辉;朱家稷 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/182 | 分类号: | G06F16/182 |
代理公司: | 上海百一领御专利代理事务所(普通合伙) 31243 | 代理人: | 陈贞健;王路丰 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 分布式 文件系统 执行 重命名 操作 方法 设备 | ||
本申请的目的是提供一种用于分布式文件系统执行重命名操作的方法和设备,通过对文件的重命名请求进行解析,确定重命名请求是否在同一主节点组列表中,若不在,则从源主节点组列表中获取源文件的文件锁,并在目标主节点组列表中创建临时文件并获取所述临时文件的文件锁;基于所述源文件的文件类型,在存储所述源文件对应真实数据的从节点磁盘上进行硬链接操作和/或数据复制操作,以将所述真实数据对应关联到所述临时文件中;最后,将所述临时文件重命名为目标文件,并删除所述源文件,完成不同主节点组列表之间的文件重命名操作,尽量保持了原有的文件系统的语义,同时上层用户可以无感知的继续使用文件系统。
技术领域
本申请涉及计算机领域,尤其涉及一种用于分布式文件系统执行重命名操作的技术。
背景技术
随着信息技术的不断普及和深入化应用,越来越多的人们习惯使用计算机进行传输以及存储文件。为了区分每个文件的不同以及便于查找文件,每个文件都设定了自己的名称。但通常情况下,同一个文件名是不能标注在两个文件上的,或者在文件名出现冲突的情况下,就需要使用重命名功能。在单机系统或分布式系统中,重命名包括文件名变化的情况,也包括文件路径变化的情况(即文件移动)。在分布式系统中将命名空间进行分布式,使其构成一个联盟(Federation),从而实现分布式系统的可扩展性。而Federation中进行重命名(Rename)操作只支持同一主节点组列表(volume)上的Rename,而不支持volume间进行的Rename操作。
发明内容
本申请的目的是提供一种用于分布式文件系统执行重命名操作的方法与设备,以解决在不同主节点组列表间进行文件或目录重命名操作的问题。
根据本申请的一个方面,提供了一种用于分布式文件系统执行文件重命名操作的方法,包括:
获取文件重命名请求,并解析所述重命名请求;
当所述重命名请求为不同主节点组列表之间的文件重命名请求,则从源主节点组列表中获取源文件的文件锁,并在目标主节点组列表中创建临时文件并获取所述临时文件的文件锁;
基于所述源文件的文件类型,在存储所述源文件对应真实数据的从节点磁盘上进行硬链接操作和/或数据复制操作,以将所述真实数据对应关联到所述临时文件中;
将所述临时文件重命名为目标文件,并删除所述源文件。
根据本申请的另一个方面,提供了一种用于分布式文件系统执行目录重命名操作的方法,包括:
获取目录重命名请求,并解析所述重命名请求;
当所述重命名请求为不同主节点组列表之间的目录重命名请求,则从源主节点组列表中源目录的目录锁,并在目标主节点组列表中创建临时目录并在所述临时目录下创建临时文件,并获取所述临时目录的目录锁;
扫描所述源目录,以获取所述源目录的所有源文件,基于所述源文件的文件类型,在存储所述源文件对应真实数据的从节点磁盘上进行硬链接操作和/或数据复制操作,以将所述真实数据对应关联到所述临时文件中;
将所述临时文件重命名为目标文件,基于所述目标文件将所述临时目录重命名为目标目录,并删除所述源目录。
根据本申请的又一方面,还提供了一种用于分布式文件系统执行文件重命名操作的设备,包括:
获取文件请求装置,用于获取文件重命名请求,并解析所述重命名请求;
创建临时文件装置,用于当所述重命名请求为不同主节点组列表之间的文件重命名请求,则从源主节点组列表中获取源文件的文件锁,并在目标主节点组列表中创建临时文件并获取所述临时文件的文件锁;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710192717.4/2.html,转载请声明来源钻瓜专利网。