一种基于分布式存储系统的文件快照方法及系统与流程

文档序号:15982330发布日期:2018-11-17 00:28阅读:181来源:国知局

本发明属于存储技术领域,尤其涉及一种基于分布式存储系统的文件快照方法及系统。

背景技术

快照(snapshot)是某个数据集在某一特定时刻的镜像,也称为即时拷贝,它是这个数据集的一个完整可用的副本。存储网络行业协会snia对快照的定义是:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。

在存储系统层次上,快照通常以逻辑单元为快照实体,以数据块(block)的粒度进行副本数据复制。在分布式存储中,快照以逻辑卷为快照实体,逻辑单元为粒度进行数据复制。快照生成的是原存储系统的逻辑副本,使用时需要借助原存储系统,虚拟视图技术是其典型代表。生成快照时,只需要产生一系列指向原存储系统的指针,因而创建时间极短;若在使用快照的过程中发生对原存储系统的写操作,将对应数据单元的原有数据存入快照,该数据单元分为快照中的某个时间点数据和当前数据,其他未发生更新的数据在快照和原存储系统中共享。虚拟视图的灵活性及使用存储空间的高效性,使得它成为快照技术的主流。

随着存储系统应用的普及,海量数据安全成为最基本的要求,当意外情形发生时,可能导致数据损坏的后果,因此需要在线方式对数据进行保护,文件快照便是其中一种在线恢复数据的方案之一,但是现有的快照方案功能单一,与常用的备份方案还有距离,而且可靠性较差。



技术实现要素:

本发明的目的在于提供一种基于分布式存储系统的文件快照方法,旨在解决现有技术中快照方案功能单一,与常用的备份方案还有距离,而且可靠性较差的问题。

本发明是这样实现的,一种基于分布式存储系统的文件快照方法,所述方法包括下述步骤:

在客户端生成快照处理指令,并将所述快照处理指令发送给服务器端;

在所述服务器端,对所述快照处理指令进行解析,判断所述快照处理指令的类型,所述快照处理指令包括快照设置指令、快照删除指令、快照查询指令和快照恢复指令;

当所述快照处理指令为快照设置指令时,在所述服务器端创建快照目录,并保留创建所述快照目录时目录的所有子目录和文件的元数据,所述快照设置指令携带有快照名、快照时间和目录路径;

将快照目录创建完成的信息反馈给所述客户端。

作为一种改进的方案,当所述快照处理指令为快照设置指令时,所述在所述服务器端创建快照目录的步骤之前还包括下述步骤:

判断所述目录是否存在嵌套现象,若是则结束,若否执行所述在所述服务器端创建快照目录的步骤。

作为一种改进的方案,当所述快照处理指令为快照删除指令时,所述方法还包括下述步骤:

判断目录下是否包含有所述快照删除指令中要求删除的快照内容;

判定目录下包含有所述快照删除指令中要求删除的快照内容时,删除响应的快照目录和与其对应的元数据,并向所述客户端反馈快照删除成功的信息;

判定目录下未包含有所述快照删除指令中要求删除的快照内容时,则向所述客户端反馈错误代码的信息。

作为一种改进的方案,当所述快照处理指令为快照查询指令时,所述方法还包括下述步骤:

从目录中查找获取所有的快照元数据,并将查找的所有快照元数据反馈给所述客户端。

作为一种改进的方案,当所述快照处理指令为快照恢复指令时,所述方法还包括下述步骤:

根据创建快照目录时的时间点,将创建的所有快照目录及其元数据复制到当前目前下。

本发明的另一目的在于提供一种基于分布式存储系统的文件快照系统,所述系统包括:

快照处理指令生成模块,内置在客户端内,用于生成快照处理指令;

快照处理指令发送模块,内置在客户端内,用于将所述快照处理指令发送给服务器端;

解析判断模块,内置于服务器端,用于对所述快照处理指令进行解析,判断所述快照处理指令的类型,所述快照处理指令包括快照设置指令、快照删除指令、快照查询指令和快照恢复指令;

快照目录创建模块,内置于服务器端内,用于当所述快照处理指令为快照设置指令时,创建快照目录;

元数据保留模块,内置于服务器端内,用于保留创建所述快照目录时目录的所有子目录和文件的元数据,所述快照设置指令携带有快照名、快照时间和目录路径;

