[发明专利]文件系统的快照方法和装置有效
| 申请号: | 201310378894.3 | 申请日: | 2013-08-27 |
| 公开(公告)号: | CN103473277A | 公开(公告)日: | 2013-12-25 |
| 发明(设计)人: | 王姝;邱鑫 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 文件系统 快照 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,尤其涉及一种文件系统的快照方法和装置。
背景技术
随着计算机技术在各个领域的广泛应用,信息量迅速增长,企业的生产以及个人的生活对计算机数据的依赖性逐步增强。因此,为了能够实现在线存储并防范数据的丢失,快照技术应运而生。
目前的快照技术大致可分成两类,分割镜像(Split Mirror)和写时复制(Copy-On-Write,COW)。其中,分割镜像快照技术在快照时间点到来之前,要为源数据卷创建并维护一个完整的镜像卷。在快照时间点到来时,镜像操作被停止,镜像卷转化为快照卷,获得一份数据快照。快照卷在完成数据备份等应用后,将与源数据卷重新同步,重新成为镜像卷。对于要同时保留多个时间点快照的源数据卷,则必须预先为其创建多个镜像卷。写时复制快照技术需要预留一些存储空间,建立快照卷。当我们为一个源数据卷创建一个快照之后,这些预留的存储空间用来存储被更新源数据卷的旧数据。写时复制快照在初始化的过程中仅仅创建用来描述源数据卷位置的指针信息(元数据),而不是完整的将源数据卷拷贝过来。
在实现文件系统的快照的过程中,发明人发现现有技术中至少存在如下问题:对于分割镜像快照技术,预先创建镜像卷占用了大量的存储资源,造成资源的浪费。对于写时复制快照技术,在创建快照时需要复制元数据,增加创建快照的时间,以及占用大量的存储空间。
发明内容
本发明的实施例提供一种文件系统的快照方法和装置,缩短了创建快照的时间,以及节省了快照占用的存储空间。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明提供一种文件系统的快照方法,包括:
确定待创建快照的目录;
在所述目录的元数据中创建快照索引;所述快照索引中包括快照标识、快照时间戳和快照变化列表;其中,所述快照标识为所述目录创建所述快照索引的标识;所述快照时间戳为所述目录创建所述快照索引的系统时间;所述快照变化列表包括新建列表和删除列表,所述新建列表包括创建所述快照索引之后,在所述目录中新建文件以及修改后的文件的元数据的指针;所述删除列表包括所述目录创建所述快照索引之后,在所述目录中被删除文件以及被修改文件的原始文件的元数据的指针。
在第一方面的第一种可能的实现方式中,所述在所述目录的元数据中创建快照索引包括:
根据所述目录的元数据中的快照属性判断是否已创建快照,所述快照属性用于指示所述目录是否已创建快照;
当所述快照属性指示未创建快照时,在所述目录的元数据中添加所述快照索引,将所述快照索引中的快照标识置为预定值,并为所述快照索引分配前向指针和后向指针,将所述前向指针和后向指针均设为空;其中,所述前向指针用于指向在所述目录的元数据中,所述目录的前一个快照索引的后向指针;所述后向指针用于指向在所述目录的元数据中,所述目录的下一个快照索引的前向指针;
当所述快照属性指示已创建快照时,在所述目录的元数据中添加所述快照索引,并将所述快照索引的前向指针指向前一个快照索引的后向指针,将所述前一个快照索引的后向指针指向所述快照索引的前向指针。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述目录的元数据中创建快照索引之后,所述方法还包括:
根据快照标识和快照时间戳中的至少一种,查找所述目录的元数据中待删除的快照索引;
判断所述待删除的快照索引的前向指针和后向指针是否均为空;
当所述待删除的快照索引的前向指针和后向指针均为空时,将所述待删除的快照索引删除;
当所述待删除的快照索引的前向指针为空,且所述待删除的快照索引的后向指针不为空时,将所述待删除的快照索引的快照变化列表存入下一个快照索引的快照变化列表中,并将所述待删除的快照索引删除,其中,所述下一个快照索引的前向指针设为空;
当所述待删除的快照索引的后向指针为空,所述待删除的快照索引的前向指针不为空,或者当所述待删除的快照索引的前向指针和后向指针均不为空时,将所述待删除的快照索引的快照变化列表存入前一个快照索引的快照变化列表中,并将所述待删除的快照索引删除,其中,所述前一个快照索引的后向指针指向所述待删除的快照索引的下一个快照索引的前向指针,所述下一个快照索引的前向指针指向所述前一个快照索引的后向指针。
在第一方面的第三种可能的实现方式中,在所述目录的元数据中创建快照索引之后,所述方法还包括:
获取在所述目录下待处理的文件,以及对所述待处理的文件的操作;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310378894.3/2.html,转载请声明来源钻瓜专利网。





