磁盘快照的方法

文档序号:6564547阅读:477来源:国知局
专利名称:磁盘快照的方法
技术领域
本发明是关于服务器,尤指一种服务器的存储器的内核空间设有快照操 作模块,当服务器进行磁盘快照时,存储器的使用者空间提供储存写入同步 复制对照表及其对照信息的方法,即特别是有关于一种磁盘快照的方法。
背景技术
当前一般操作系统都支持一种磁盘快照(Snapshot)技术,又可称为磁 盘区阴影复制服务(Volume Shadow Copy Services ),所谓磁盘快照是属于一 种文件系统(file system)的保留数据技术,不同于一般的数据备份技术需 要复制的动作,磁盘快照是在任意时间点,将硬盘的磁盘巻册(磁盘巻册 (Volume)是指硬盘目前有数据的磁盘区块(chunk))进行快速的文件系统 备份,且当进行磁盘快照时,并不牵涉到任何文件复制动作。且将目前使用 中的文件系统的数据结构中的整个目录结构保留下来。如此,以实时性地对 硬盘建立不同时间点版本的磁盘巻册的磁盘快照,不仅可以弥补传统备份机 制的不足,此外,即使硬盘发生损毁或中毒等意外,管理者可以选择发生损 毁或中毒前的磁盘快照,取代原先的磁盘巻册(Volume),让损害降至最低。
承上所述,当硬盘在进行磁盘快照时,并不会实际进行文件的复制动作, 而是当磁盘巻册的磁盘区块有所变动时,先复制磁盘巻册的磁盘区块内的原 始数据到硬盘中不属于磁盘巻册的其它可用的磁盘区块中,再修改磁盘巻册 的磁盘区块内的原始数据成为修改数据,另在服务器的一存储器提供操作系 统(如Linux)内部核心(kernel)所使用的存储器空间(以下简称内核空 间)中,建立一写入同步复制对照表(Copy-On-Write (简称COW) Table ), 写入同步复制对照表是记录每一 个磁盘区块的原始数据被写入到硬盘中的 那 一 个磁盘区块中的信息。而前述技术被称为写入同步复制(Copy-On-Write,COW)技术。
但是,操作系统的核心的存储器空间有限,且不会因为系统存储器增加 而变大,当磁盘巻册更动的磁盘区块越多时,写入同步复制对照表占用搡作 系统的核心的储存空间就越大。当磁盘巻册分别在不同的时间进行磁盘快 照,或^磁盘巻册的容量急速增加后,内核空间将会被大量的写入同步复制对 照表所占用,使得内核空间被耗尽,进而导致操作系统异常崩溃。故,如何 设计出另一种磁盘快照的方法,以有效地解决上述的诸多问题,实为目前刻 不容緩而亟待解决的 一 重要课题。

发明内容
有鉴于前述的诸多问题,发明人经过长久努力研究与实验,终于开发设 计出本发明的 一种磁盘快照的方法,以通过本发明有效地解决内核空间耗尽 所导致操作系统异常崩溃的问题。
本发明的主要目的,是提供一种磁盘快照的方法,该方法是应用在一服 务器中,该服务器包含有至少一个存储器及至少一个硬盘,其中,该存储器 设有一内核空间及一使用者空间,且该内核空间中设有一快照操作模块,当 服务器进行磁盘快照时,接收快照操作模块所发出的一建立指令,将硬盘目前具有数据的所有磁盘区块(chunk)则规划为 一磁盘巻册,并在硬盘中规 划出供储存磁盘巻册各磁盘区块的原始数据的磁盘快照区,每当磁盘巻册的 磁盘区块内的原始数据需要被修改时,先将原始数据复制到磁盘快照区中, 再将磁盘巻册的原始数据进行修改并作为修改数据,再在使用者空间建立写 入同步复制对照表,及在写入同步复制对照表中写入对照信息,而对照信息 是原始数据被储存在磁盘快照区的那一个磁盘区块的信息。
其中,所述磁盘快照区的容量大小,则等于该磁盘巻册所有的磁盘区块 的数据被复制到该磁盘快照区中所需的容量大小。
而且,所述写入同步复制对照表包括复数个对照信息,每一个该对照信 息包含一原始地址及对应原始地址的 一快照地址。
本发明的另一目的,当服务器接收快照操作模块所发出的一查询指令, 即表示欲对磁盘快照区进行存取,此时,先读取储存在使用者空间的写入同 步复制对照表,取得各对照信息,以根据各对照信息确定磁盘巻册的各磁盘 区块的原始数据,是仍存在磁盘巻册或已被储存到磁盘快照区的磁盘区块中。
本发明的又一目的,当服务器接收快照操作模块所发出的一删除指令 时,则删除在使用者空间的写入同步复制对照表及磁盘快照区。
本发明的有益效果在于由于快照操作i^莫块占用内核空间的储存容量是 固定的大小,并不会随着磁盘巻册被修改的磁盘区块的数量增加而改变,且 写入同步复制对照表是被储存在储存容量远大于内核空间的使用者空间中, 使得内核空间不再被写入同步复制对照表所占用,即可达到节省内核空间的 储存容量的目的,同时,服务器在进行磁盘快照时,不会导致服务器异常, 用以达到稳定服务器的目的。
为使审查员能对本发明的目的、技术特征及其功效,有更进一步的认识 与了解,特举实施例,并配合图式,详细说明如下。


