【技术实现步骤摘要】
本专利技术涉及计算机文件系统的快照方法,特别涉及计算机文件系统的 快照方法。
技术介绍
计算机文件系统快照技术已经获得越来越广泛的关注,并在文件系统的 备份、版本维护等管理需求中得到应用。快照提供了计算机文件系统在过去 某个时间点的一致性印象,通过快照,用户可以实现对文件系统历史版本的 访问、以及将文件系统回滚到历史版本等操作。此外,作为一种普遍的手段, 快照还能够有效地帮助计算机文件系统管理软件完成在线的文件系统备份、 故障后快速恢复等数据保护及管理功能。在本地文件系统中,对快照的支持通常分为文件系统级別与文件级別。如ext3cow、 elephant这两种文件系统均在文件级别快照的基础上提供了文 件系统级别的快照支持,而在ZFS中则只支持文件系统级别/子文件系统级 别快照。在网络存储环境下,现有的分布式文件系统对快照的支持则限于文 件系统级别,如VxFS、 GPFS、 SANFS等。虽然在SANFS中,还支持基于子 文件系统的快照,但是子文件系统基本上可以看作独立的文件系统,所以本 质上仍然是基于文件系统级别的。文件系统级别的快照与对文件级别的快照都存在各自的优缺点。其中, 文件系统级别的快照存在如下缺点1、 影响范围大,在文件系统级别执行快照相关操作(创建/删除/访问) 时,会影响所有用户对正常文件系统的访问,特别在分布式环境下,客户端 和访问进程数量大大加剧了快照相关操作的影响范围。2、 缺乏灵活性,文件系统中并非所有的数据都具有同样的快照需求, 用户无法根据实际需求,对需要备份或保留版本的目录有选择地创建快照。3、 消耗大量的存储资源,对整个文 ...
【技术保护点】
一种计算机文件系统快照的创建方法,为计算机文件系统中的指定目录创建快照,将创建快照后的相应目录称为快照集;所述快照的创建包括以下步骤:步骤1-1)、在计算机文件系统中,确定需要创建快照的目录;步骤1-2)、判断所述目录是否创 建过快照,若所述目录为第一次创建快照,则将所述目录的工作版本的根索引节点信息添加到快照集索引表的信息条目中,更新最近一次创建或者删除快照集的时间点为计算机系统的当前时间,然后执行下一步,若所述目录并非第一次创建快照,直接执行下一步; 步骤1-3)、分配一个新的索引节点作为所要创建的快照版本的根索引节点,并将所述工作版本的根索引节点的内容复制到新分配的索引节点中;步骤1-4)、将所述工作版本的写时拷贝链表复制到新创建快照的根索引节点上,然后将工作版本的写时拷贝链表 内容清空;步骤1-5)、将所述的快照版本的根索引节点的快照创建时间设置为计算机系统的当前时间;步骤1-6)、将所述的快照版本的根索引节点链接到所述目录的快照链表上。
【技术特征摘要】
1、一种计算机文件系统快照的创建方法,为计算机文件系统中的指定目录创建快照,将创建快照后的相应目录称为快照集;所述快照的创建包括以下步骤步骤1-1)、在计算机文件系统中,确定需要创建快照的目录;步骤1-2)、判断所述目录是否创建过快照,若所述目录为第一次创建快照,则将所述目录的工作版本的根索引节点信息添加到快照集索引表的信息条目中,更新最近一次创建或者删除快照集的时间点为计算机系统的当前时间,然后执行下一步,若所述目录并非第一次创建快照,直接执行下一步;步骤1-3)、分配一个新的索引节点作为所要创建的快照版本的根索引节点,并将所述工作版本的根索引节点的内容复制到新分配的索引节点中;步骤1-4)、将所述工作版本的写时拷贝链表复制到新创建快照的根索引节点上,然后将工作版本的写时拷贝链表内容清空;步骤1-5)、将所述的快照版本的根索引节点的快照创建时间设置为计算机系统的当前时间;步骤1-6)、将所述的快照版本的根索引节点链接到所述目录的快照链表上。2、 根据权利要求1所述的计算机文件系统快照的创建方法,其特征 在于,所述的快照集索引表用于维护计算机文件系统中所有快照集的索引<吕息。3、 根据权利要求1所述的计算机文件系统快照的创建方法,其特征 在于,所述的最近一次创建或者删除快照集的时间点为整个计算机文件系 统中维护的一个全局信息,所述的最近一次创建或者删除快照集的时间点 记录了最近一次快照集总数量发生变化的时间。4、 根据权利要求1所述的计算机文件系统快照的创建方法,其特征 在于,所述的快照版本的根索引节点中包括有以下阈值快照创建时间、 最近的一个旧版本索引、最近的一个新版本索引,通过最近的一个旧版本 索引和最近的一个新版本索引,可将对应快照集中所有版本通过将根索引 节点按照时间顺序链接成一个快照链表。5、 一种计算机文件系统快照的删除方法,为计算机文件系统中的指定目录删除指定的快照版本,包括以下步骤步骤2-l)、在计算机文件系统中,在指定目录的快照链表中选择要删 除的快照版本;步骤2-2)、查找所要删除的快照版本的相邻新版本,在所述的相邻新 版本上查询写时拷贝链表,得到在相邻新版本以及后续版本中不会被使用 的块或索引节点的信息;所述的信息包括类型,块号或索引节点号,出生 时间;步骤2-3)、查找所要删除快照版本的相邻旧版本,从所述的相邻旧版 本中找到所记录的旧版本快照创建时间,若所要删除的快照版本不存在相 邻旧版本,则所要查找的旧版本快照创建时间为0;步骤2-4 )、将所述的相邻新版本的写时拷贝链表中的块或索引节点的 出生时间逐个与步骤2-3)的查询结果进行比较,若一个块或索引节点的 出生时间大于所述的查询结果,则在写时拷贝链表中删除该块或索引节点 的信息,并回收对应的块或索引节点资源;步骤2-5 )、将待删除快照版本的写时拷贝链表合并到相邻新版本的写 时拷贝链表中;步骤2-6)、将待删除快照版本从快照链表中移出,并将代表相邻新版 本的根索引节点与代表相邻旧版本的根索引节点相连。6、 根据权利要求5所述的计算机文件系统快照的删除方法,其特征 在于,所述的写时拷贝链表对应一个快照版本,在所述的写拷贝链表中记 录着所对应的快照版本因修改而引发写时拷贝后,在本版本及后续的版本 中不会被使用的块或索引节点的信息,所述的各块或各索引节点信息均分 别通过三元组<类型,块号/索引节点号,出生时间>...
【专利技术属性】
技术研发人员:董欢庆,刘浏,张敬亮,张军伟,张建刚,
申请(专利权)人:中国科学院计算技术研究所,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。