信息反馈模块,内置于服务器端内,用于将快照目录创建完成的信息反馈给所述客户端。

作为一种改进的方案,当所述快照处理指令为快照设置指令时,所述系统还包括:

嵌套判断模块,内置于服务器端内,用于判断所述目录是否存在嵌套现象,若是则结束,若否执行所述在所述服务器端创建快照目录的步骤。

作为一种改进的方案,当所述快照处理指令为快照删除指令时,所述系统还包括:

删除操作判断模块,内置于服务器端内,用于判断目录下是否包含有所述快照删除指令中要求删除的快照内容;

删除模块,内置于服务器端内,用于判定目录下包含有所述快照删除指令中要求删除的快照内容时,删除响应的快照目录和与其对应的元数据,并向所述客户端反馈快照删除成功的信息;

错误代码信息反馈模块,内置于服务器端内,用于判定目录下未包含有所述快照删除指令中要求删除的快照内容时,则向所述客户端反馈错误代码的信息。

作为一种改进的方案,当所述快照处理指令为快照查询指令时,所述系统还包括:

元数据查找模块,内置于服务器端内,用于从目录中查找获取所有的快照元数据;

元数据反馈模块,内置于服务器端内,用于将查找的所有快照元数据反馈给所述客户端。

作为一种改进的方案,当所述快照处理指令为快照恢复指令时,所述系统还包括:

恢复模块,内置于服务器端内,用于根据创建快照目录时的时间点,将创建的所有快照目录及其元数据复制到当前目前下。

在本发明实施例中,在客户端生成快照处理指令,并将所述快照处理指令发送给服务器端;在服务器端,对所述快照处理指令进行解析,判断所述快照处理指令的类型;当快照处理指令为快照设置指令时,在所述服务器端创建快照目录,并保留创建所述快照目录时目录的所有子目录和文件的元数据,所述快照设置指令携带有快照名、快照时间和目录路径;将快照目录创建完成的信息反馈给所述客户端,从而实现分布式存储系统的文件快照,也实现快照在线备份,以及快速的快照恢复,提升数据安全性,同时也提升系统稳定性和可靠性。

附图说明

图1是本发明提供的基于分布式存储系统的文件快照方法的实现流程图;

图2是本发明提供的基于分布式存储系统的文件快照系统的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

图1示出了本发明提供的基于分布式存储系统的文件快照方法的实现流程图,其具体包括下述步骤:

在步骤s101中,在客户端生成快照处理指令,并将所述快照处理指令发送给服务器端。

在步骤s102中,在所述服务器端,对所述快照处理指令进行解析,判断所述快照处理指令的类型,所述快照处理指令包括快照设置指令、快照删除指令、快照查询指令和快照恢复指令。

在步骤s103中,当所述快照处理指令为快照设置指令时,在所述服务器端创建快照目录,并保留创建所述快照目录时目录的所有子目录和文件的元数据,所述快照设置指令携带有快照名、快照时间和目录路径。

在步骤s104中,将快照目录创建完成的信息反馈给所述客户端。

其中,分布式存储系统提供文件快照功能,文件快照功能主要应用于文件系统中,支持对某个目录及目录下所有文件,在某个时间点进行快照,可用文件快照将目录及文件快速恢复到快照时间点。

在该实施例中,该快照功能,即文件数据的一个完全可用的拷贝,该拷贝包括作用目录下所有文件在某个时间点的映像,也可以是文件的一个副本,也可以是一个文件的复制品。

在该实施例中,客户端用户可以对一个目录设置多次快照,根据快照时间点进行数据恢复。

在本发明实施例中,当所述快照处理指令为快照设置指令时,所述在所述服务器端创建快照目录的步骤之前还包括下述步骤:

判断所述目录是否存在嵌套现象,若是则结束,若否执行所述在所述服务器端创建快照目录的步骤;

其中,文件快照不支持嵌套设置,因此,在本申请中设置快照之前,首先确定是否有嵌套情形。

在本发明实施例中,当所述快照处理指令为快照删除指令时,所述方法还包括下述步骤:

(1)判断目录下是否包含有所述快照删除指令中要求删除的快照内容;