图l是本发明的架构示意图2是本发明进行磁盘快照的动作流程图3是本发明的原始数据需要被修改的动作流程图;及
图4是本发明的对磁盘快照区进行存取的动作流程图。
主要组件符号说明
服务器.........4 存储器.........5
内核空间......50 使用者空间…52
硬盘............6 磁盘巻册……60
磁盘快照区...6具体实施例方式
本发明是一种磁盘快照的方法,请参阅图l及图2所示,该方法是应用 在一服务器4中,该服务器4包含有至少一个存储器5及至少一个硬盘6, 其中存储器5事先规划出 一 内核空间(Kernel Space )50及一使用者空间(User Space) 52,且在内核空间50设有一快照操作模块,当使用者欲对硬盘6进 行磁盘快照时,则使用者通过操作快照操作模块,使得快照操作模块产生一 建立指令,之后,当服务器4接收建立指令时,服务器4依下列步骤进行磁 盘快照的处理
步骤11:硬盘6目前具有数据的所有磁盘区块(chunk)规划为一磁盘 巻册(Volume) 60;
步骤12:硬盘6中规划出磁盘快照区62,磁盘快照区62的容量大小, 则等于磁盘巻册60所有的磁盘区块的原始数据被复制到磁盘快照区62中所 需的容量大小;及
步骤13:在使用者空间52建立写入同步复制对照表(Copy-On-Write (简称COW) Table),写入同步复制对照表包括复数个对照信息,每一个 对照信息分别包括包含一原始地址及对应该原始地址的快照地址。
在本发明的一实施例中,请参阅图3所示,服务器4建立磁盘快照区62 后,每当磁盘巻册60的磁盘区块内的原始数据需要被修改时,服务器4依 下列步骤进行处理,包括
步骤20:先将需要被修改的磁盘区块的原始数据复制到磁盘快照区62 中的其中 一 个磁盘区块中作为备份数据;
步骤21:再将磁盘巻册60的原始数据修改成为修改数据;及
步骤22:将修改数据的地址作为原始地址,将备份数据的地址,作为对 应原始地址的快照地址,将包含原始地址及快照地址的对照信息,写入使用 者空间52的写入同步复制对照表中,即结束。
在该实施例中,请参阅图4所示,当服务器4欲对磁盘快照区62进行
读取,是依下列步骤进行处理
步骤30:接收操作快照操作模块所发出的查询指令;
步骤31:读取储存在使用者空间52的写入同歩复制对照表,取得各对 照信息;及
步骤32:根据各对照信息,用以取得一对应该对照信息的备份数据。
在该实施例中,当服务器4欲删除磁盘快照区62时,是先接收快照操 作模块所发出的一删除指令,再删除在使用者空间52的写入同步复制对照 表及在磁盘快照区62的备份数据。
在该实施例中,当服务器4欲对》兹盘巻册60中已被写入修改数据的磁 盘区块进行修改时,是直接对已被写入修改数据的磁盘区块进行修改,并无 需将修改数据储存到磁盘快照区62中,藉以保留磁盘巻册60中已被写入修 改数据的磁盘区块的备份数据,如此,当服务器4欲对原始地址进行数据恢 复时,读取写入同步复制对照表,取得对应该原始地址的对照信息,取得对 应该原始地址的快照地址及取得对应该快照地址的备份数据,将备份数据覆 盖到原始地址,即可恢复原始地址。
由上述可知,存储器5的使用者空间52是储存写入同步复制对照表, 由于使用者空间52的储存容量比内核空间50的储存容量大,因此,使用者 空间52不易被写入同步复制对照表所占满,又,内核空间50只储存快照操 作模块,而快照操作模块通常只会占用到极小部分的储存空间,使得内核空 间50不再被写入同步复制对照表所占用,即可达到节省内核空间50的储存 容量的目的,同时,服务器4在进行磁盘快照时,服务器4即不易发生异常, 用以达到稳定服务器4的目的。
以上所述,仅为本发明的一具体实施例,本发明的特征并不局限于此, 任何熟悉该项技艺者在本发明领域内,可轻易想到的变化或修饰,都应涵盖 在本发明的保护范围中。
权利要求
1、一种磁盘快照的方法,是应用在一服务器中,该服务器包含有至少一个存储器及至少一个硬盘,其中该存储器事先规划出一内核空间及一使用者空间,且在该内核空间设有一快照操作模块,其特征在于,当该服务器接收快照操作模块所发出的一建立指令时,该服务器依下列步骤进行磁盘快照的处理将硬盘目前具有数据的所有磁盘区块规划为一磁盘卷册;在硬盘中规划出一磁盘快照区,该磁盘快照区的容量大小,则等于该磁盘卷册所有的磁盘区块的数据被复制到该磁盘快照区中所需的容量大小;及在该使用者空间建立一写入同步复制对照表,该写入同步复制对照表包括复数个对照信息,每一个该对照信息包含一原始地址及对应原始地址的一快照地址。
2、 如权利要求1所述的方法,其特征在于,该服务器建立该磁盘快照 区后,每当该磁盘巻册的该磁盘区块内的该原始数据需要被修改时,该服务 器依下列步骤进行处理,包括先将需要被修改的该磁盘区块的原始数据复制到该磁盘快照区中的其中 一个磁盘区块中作为 一备份数据;再将该磁盘巻册的该原始数据修改成为一修改数据;及 将该修改数据的地址作为该原始地址,将该备份数据的地址,作为对应该原始地址的快照地址,将包含该原始地址及该快照地址的该对照信息,写入该使用者空间的写入同步复制对照表中。
3、 如权利要求2所述的方法,其特征在于,当该服务器欲对该磁盘快 照区进行读取,是依下列步骤进行处理接收该操作快照操作模块所发出的一查询指令;读取储存在该使用者空间的该写入同步复制对照表,取得各该对照信 息;及 根据各该对照信息,用以取得一对应该对照信息的备份数椐。
4、 如权利要求2所述的方法,其特征在于,当该服务器接收快照操作 模块所发出的 一删除指令时,则删除在该使用者空间的写入同步复制对照表 及在该磁盘快照区的该备份数据。
5、 如权利要求2所述的方法,其特征在于,当该服务器对该磁盘巻册 中已被写入该修改数据的磁盘区块进行修改时,是直接对已被写入该修改数 据的磁盘区块进行修改。
6、 如权利要求2所述的方法,其特征在于,当该服务器对该原始地址 进行数据恢复时,该服务器是依下列步骤进行处理读取该写入同步复制对照表,取得对应该原始地址的对照信息; 取得对应该原始地址的快照地址及取得对应该快照地址的备份数据;及 将该备份数据覆盖到该原始地址,即可恢复原始地址。
全文摘要
本发明提供一种磁盘快照的方法,该方法应用在服务器中,且在服务器的存储器的内核空间中设有一快照操作模块,当服务器进行磁盘快照时,是依快照操作模块的一建立指令,将服务器的硬盘目前具有数据的所有磁盘区块规划为一磁盘卷册,及在硬盘中规划出磁盘快照区,此后,每当磁盘卷册的磁盘区块内的原始数据需要被修改时,先将原始数据复制到磁盘快照区的磁盘区块,再对磁盘卷册的原始数据进行修改,再在存储器的使用者空间中建立写入同步复制对照表,及在写入同步复制对照表写入对照信息,而对照信息是原始数据被储存在磁盘快照区的那一个磁盘区块的信息。本发明可达到节省内核空间的储存容量的目的,同时还可以稳定服务器。
文档编号G06F11/14GK101201774SQ20061016948
公开日2008年6月18日 申请日期2006年12月15日 优先权日2006年12月15日
发明者陈志伟 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1