(2)判定目录下包含有所述快照删除指令中要求删除的快照内容时,删除响应的快照目录和与其对应的元数据,并向所述客户端反馈快照删除成功的信息;

(3)判定目录下未包含有所述快照删除指令中要求删除的快照内容时,则向所述客户端反馈错误代码的信息。

在本发明实施例中,当所述快照处理指令为快照查询指令时,所述方法还包括下述步骤:

从目录中查找获取所有的快照元数据,并将查找的所有快照元数据反馈给所述客户端。

在本发明实施例中,当所述快照处理指令为快照恢复指令时,所述方法还包括下述步骤:

根据创建快照目录时的时间点,将创建的所有快照目录及其元数据复制到当前目前下。

图2示出了本发明提供的基于分布式存储系统的文件快照系统的结构框图,为了便于说明,图中仅给出了与本发明实施例相关的部分。

基于分布式存储系统的文件快照系统包括:

快照处理指令生成模块11,内置在客户端内,用于生成快照处理指令;

快照处理指令发送模块12,内置在客户端内,用于将所述快照处理指令发送给服务器端;

解析判断模块13,内置于服务器端,用于对所述快照处理指令进行解析,判断所述快照处理指令的类型,所述快照处理指令包括快照设置指令、快照删除指令、快照查询指令和快照恢复指令;

快照目录创建模块14,内置于服务器端内,用于当所述快照处理指令为快照设置指令时,创建快照目录;

元数据保留模块15,内置于服务器端内,用于保留创建所述快照目录时目录的所有子目录和文件的元数据,所述快照设置指令携带有快照名、快照时间和目录路径;

信息反馈模块16,内置于服务器端内,用于将快照目录创建完成的信息反馈给所述客户端。

其中,当所述快照处理指令为快照设置指令时,所述系统还包括:

嵌套判断模块17,内置于服务器端内,用于判断所述目录是否存在嵌套现象,若是则结束,若否执行所述在所述服务器端创建快照目录的步骤。

当所述快照处理指令为快照删除指令时,所述系统还包括:

删除操作判断模块18,内置于服务器端内,用于判断目录下是否包含有所述快照删除指令中要求删除的快照内容;

删除模块19,内置于服务器端内,用于判定目录下包含有所述快照删除指令中要求删除的快照内容时,删除响应的快照目录和与其对应的元数据,并向所述客户端反馈快照删除成功的信息;

错误代码信息反馈模块20,内置于服务器端内,用于判定目录下未包含有所述快照删除指令中要求删除的快照内容时,则向所述客户端反馈错误代码的信息。

当所述快照处理指令为快照查询指令时,所述系统还包括:

元数据查找模块21,内置于服务器端内,用于从目录中查找获取所有的快照元数据;

元数据反馈模块22,内置于服务器端内,用于将查找的所有快照元数据反馈给所述客户端。

当所述快照处理指令为快照恢复指令时,所述系统还包括:

恢复模块23,内置于服务器端内,用于根据创建快照目录时的时间点,将创建的所有快照目录及其元数据复制到当前目前下。

在该实施例中,上述各个模块的功能如上述方法实施例所记载,在此不再赘述。

在本发明实施例中,在客户端生成快照处理指令,并将所述快照处理指令发送给服务器端;在服务器端,对所述快照处理指令进行解析,判断所述快照处理指令的类型;当快照处理指令为快照设置指令时,在所述服务器端创建快照目录,并保留创建所述快照目录时目录的所有子目录和文件的元数据,所述快照设置指令携带有快照名、快照时间和目录路径;将快照目录创建完成的信息反馈给所述客户端,其具有如下技术效果:

(1)从用户易用性及系统性能方面,快照支持在线备份,可以迅速建立/恢复,并可用作传统备份和归档的数据源,可以缩小或消除备份窗口;

(2)从数据安全性及系统可靠性方面,文件快照功能对系统有灵活和频繁的恢复点,可以选择不同时间点的快照进行恢复数据;

(3)文件快照功能为用户执行对数据的辅助操作(如归档之间的审计、报告或升级测试、数据挖掘等)提供一份接近实况数据的拷贝,用以给辅助操作的系统使用,既保护生产系统又重新定义了备份数据的用途。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1