储存虚拟化电脑系统及储存系统中管理资料快照影像方法

文档序号:6586680阅读:286来源:国知局
专利名称:储存虚拟化电脑系统及储存系统中管理资料快照影像方法
技术领域
本发明是有关于储存系统中资料储存的技术,如磁碟阵列储存系统,更特别地,是 有关于使用资料快照(sn即shot)拷贝技术的储存系统中快照资料的管理;特别是设计一 种储存虚拟化电脑系统及其储存系统中管理资料快照影像的方法(Method of Managing Data Snapshot Images in A StorageSystem)。
背景技术
资料(资料即数据,以下均称为资料)储存与资料安全在资讯发达的现今愈来 愈重要,也因此在储存媒体的技术上有许多的发展,其一应运而生者为RAID (Redundant Array of Inexpensive/Ind印endent Disks,磁碟阵列)。磁碟阵列的优点是为提供更好的 资料储存效能与资料错误容忍度(Fault Tolerance),通过将工作量平行分散到多个实体 磁碟机中可以达到较好的效能,藉由资料的多重操作,当一个或多个磁碟机或磁区发生问 题时,可以藉由其他的磁碟机重建资料,达到错误容忍度。 在目前的储存系统中,各种技巧是被使用,"快照(sn即shot)"是为其中之 一。 一般而言,所谓的快照巻(Sn即shot-Volume)指的是基巻(Base-Volume)或资料源 巻(Source-Volume)在某一特定时间点的状态,因此,快照巻可说为备份影像,即基巻 (Source-Volume)的快照。 快照一般会搭配写入复制程序(copy-onirite),即快照只有在资料有写入(更 新)时才会复制写入目标资料区块内的原始资料至快照影像(Sn即shot-Image)区,而非复 制整个基巻的资料,因而,每个时点其快照巻是由所对应的快照影像以及基巻内未复制于 该快照影像内的资料区块所组成。 请参阅图1A 1C所示,是显示出现有习知技术的方块图,其中,图IA是显示形成 一快照巻-A的时点的基巻的状态;图IB是显示在其后基巻中资料区块(Data-Block) 212, 218, 216是被更新,因而在进行更新前其内原始存放的DATA-B,DATA-E和DATA-D等资料将 先复制于快照影像#A中,其余未被更新的资料则无须复制。亦即,快照巻-A是由快照影 像#A以及基巻中未曾复制至快照影像#A的资料区块210、214所组成,使显示出图1A中 当时基巻的资料状态。接着图IC是显示形成快照巻-B的时点,且形成后基巻的资料区块 214、212被更新的情况。在进行资料区块214的写入复制程序时,此资料区块214内的资 料DATA-C需要复制至快照影像#A及快照影像#B。而资料区块212,因先前已曾进行过写 入复制程序将资料复制于快照影像SA,请注意,虽然当时所存放的资料是为DATA-B,但此 时是仅需将资料区块212现存的DATA-G复制于快照影像#B中即可。因而,此时快照巻-A 是由快照影像#A以及基巻内未复制于该快照影像#A内的资料区块210所组成,以呈现如 图1A中当时基巻的资料状态。而快照巻-B则由快照影像#B以及基巻内未复制于该快照影像ftB内的资料区块210、216、218所组成,以呈现如图1B中当时基巻的资料状态。
由前述可知,每个时点快照巻是由该时点的快照影像以及基巻未复制于该时点快 照影像的资料区块所组成,故在进行资料写入操作时,需先将该资料区块的资料复制于"所 有"未复制过该资料区块的快照影像内,意即,除了最新的快照影像外亦须往前逐一对旧快 照影像进行查核,以决定需对那些快照影像进行写入复制程序,相当复杂且繁琐。并且,当 所设定或启动快照的时点越多,所存放的快照将越发庞大,此将引发储存空间不足以及管 理上的问题。因此,如何有效管理快照储存空间以提高其工作效率,已成为业者目前重要的 课题之一。 另外,在目前具有快照功能的储存系统中所使用的通讯协定,皆仅能使用单一种 硬盘,而有或是硬盘品质或效能虽高但价格亦高,或是硬盘价格虽便宜但品质或效能较差 的问题。例如,小型电脑系统介面(SCSI)的磁碟机品质虽高但价格亦高,而串列先进技术 接取介面(SATA)虽便宜但品质较差。然而在储存系统中,资料源巻为经常使用的储存空 间,快照巻则为储存备份的储存空间因而使用频率较低。若能将资料源巻存放在高品质或 高效能的硬盘中,且将快照巻存放在品质或效能较差的硬盘中,则可降低系统价格且对系 统的品质或效能影响不大。但是,若为了要达成同时可使用两种不同通讯协定的硬盘的目 的而在储存系统中配置两种不同的通讯协定介面的话,又会大幅增加系统的设计及制造成 本。因此,如何有效管理快照储存空间,同时考虑成本与效能问题,亦为业者目前重要的课 题之一。 有鉴于上述现有技术存在的缺陷,本发明人基于从事此类产品设计制造多年丰富 的实务经验及专业知识,并配合学理的运用,积极加以研究创新,以期创设一种新的储存虚 拟化电脑系统及储存系统中管理资料快照影像的方法,使其更具有实用性。经过不断的研 究、设计,并经反复试作样品及改进后,终于创设出确具实用价值的本发明。

发明内容
本发明的目的在于,提供一种储存虚拟化电脑系统,所要解决的技术问题是使其
能够有效率地运用快照储存空间。 本发明的另一目的在于,提供一种用于一储存系统中管理资料快照影像的方法。
鉴于前述,本发明的目的是在于能有效率地运用快照储存空间。本发明的目的及 解决其技术问题是采用以下技术方案来实现的。为达到上述目的,本发明提供了一种储存 虚拟化电脑系统,其包含一主机单元,以发送一输出入要求;一外部储存虚拟化控制器, 是耦接至该主机单元以执行输出入操作,来回应于该输出入要求;以及多个实体储存装置, 其每一个是经由一串列附接小型电脑系统介面(Serial Attached SCSI)连结耦接至该外 部储存虚拟化控制器,以经由该外部储存虚拟化控制器提供资料储存空间给该储存虚拟化 电脑系统;其中该外部储存虚拟化控制器执行一快照功能,使得以保存所述的多个实体储 存装置所构成的至少一资料源巻(Source-Volume)在一特定时点的资料状态,且所述的快 照功能是通过一区段分配系统而操作,该区段分配系统(SAS)是包含一区段分配表(SAT) 和至少一区块关联集(BAS),且该区块关联集是进行时间点备份的基础。
本发明的目的及解决其技术问题还可采用以下技术措施进一步实现。
前述的储存虚拟化电脑系统,其中所述的多个实体储存装置包含有至少一第一通讯协定实体储存装置和至少一第二通讯协定实体储存装置,该至少一第一通讯协定实体储 存装置和该至少一第二通讯协定实体储存装置皆通过该串列附接小型电脑系统介面连结 耦接至该外部储存虚拟化控制器。 前述的储存虚拟化电脑系统,其中所述的第一通讯协定为一串列附接小型电脑系
统介面通讯协定,且所述的第二通讯协定为一串列先进技术附接(SATA)通讯协定。 前述的储存虚拟化电脑系统,其中所述的资料源巻是储存在所述的至少一第一通
讯协定实体储存装置中,且该区段分配系统是储存在所述的至少一第二通讯协定实体储存
装置中。 前述的储存虚拟化电脑系统,其中所述的多个实体储存装置为一硬盘。 前述的储存虚拟化电脑系统,其中所述的区段分配表包含有一第一属性区块,用
以记载一区段分配系统识别符(SAS ID)与媒体区识别符(MediaExtent ID);—第一文件
表,用以记载指向每一区块关联集的资讯及每一区块关联集所关联的该资料源巻的资讯;
以及一描述资料栏位,用以储存管理该区段分配表的描述资料(metadata)。 前述的储存虚拟化电脑系统,其中所述的区段分配表还包含有一第一日志栏位,
用以存放一运作日志,以供该电脑系统发生错误或断电情形时可供该电脑系统恢复之用。 前述的储存虚拟化电脑系统,其中所述的每一区块关联集包含有一第二属性区
块(Attribute Block),用以记载此区块关联集识别符(BAS ID)和区块关联集大小以及区
块关联集相关设定资讯;一目录栏位(directory),记载一区块关联表级数(level)以及已
建置区块关联表的数量;一第二文件表(Folder Table),用以储存区块关联表;以及一资
料区,是用以存放至少一快照影像(Sn即shot Image)。 前述的储存虚拟化电脑系统,其中所述的区块关联集更包含有一第二日志 (Journal)栏位,是存放一运作日志,以供该电脑系统发生错误或断电情形时可供该电脑系 统恢复之用。 前述的储存虚拟化电脑系统,在收到要将资料写入该资料源巻中的第一位置的一 第一写入请求时,则通过一写入复制程序,以将该资料源巻中该第一位置的原资料以及该
资料源巻中该第一位置的该原资料的储存位置的资讯复制至一快照影像之后,再将该第一 写入请求中要写入的该资料写入该资料源巻中的该第一位置。 前述的储存虚拟化电脑系统,在收到比该第一写入请求晚的一第二写入请求而要 将资料写入该资料源巻中的该第一位置之时,则不进行该写入复制程序,直接将该资料写 入该资料源巻中的该第一位置。 本发明的另一 目的是提供一种用于一储存系统中管理资料快照影像的方法。依据 本发明提出的一种用于一储存系统中管理资料快照影像的方法,其包括以下步骤建立一 区段分配系统(SAS),包括至少一媒体区;在该媒体区中建立一区段分配表(SAT)及至少一 区块关联集(BAS),该区段分配表是包括记载指向该区块关联集的资讯的栏位,该区块关联 集是与一资料源巻关联,为对该资料源巻进行快照备份的基础,且该区块关联集是进行时 间点备份的基础;在该区块关联集中建立至少一区块关联表,该区块关联表是用以储存交 互对照参考资讯以与具有原始储存位置的备份资料相对应;以及当在收到要将资料写入一 资料源巻中的第一位置的一第一写入请求时,则通过一写入复制程序,以将该资料源巻中 该第一位置的原资料以及该资料源巻中该第一位置的该原资料的储存位置的资讯复制至一快照影像之后,再将该第一写入请求中要写入的该资料写入该资料源巻中的该第一位置 本发明的目的及解决其技术问题还可采用以下技术措施进一步实现。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的储存系统包含有
多个实体储存装置,且所述的多个实体储存装置包含有至少一第一通讯协定实体储存装置
和至少一第二通讯协定实体储存装置,该至少一第一通讯协定实体储存装置和至少一第二
通讯协定实体储存装置皆通过一串列附接小型电脑系统介面连结而耦接一储存虚拟化控制器。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的第一通讯协定为 一串列附接小型电脑系统介面通讯协定,且该第二通讯协定为一串列先进技术附接(SATA) 通讯协定。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的资料源巻是储存 在所述的至少一第一通讯协定实体储存装置中,且该区段分配系统是储存在所述的至少一 第二通讯协定实体储存装置中。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的所述的多个实体 储存装置为一硬盘。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的区段分配表包含 有一第一属性区块,用以记载一区段分配系统识别符(SAS ID)与媒体区识别符(Media Extent ID);—第一文件表,用以记载指向每一区块关联集的资讯及每一区块关联集所关 联的该资料源巻的资讯;以及一描述资料栏位,用以储存管理该区段分配表的描述资料 (metadata)。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的区段分配表还包 含有一第一日志栏位,用以存放一运作日志,以供一电脑系统发生错误或断电情形时可供 该电脑系统恢复之用。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的每一区块关联集 包含有一第二属性区块(Attribute Block),用以记载此区块关联集识别号码(BAS ID) 和区块关联集大小以及区块关联集相关设定资讯;一目录栏位(directory),记载一区块 关联表级数(level)以及已建置区块关联表的数量;一第二文件表(Folder Table),用以 储存区块关联表;以及一资料区,是用以存放至少一快照影像(Sn即shot Image)。
前述的用于一储存系统中管理资料快照影像的方法,其中所述的区块关联集还包 含有一第二日志(Journal)栏位,是存放一运作日志,以供一电脑系统发生错误或断电情 形时可供该电脑系统恢复之用。 前述的用于一储存系统中管理资料快照影像的方法,在收到比该第一写入请求晚 的一第二写入请求而要将资料写入该资料源巻中的该第一位置之时,则不进行该写入复制 程序,直接将该资料写入该资料源巻中的该第一位置。 前述的用于一储存系统中管理资料快照影像的方法,其还包含一清除(purge)资 料快照影像的步骤。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的清除步骤包含以 下步骤查核各区块关联表的设定;选择清除的标的;若有清除标的存在,则先合并相关的 快照影像;以及删除所选的区块关联表以及其指向的快照影像。
前述的用于一储存系统中管理资料快照影像的方法,其进一步包含的步骤有查 核一可利用空间是否已足够,若不够时,则重复所述的清除步骤,直到该可利用空间巳经足 够。 前述的用于一储存系统中管理资料快照影像的方法,其中若无适合清除标的,则 启动相对应的事件处置程序,该处置程序是包含的步骤中止该区块关联表的建置或令一 IO操作失效。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的设定是包含有所 述的区块关联表的一优先权设定或一储存有效期。 前述的用于一储存系统中管理资料快照影像的方法,其特征在于其还包含一修剪 (prune)资料快照影像的步骤。 前述的用于一储存系统中管理资料快照影像的方法,其中所述的修剪步骤是包含 以下步骤选取现存有效的区块关联表中最早者;查核所选取区块关联表的储存有效期; 以及若已期满,则将所选取区块关联表及其指向快照影像删除。 前述的用于一储存系统中管理资料快照影像的方法,其进一步包含的步骤有选 取下一个时间的区块关联表,重复上述该查核所选取区块关联表的储存有效期的步骤和所 述若已期满,则将所选取区块关联表及其指向快照影像删除的该步骤,直到所选取区块关 联表是落入有效期内。 本发明与现有技术相比具有明显的优点和有益效果。由以上技术方案可知,借由
上述技术方案,本发明至少具有下列优点其能够有效率地运用快照储存空间。 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,
而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够
更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。


图1A至图1C是显示出现有习知技术的方块图。
图2是显示出根据本发明一实施例的主要系统架构图。 图3是显示出根据本发明一实施例的一类似档案系统(file-system-line)结构 的方块图。 图4A至图4B是显示出根据本发明的一实施例的SAS架构图。 图5A至图5D是显示出根据本发明一实施例的执行PIT备份的方块图。 图6是显示出根据本发明的一实施例的建立SAS的步骤的流程图。 图7是显示出根据本发明的一实施例的延伸SAS的步骤的流程图。 图8是显示出根据本发明的一实施例的建立BAS的步骤的流程图。 图9A至图9D是分别地显示出根据本发明不同的实施例的建立BAT的步骤的流程图。 图IO是显示出根据本发明一实施例的设定一巳使用空间(used space)的门槛 (threshold)的步骤的流程图。 图11A是显示出根据本发明一实施例的执行一读取指令的步骤的流程图。
图11B是显示出根据本发明的一实施例的执行一读取指令的步骤的流程图。
图12是显示出根据本发明一实施例的执行一去除程序(purg印rocedure)的步骤 的流程图。 图13是显示出根据本发明一实施例的执行一修剪机制(prunemechanism)的步骤 的流程图。 图14是显示出根据本发明一实施例的执行一复原程序(rollbackprocess)的步 骤的流程图。 图15A是显示出根据本发明一实施例的执行一复原程序(rollbackprocess)的步 骤的流程图。 图15B是显示出根据本发明一实施例的执行一写入指令的步骤的流程图。 图16为一显示一根据本发明一储存虚拟化控制器200以及其对主机和直接存取
储存装置的连接的一第一实施例的方块图。 图17为一显示一根据本发明一储存虚拟化控制器200以及其对主机、一第二储存 虚拟化控制器800和直接存取储存装置的连接的一第一实施例的方块图。
10 :主机电脑 20 :储存虚拟化子系统
200 :储存虚拟化控制器 210-232 :资料区块
220 :装置连结控制器 236 :冗余控制器通联连结控制器
240:中央处理电路 280 :记忆体
300 :装置连结控制器
State300至State354 :状态300至状态354
400 :直接存取储存装置阵列410 :直接存取储存装置
702-710 :流程步骤 802-814 :流程步骤 902-934 :流程步骤 1102-1108 :流程步骤 1202-1220 :流程步骤 1402-1428 :流程步骤 1522-1528 :流程步骤











602-610 :流程步骤 800 :储存虚拟化控制器 902-934 :流程步骤 1002-1034 :流程步骤 1110-1120 :流程步骤 1302-1310 :流程步骤 1502-1508 :流程步骤
具体实施例方式
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合
附图及较佳实施例,对依据本发明提出的储存虚拟化电脑系统及储存系统中管理资料快照
影像的方法其具体实施方式
、结构、方法、步骤、特征及其功效,详细说明如后。 请参阅图2所示,是显示一根据本发明包含一储存虚拟化子系统以及储存虚拟化
控制器的实施例的一主要结构的方块图。根据本发明的系统,包含一主机电脑io和一连接
其上储存虚拟化子系统(StorageVirtualization Subsystem) 20。虽然图2仅例示一个主
机10与一储存虚拟化子系统20连接,但是亦可以有多个储存虚拟化子系统20附接于主机
10 ;或者,多个主机10附接于储存虚拟化子系统20 ;或者,多个主机10附接于多个储存虚
拟化子系统20。 其中,该主机10可为一伺服系统, 一工作站,或者一个人电脑系统,或诸如此类。另外,该主机10亦可为另一储存虚拟化控制器。该储存虚拟化子系统20,包含一储存虚拟 化控制器(Storage VirtualizationController ;SVC) 200,其可为一磁碟阵列控制器或一 仅是一捆碟(Just aB皿dle of Disks, JB0D)模拟器,以及一直接存取储存装置阵列400。 此处虽然仅描述一直接存取储存装置阵列400,多个直接存取储存装置阵列400亦可附接 于储存虚拟化控制器200。 储存虚拟化控制器200接收来自主机10的输出入要求与相关资料(控制讯号与 资料讯号)并在内部执行输出入讯号或映射其等至直接存取储存装置阵列400。该直接 存取储存装置阵列400包含多个直接存取储存装置(direct access storage devices, DASD)410,例如硬盘。 在本发明的一实施例中,该储存虚拟化控制器200是为一串列附接小型电脑系统 介面(Serial Attached SCSI)储存虚拟化控制器,意即一遵照串列附接小型电脑系统介 面协定实行的一储存虚拟化控制器,请参阅图16所示,是显示一根据本发明储存虚拟化控 制器200以及其对主机和直接存取储存装置的连接的一第一实施例的一方块图。本实施例 中,该储存虚拟化控制器200,包含一主机端输出入装置连结控制器220、一中央处理电路 (CPC)240、一记忆体280、以及一串列附接小型电脑系统介面(SerialAttached SCSI)输出 入装置连结控制器(或装置端输出入装置连结控制器)300。虽然叙述为独立的功能性方 块,但在实际施行中,两个或多个甚至全部所有的功能性方块可统合为一晶片。该串列附接 小型电脑系统介面输出入装置连结控制器300为连接至该中央处理电路240与该直接存取 储存装置阵列400的装置端输出入装置连结控制器。该串列附接小型电脑系统介面输出入 装置连结控制器300为一介于该储存虚拟化控制器200与该直接存取储存装置阵列400间 的介面及缓冲器,并接收从该中央处理电路240发送的输出入要求与相关资料且映射且/ 或传送其等至该直接存取储存装置阵列400。 而直接存取储存装置阵列400可包含串列附接小型电脑系统介面直接存取储存 装置或串列先进技术接取介面(SATA)直接存取储存装置的其一或两种兼具。
因而,本发明提供一种具有资料快照影像管理的储存虚拟化电脑系统400,其可利 用配置于单一种输出入装置连结控制器(串列附接小型电脑系统介面(Serial Attached SCSI)输出入装置连结控制器)于该储存虚拟化控制器200中,而可以使用两种不同品质或 效能的硬盘(串列附接小型电脑系统介面硬盘及串列先进技术接取介面硬盘),以将资料 源巻存放在第一种硬盘(串列附接小型电脑系统介面硬盘)中,且将快照巻存放在该第二 种硬盘(串列先进技术接取介面硬盘)中;藉此,可不需全部使用同一种硬盘。然而在储存 系统中,资料源巻为经常使用的储存空间,其被存取的频率非常之高,若使用品质较高的硬 盘可提高资料的可利用性(availability);反之,快照巻则为储存备份的储存空间,故其 使用频率较低,若使用品质较低的硬盘对系统的影响不大,因为硬盘的品质是在相同的使 用频率下依其寿命的长短而定。又且,在储存系统中,资料源巻为经常使用的储存空间,其 被存取的频率非常之高,若使用效能较佳硬盘可提高系统的存取效能;反之,快照巻则为储 存备份的储存空间,故其使用频率较低,若使用效能较低的硬盘对系统的存取效能影响不 大。由于市场定位的不同,串列附接小型电脑系统介面硬盘是为一种品质较佳且效能较高 的硬盘(当然价格也较高),而串列先进技术接取介面硬盘则为一种品质较差且效能较低 的硬盘(价格较低)。
因此,当在具有快照功能的储存系统中,使用两种不同品质或效能的硬盘,可以在 对储存系统的品质及效能影响不大的情况下,达成降低成本的目的。但是,若为了要达成同 时可使用两种不同通讯协定的硬盘的目的而必须该储存虚拟化控制器200中配置两种不 同的通讯协定介面控制器的话,又会大幅增加系统的设计及制造成本。因此,本发明在此一 实施例中采用串列附接小型电脑系统介面(Serial Attached SCSI)输出入装置连结控制 器300作为装置端输出入装置连结控制器,可以有效达成利用单一通讯协定的介面控制器 而与可同时使用两种不同通讯协定的硬盘,且不会大幅增加系统的设计及制造成本的目的 及功效。 或者,在另一实施例中,储存虚拟化子系统是为一冗余储存虚拟化子系统,请参阅 图17所示,是显示一根据本发明储存虚拟化控制器200以及其对主机、一第二储存虚拟化 控制器800、和直接存取储存装置的连接的一第一实施例的一方块图。本实施例中,该储存 虚拟化控制器200,包含一主机端输出入装置连结控制器220、一中央处理电路(CPC)240、 一记忆体280、一串列附接小型电脑系统介面(SAS, Serial Attached SCSI)输出入装置 连结控制器(或装置端输出入装置连结控制器)300、以及一冗余控制器通联连结控制器 (redundant controller communicating (RCC) interco皿ectcontroller) 236。虽然叙述为
独立的功能性方块,在实际施行中,两个或多个甚至全部所有的功能性方块可统合为一晶 片。 该冗余控制器通联连结控制器236是实作于储存虚拟化控制器200中以使该中央 处理电路240连接至一第二储存虚拟化控制器800 。此外,该串列附接小型电脑系统介面输 出入装置连结控制器300是通过一扩展电路340而连接到该直接存取储存装置阵列400。 该扩展电路340也连接至该第二储存虚拟化控制器800。 为了能灵活地分配与释放媒体区块段,本发明是采用一区段分配系统(Section Allocation System,以下将简称为SAS)来进行管理快照巻(Snapshot-Volume)的操作。
请参阅图3所示,是为SAS的一实施例示意图。SAS是为一类似档案系统 (file-system-like)结构,可包含一或多个媒体区(Media Extent),这些媒体区是由将 一或多个作为媒体区段供应者(media section providers)的逻辑巻磁碟/分割区/ (Xogical-Volumes-Drives/Partition)格式化而形成。 请参阅图4A、4B所示,是为SAS的一实施例的架构图,其中每个媒体区是包含其 自己的区段分配表(Section Allocation Table),以下简称为SAT,以及一节点表(Inode Table)(图中未示)。其中,该节点表(InodeTable)是用以记录档案内容存放位置的资讯, 即档案内容的指向(pointer),使系统可以通过inode正确的去取得档案的内容。此SAS和 其所属的每个媒体区是有一用来识别目标(object)的唯一识别符(ID)。
SAS尚包含有一或多个区块关联集(Block Association Set),以下简称为BAS,是 进行时间点(point-in-time ;简写为PIT)备份(backup)的基础。每个BAS包含一个区段 目录(section list),在此处称为SAS档案(SASf ile),且亦满足于被格式化为一类似档案 系统结构。 区块关联表(Block Association Tables),以下简称BAT,是储存在此BAS之中。 BAT是用以储存交互参考资讯以与具有原始储存位置(LBA)的备份资料相对应,亦即,每个 BAT内是记录有指向其所对应的PIT快照影像(Sn即shot Image)的资讯。而备份资料(快照影像)亦储存于此BAS之中。 在本实施例中,SAT是包含有属性区块(Attribute Block),是用以记载此区段分配系统识别符(SAS ID)与媒体区识别符(Media Extent ID);文件表(Folder Table),用以记载指向每个BAS的资讯以及每个BAS其所关联的资料源巻(Source-Volume)资讯;日志(Journal)栏位,是存放运作日志,以供系统发生错误或断电情形时可供回复(recovery)之用;描述资料(Metadata)栏位,用以储存管理SAT的描述资料(metadata)。上述的实施例是采用日志式档案系统方式进行,然而,本技术领域的具有通常知识者应当能理解,实际上,日志栏位是为可选择而非为必要的项目,在本发明的其他实施例中是可省略之。 而该每个BAS是包含属性区块(Attribute Block),是用以记载此BASID、 BAS大小以及BAS相关设定等资讯;目录(directory)栏位,记载BAT级数(level)以及已建置BAT的数量;日志(Journal)栏位,是存放运作日志,以供系统发生错误或断电情形时可供复原(recovery)之用;文件表(FolderTable),用以储存BAT ;以及资料区,是用以存放快照影像。如前所述,其中日志栏位是为可选择而非必要的项目。除此之外,在此实施例中,是采用对BAT进行总量管制的设计,故设有目录栏位用以记载BAT级数,即BAT可建置的数量,以利进行控管,但在本发明的其他实施例中,此栏位是可省略之,例如只对BAS可用空间进行总量管制设计的实施例。 —般而言,建立一逻辑媒体(logical media ;如逻辑磁碟机(LD) /逻辑巻(LV) /分割(Partition))的PIT备份的第一步骤即是在一独立可用的逻辑媒体上建置SAS。接着,BAS应被建置、安装及映射至一或多个主机通道的ID/LUNs。最后,当来到从事PIT备份的时间点时,一相对应的BAT应被建置并且接着将其设定为BAS中现役的BAT (active BAT)。
请参阅图5A所示,是描绘对一资料源巻1进行PIT备份之例。其中状态300是描绘此资料源巻1。假设系统欲对资料源巻1进行PIT备份,首先,需建置SAS,亦即将一可用的媒体区登记为SAS之用,如状态310所示,在此媒体区上是建置有一 SAT,其中此SAT的属性区块是储存有此SAS ID以及此媒体区ID。接着,建置相对应资料源巻1的BASftl,请参阅状态320,其中SAT的文件表中是储存有指向BAS#1储存位置的资讯以及BASftl所相对应的资料源巻1资讯,再者BASftl的属性区块是储存有此BASftl ID以及目录内储存有BAT级数(Level)(此例中是设为1024)。继而,建置BAT#1,如状态330,将资料区域(Data Area)的一段空间登记作为快照影像#1之用,在BAS#1的文件表中建置BAT#1 ,此BAT#1是储存有指向快照影像#1储存位置的资讯以及建置此BAT#1的时间资讯(即PIT备份的时间点资讯),并且将此BAT#1设为现役的BAT。 请继续参阅图5B所示,假设在BATftl服役期间,资料源巻1中的资料区块(DataBlock) 212、218、216中的DATA-B、 DATA-E及DATE-D是分别先后进行资料更新为DATA-G、DATA-H及DATD-I,则在进行更新写入前,是会先将原本资料区块内的资料进行写入复制(copy-on-write)程序,如状态332所示,将资料(DATA-B, DATA-E及DATE-D)及各资料原先储存位置(LBA)的资讯(图中未示)先写入快照影像#1之中,而在进行时,快照影像#1是可成长使用资料区域中未使用的部份,亦即,当原先被登记作为快照影像#1之用的空间不足时,可在资料区域中寻找未使用(闲置)的空间来串接入快照影像#1中以供资料写入之用。因此,此PIT备份的快照巻是由写入至快照影像ftl内资料与资料源巻1中尚未进行过写入复制程序的资料区块210、214所构成。 接着,若对资料源巻1启动产生第二 PIT备份,则须建置BAT#2,状态334即描绘建置BAT#2后且更新资料源巻1的资料区块214, 212。此时由于已存在有SAS且其中有BAS#1是伺服于资料源巻1,因而无须再建置新SAS与新BAS,而是将BAS#1的资料区域的一段空间登记作为快照影像#2之用,并在BAS#1的文件表中建置BAT#2即可。此BAT#2是储存有指向快照影像#2储存位置的资讯以及建置此BAT#2的时间资讯(即PIT备份的时间点资讯),而后将BAT#1停止以及将此BAT#2设为现役的BAT。续而,当资料源巻1内有任何资料更新发生时,所进行的写入复制程序是将被更新的原始资料复制至快照影像#2内,如状态334中即是以资料区块214、212被更新为DATA-J及DATA-K为例。请注意,在本实施例中,首次更新的资料区块214内的原始资料DATA-C,并无需复制至快照影像ftl内。此时,对资料源巻1而言,该第二PIT备份的快照巻是由写入至快照影像ft2内资料与资料源巻1中未将资料复制至快照影像#2的资料区块(210、216及218)所构成。然而,第一PIT备份的快照巻除包含所对应BATftl指向的快照影像ftl内的所有资料区块以及资料源巻l中从未进行过写入复制程序的资料区块(210),另外,由于可能有部份BAT#1服役期间并未更新而存于资料源巻1内的资料,在BATft2服役期间被更新而复制于快照影像#2内,如此例中的资料区块214,因而,第一PIT备份份的快照巻尚应包含快照影像ft2内资料区块240。亦即,第一PIT备份的Snsphot Volume除了包含BATftl所指向的快照影像ftl内的所有资料区块以及资料源巻1中从未更新过的资料区块,尚可能包括BATft2所指向的快照影像ft2内的部份或全部的资料区块(端看BAT#2服役期间资料源巻1的资料更新状况而定)。
由前可知,当一资料源巻有一个以上(如n个)的PIT备份被建置时,则每个PIT备份有其相对应的BAT#m(lmn)。然除了现役的BATfe所对应的PIT备份快照巻仅与资料源巻及所对应的快照影像fe相关外,其他的PIT备份的快照巻(Sn即shot-Volume)是与资料源巻、所对应的BAT#m的快照影像,以及其后所建置的BAT#m+l n的快照影像有所关联。
请参阅图5C所示,假设巻管理者(Volume Manager)欲对资料源巻2 (如状态340)进行PIT备份,则由于此时SAS已被建置,因而建置一对应于此资料源巻2的BASft2即可。请参阅状态342,首先,巻管理者(Vol咖eManager)寻求SAS内一闲置空间将其登记为BAS#2之用,并且在SAT内的文件表中是储存有指向BAS#2储存位置的资讯以及BAS#2所相对应的资料源巻2资讯,再者BAS#2的属性区块是储存有此BAS#2 ID以及目录内储存有BAT级数(此例中是设为512。继而,建置BATftl,将BASft2的资料区域之一段空间登记作为快照影像#1之用,在BAS#2的文件表中建置BATftl,此BAT#1是储存有指向快照影像#1储存位置的资讯以及建置此BAT#1的时间资讯(即PIT备份的时间点资讯),并且将此BAT#1设为现役的BAT。 观前述,本实施例中,对每一资料源巻是各有一相对应的BAS,而利用存于SAT的指向去指向该BAS。而将该资料源巻的各PIT备份的影像(Image)皆分派存于所对应的BAS。接着,各BAS中对每一PIT备份是具有一相对应的BAT,利用BAT去指向快照影像,且在进行写入复制程序时,仅需将资料写入现役的BAT所指向的快照影像中即可,而无需将其复制于该BAS中其他已建立的快照影像之中,可有效减少所需储存空间以及写入复制程序。 前述已描述SAS的架构,现对如何建置SAT等流程做进一步描述。首先,前有提及,当要建立一逻辑媒体的PIT备份的第一步骤即是在一独立可用的逻辑媒体上建置SAS。但是除此之外,实际运作时,系统亦可能在尚未须对某一 (些)特定的逻辑媒体要进行PIT备份前即先行启动快照功能(function)而使的待命。然而,不管何时一旦当快照功能被启动(可能是接收到Host端或监控单元的启动指令,亦或可能是由控制器自身因某些原因而启动),巻管理者是会建立SAS。请配合参阅图6所示,是为建置SAS的一实施例流程图。启动建立SAS机制后,首先,是先取得控制器所连结而可供控制器存取的逻辑媒体(LogicalMedia)资讯,并且查核逻辑媒体的状态,以寻求可供进行快照之用的储存空间(步骤602,604),若无可用空间,则中止建立(步骤606),且若启动是由Host端或监控单元所致动的话是回传失败讯息,反之,若有可供使用的有效储存空间,则建立SAS物件(SASObject)(步骤608),是将可用的一或多个用以伺服媒体区段供应者的Logical-Volumes-Drives/Partition格式化以形成媒体区,并将该媒体区标注为快照之用,另在该媒体区中建立一SAT,将SAS ID与媒体区ID存于SAT的属性区块栏位中。进而配置SAS (步骤610)。
在本发明的一实施例中,是允许延伸SAS的储存空间,使当原本预设为SAS的储存空间不足或其他原因时得由使用者启动延伸机制。请接续参阅图7所示,其是与图6相似。首先,仍需先取得控制器所连结而可供控制器存取的逻辑媒体(Logical Media)资讯,并且查核逻辑媒体的状态(步骤702,704),以寻求可用的储存空间,若无,则中止延伸(步骤706),并产生一失败讯息,令使用者获悉,反之,若有可供使用的有效储存空间,则延伸SAS物件(步骤708),将可用的Logical-Volumes-Drives/Partition格式化而建立媒体区,并将此作为延伸之用的媒体区登记为SAS之用,并在此媒体区中建立相对应此媒体区的SAT,而将SAS ID与此新增延伸之用的媒体区ID存于属性区块栏位中,且将旧的媒体区的节点表中记载指向此新建立的媒体区。进而配置SAS(步骤710)。在此实施例中,由于不同的媒体区存在于不同的logical-volume上,为考量系统运作时的效能,因此采用每个媒体区有一个自己的SAT的方式。但本技术领域的具有通常知识者将能理解,在本发明的另一实施例中,可采用包含多个媒体区的SAS可仅设有一SAT的设计。另外,请注意,此处虽然是以使用者启动此延伸机制为例,但是本技术领域的具有通常知识者当能理解,本发明将不受限于此,亦可采用系统因应某些状况而自动启动延伸机制,其后将会描述一种自动延伸的样态。 接着,请参阅图8所示,是本发明中建置BAS的一实施例流程图。当欲对某一资料源巻进行快照时,巻管理者是会建立相对应该资料源巻的BAS。首先,取得SAS的资讯(步骤802)。接着,查核BAS的储备空间设定(reserved space setting)(步骤804),若当此BAS的储备空间所设定的尺寸大于SAS目前闲置空间(free space),将无法建置BAS,因此中止此建置程序(步骤806)。当若BAS的储备空间尺寸小于SAS的闲置空间时,表示SAS中有足够的闲置空间可供此BAS所使用,从而建立BAS物件(步骤808),接着建立此BAS与该资料源巻的关联(步骤810),在相对应此BAS所存在的媒体区的SAT的文件表栏位中新增入指向此BAS的资讯以及此BAS所对应的资料源巻资讯,以建立资料源巻、SAT与BAS之间的关联。接着配置snapshot级数(步骤812),是依使用者所设定的该资料源巻的BAT级数,将此设定值储存于BAS的目录内。而后将SAS的free space分派为BAS的储备空间之用(步骤814),即完成BAS的建置。 然而如前所述,在本发明的其他实施例中,可不设BAT级数,则在此种实施例中,
16前述步骤812则应省略之。 而在一系统支援SAS自动延伸机制的实施例中,前述中止BAS建置程序(步骤806)之前,是先执行延伸SAS可用空间的程序(如图7中所示),以寻求其他原先未配置于SAS中的闲置储存空间,令其为SAS之用。而若执行此自动延伸程序时,查觉无任何适当闲置空间可供SAS延伸的用而中止延伸,则进行步骤806以中止建置BAS,否则一旦SAS完成延伸,则建立BAS的程序是回到步骤802,重新取得SAS资讯,以及查核BAS储备空间尺寸与SAS闲置空间两者间的状态(步骤804)。 前述的各实施例中,BAS储备空间的尺寸是设计为至少包含资料区域以外其他各栏位所需的空间,且在建置BAS时依各栏位所需空间将其登记为该栏位专用而予以先行保留。较佳者应更包含部分资料区域的储存空间。在设有BAT级数的实施例中,建置BAS时,亦可依照BAT级数的设定值,预先把每个BAT及其对应的快照影像所需的基本空间先予以保留。 由于前述的实施例中,所建置的BAS仅先要求预留此储备空间设定的尺寸,之后,在进行PIT备份的写入复制程序时,会去查核空间使用状况,若原先建置的BAS空间不足,则会再寻找SAS当时的闲置空间来倂入此BAS中,非每个BAS在一开始就占用一个大且固定的储存空间,运用此法,每个BAS所占用的储存空间是依实际运作状况而定,因而将使得整个SAS在空间配置上有更多的弹性,得以充分运用。 然而,若考量前述可能发生的某一或某些BAS占用SAS过多的空间,而使得其他的BAS要进行PIT备份时无空间可用的情况(如对某些资料源巻密集产生PIT备份时,或大量写入复制程序动作发生时)。在一本发明的实施例中,是对BAS的空间设有至少一门槛(threshold),在进行写入复制程序之前,将先查核BAS的已使用空间,当BAS的已使用空间达到或超过门槛时,巻管理者会依照使用者或系统的设定处置(如发出警讯或删除旧的快照影像资料以腾出空间或者令该BAS失效(fail)等等)。前述门槛值可有多个,以区分BAS其占用空间的不同程度,并对应不同的警讯或不同的处置。另外前述的门槛值可以是空间单位,例如200GB, 300GB等,或者可以是与SAS空间的比例值,例如20 % ,即表示门槛为BAS/SAS = 20%。相关说明将在后详述。 最后,当来到对一特定资料源巻从事PIT备份的时间点时,一相对应的BAT应被建置并且接着将其设定为BAS中现役的BAT (active BAT)。请参阅图9A所示,是本发明中建置BAT的一实施例流程图。首先,建置BAT的第一个步骤902是冻结(Freeze)所有与该特
定资料源巻相关的i/o,且将快取记忆体内有关该特定资料源巻的操作予以完成并清除之。
接着进行步骤910,查核BAS的闲置空间是否足够建置BAT与相对应的快照影像之用,若足够,则在BAS的文件表建置新的BAT,且将资料区域的一段空间登记作为伺服此新BAT的快照影像之用(步骤912)。而后令目前现役的BAT停止,以及将新建置的BAT设定为现役的BAT(步骤914),继而启动快照功能(步骤916),续而接至步骤904,将原先冻结的I/0解冻。若该BAS的闲置空间不足,则查核SAS空间的使用状态(步骤920),若有闲置空间,则将其中一段闲置空间倂入BAS中(步骤922),继而接至步骤912。而若SAS亦未有足够的闲置空间,则中止BAT的建置(步骤924),且启动相对应的程序(如发出警讯以提醒使用者或管理者),接着接至步骤904,将原先冻结的I/O解冻。然而如前所述,在本发明的一实施例中,是设有BAT级数,且在建置BAS时会依照BAT级数的设定值将所需的文件表及所对应的每个快照影像的基本空间先予以保留,以供 建置BAT之用。请接续参阅图9B所示,即是描绘此种实施例中建置BAT的一流程图。与图 9A相较,不同点即在于,在冻结步骤902之后,是以步骤930取代步骤910,查核所对应的 BAS内已建置有效BAT的数量,以与所设定的级数进行比较。而若已建置有效的BAT数量尚 未达到该级数设定值,则接至步骤912,进行建置BAT的相关步骤。然而若已建置有效BAT 数量达到此BAS级数时,则依事件处置策略(Event-handling Policy)的设定作动。在本 实施例中,提出两种事件处置策略供使用者设定,一为步骤932,启动清除(PURGE)程序,亦 即删除(delete)现存部分的PIT-快照,使相对应的BAT与快照影像储存空间可腾出而供 使用,详细内容将在后说明;另一为步骤934,中止BAT的建置,且启动相对应的程序(如发 出警讯以提醒使用者或管理者),接着即接至步骤904。此处,虽然以两种事件处置策略,且 可供使用者所设定为例。但在本发明的其他实施例中,系统是直接规划为仅实施其中一策 略。 再者,在一对BAS使用空间设有至少一个使用空间门槛(threshold)的实施例中, 请参阅图9C所示,是显示此种实施例的建置BAT的一流程图。与图9A比较,差异在于冻结 步骤902之后以及查核BAS空间步骤910之前,是插入查核此BAS的已使用空间(非闲置 空间)是否已达到(或超过)所设定的条件(threshold)的步骤940,若尚未达到所设定的 条件,则至步骤910,其后与图9A相同,故在此不再赘述。而若步骤940的查核结果为已达 到(或超过)所设定的条件,此时一般会伴随发出警讯以提醒使用者此BAS的使用状态已 达所设定的条件,接着依事件处置策略(Event-handling Policy)的设定作动。在本实施 例中,提出三种因应处置策略供使用者设定。其中两个是与图9B中相同,一为步骤932,启 动清除程序,二为步骤934,中止BAT的建置,且启动相对应的程序(如发出警讯以提醒使用 者或管理者)。新增的第三种事件处置策略是为仍继续建置此新的BAT,接至步骤912。此 是由于,所设定的门槛可能只是想要提醒使用者之用,因此新增此第三种策略。在一设有多 个门槛的实施例中,使用者可设定不同程度的门槛对应不同的策略,例如所设定的第一以 及第二门槛分别为BAS/SAS = 20%,40%,而第一门槛是对应第三种策略,第二门槛是对 应第一种策略。 而除图9C所示的流程图外,图9D是显示同时采用设定BAT级数以及事先保留建 置每个BAT所需的基本空间的一实施例。则相类似于图9B,冻结步骤902之后,是先查核 BAT的数量,以与BAT级数设定值相比较(步骤930),若不足则如前述依照事件处置策略至 步骤932或步骤934。若是足够,则进行步骤940,若达到或超过所设定的条件,则同样如前 述者依照事件处置策略至步骤932、步骤934或步骤912,而若未达到所设定的条件,则直接 至步骤912。 最后,请参阅图10所示,是显示出根据本发明一实施例的设定一巳使用空间 (used space)的门槛(threshold)的步骤的流程图。此实施例中是分别对SAS与BAS使用 空间设有至少一门槛。当控制器接收到指令(一般而言是来自于主机端)时,首先是解读 之,若为写入指令,则依图10作动。首先,查核快照功能是否被致动(步骤1002),若无,则 将资料写入资料巻内(步骤1006)。若快照功能被致动,则查核欲写入的资料区块是否已 进行过写入复制程序于现役的BAT的快照影像内(步骤1004)。若已复制过,则接至步骤 1006。若欲写入目标资料区块未进行过写入复制程序,则查核SAS空间使用的状态(步骤
181010),是否已达所设定的条件(threshold),若未达到则进行步骤1020,若为已达到(或超 过)所设定的条件,此时会伴随发出警讯以提醒使用者SAS的使用状态已达所设定的条件, 接着依事件处置策略(Event-handling Policy)的设定作动。在本实施例中,提出三种事 件处置策略供使用者设定。 一为步骤1012,启动清除程序,另一为步骤1014,令所有的10 操作失效,第三种事件处置策略是为发出警讯后继续进行步骤1020。步骤1020是为查核 BAS的空间使用状态,同样地,与所设定的条件进行比较,若未达到所设定条件,则进行步骤 1030,进行写入复制程序,将写入目标区块内原始存放的资料复制至BAS目前所服役的快 照影像内。当达到所设定的条件时,发出警讯并依事件处置策略的设定作动,一为启动清除 程序(步骤1032) , 二为仍允许继续执行10操作但令此BAS的快照功能无效(步骤1034), 三为发出警讯后继续进行步骤1030。而在写入复制程序步骤1030之后是接至步骤1006, 将将待写入资料写入目标区块。 若为读取指令,请参阅图11A。首先,先解析欲读取的目标是为资料巻 (Data-Volume)或快照巻(步骤1102)。若为资料巻,直接自该资料巻中读取资料(步骤 1104)。而若为快照巻,则从相关的快照影像构成快照巻,接着自此快照巻中读取资料(步 骤1106,1108)。 前已述及,由于每一个快照巻#m除包括该时间点的快照影像#m以及资料源巻,更 可能包括其后建立的快照影像的部分或全部。因此,在一实施例中,前述步骤1106, 1108详 细可为,先自相对应的BAS中依据所欲读取的时间点,选取相对应的BAT(步骤1110),对于 每个欲读取的资料区块而言,首先查核其LBA是否存在于该BAT所对应的快照影像(步骤 1112),意即,是否曾进行过写入复制程序而复制于快照影像中。若是,则自该快照影像中读 取相对应的资料(步骤1114)。若否,则查核此BAT是否为目前BAS最新建置的BAT(现役 的BAT)(步骤1116)。若是,则自所对应的资料源巻内读取资料(步骤1118),若否,则选取 下一个时间点BAT(步骤1120),重复前述步骤直到读取资料为止。 又,在建置PIT备份的时间点设定方面,在一实施例中,可为使用者手动启动,或 者是由使用者设定时程(Schedule),例如每日凌晨1:00,每星期一,每月 一 日等等。当 达到该时程时,巻管理者即自动建立PIT备份。另外,此时程可为多个,且设有保留优先权 (priority),使需因应空间不足而进行删除时(如前述的PURGE程序),可依据此优先权的 设定,将低优先权者先予已删除。 以下,对清除(PURGE)程序进行说明。清除程序主要是为了在因应空间不足时,删 除(delete)部分现存的PIT-快照,使相对应的BAT与快照影像储存空间可腾出而供使用。 请参阅图12所示,为其一实施例流程图。查核各BAT的优先权设定以及储存有效期(步骤 1202),接着选择在有效期外优先权最低者作为清除的标的(步骤1204),若无适合的标的, 则启动相对应的事件处置程序(步骤1210), 一般为发出警讯以提醒使用者或管理者,且中 止所对应的主流程程序,例如图9B 9D中的启动清除程序,此时会中止BAT的建置,而图 IO中的启动清除程序,此时会令IO操作失效。若有清除标的存在,则先合并(Merge)相关 快照影像(步骤1206),接着删除所选的BAT以及快照影像(步骤1208),接着查核可利用 空间是否已足够(步骤1220),若仍不够,则重新至步骤1202,直到空间足够为止。其中,在 本发明的其他实施例中,前述步骤1220是可省略,并在结束清除程序后接回主流程中查核 启动清除程序条件的步骤(如前述图9B 图9D,图10所示)。
19
在本实施例中,是采用对各BAT设定有优先权以及有效期的方式进行,在步骤 1204中选择清除标的是会考量此二因素,首先,在有效期内的BAT必被保留而不允删除,而 在有效期外的BAT则依照优先权的高低,从设定为最低者开始删除。另外,步骤1206设置 的考量是由于本发明的各快照巻是可能与其后建置的快照影像有关,而由于本实施例是依 优先权的高低选取被删除者,因此,被删除者可能非为现存最早者,因此,若直接删除,将会 引发前一快照巻发生错误的情形,例如在图5B中,若直接删除BATft2以及快照影像#2,将 会造成BAT#1所对应的快照巻-1错误,因为其中构成快照巻-1的原始储存资料区块214 的DATA-C将会遗失,因此需要通过此一步骤,先将快照影像#2中所储存的原始储存资料区 块214的位置资讯以及DATA-C等资料合并至快照影像#1。其后才能进行删除步骤1208。 当然,除前述的实施方式外,在其他的实施例中,可仅考量其中一因素,例如仅设有保留优 先顺序。或在一实施例中,是一律从现存最早者开始删除,直到空间足够为止,而若为此种 实施方式,则前述的合并步骤1206即可省略。 另外,为了令SAS空间能更有效的被运作,在本发明的一实施例中是提供有一修 剪(Prune)机制,是设定资料有效期,使得仅保留该有效期内的快照巻。此机制可为系统定 期启动,以避免过旧资料或过多资料占据储存空间。 请参阅图13所示,是显示出根据本发明一实施例的执行一修剪机制(prune mechanism)的步骤的流程图。首先,选取现存有效的BAT中最早者(步骤1302),查核此 BAT(步骤1304),以与有效期比对,以了解此BAT是否满期(步骤1306),若已期满,则将其 与相对应的快照影像删除(步骤1308),接着选取下一个时间的BAT (步骤1310),重复步骤 1304,直到所选取的BAT是落入有效期内(未期满)。 再者,前述的有效期是以一段时间为例进行说明。然而,在本发明的其他实施例中 此有效期亦可为BAT的数量,S卩,设定仅保留最后建置的某特定数量的BAT,而将超过此数 量的较早建置的BAT及所对应的快照影像删除之。此变形,是为本技术领域的具有通常知 识者,依照前述本发明实施例的精神,而能被教导完成,故在此不再赘述。
最后,前面已说明快照技术主要是为了保存资料源巻在某一特定时间点的状态。 而采用快照的一 目的为使资料在发生任何问题或错误时,系统可使资料源巻资料回复到某 一特定时间点的状态,即,使系统具有复原(Rollback)的功能。请参阅图14所示,是描绘 本发明的一复原实施例的流程图。请配合参阅图5D所示,其中图5D,是为使图示更为清晰, 因此相关的SAS以及SAT是省略未绘制,仅以相关的资料源巻以及BAS示意。
图5D的状态350是描绘对应于资料源巻1的BAS#1建置至BAT#3的状态。假设此 时系统需将资料源巻1复原(Rollback)到建置BAT#1的时间点的状态,即,资料源巻1欲 回复为如图5D中黑框所组成的快照巻(同图5A中的资料源巻1)。则首先,巻管理者冻结 (Freeze)所有与该特定资料源巻相关的1/0,且将快取记忆体内有关该特定资料源巻的操 作予以完成并清除的(步骤1402)。步骤1404,建置一新BAT,用以保存此时资料源巻1的 状态(如图5D的状态352所示的BATft4)。继而步骤1406,利用相关的快照影像形成一虚拟 的资料源巻(如图5D中黑框所示),且将此虚拟资料源巻映射至主机。步骤1408为建立一 位元映射(bitmap),用以追踪复原过程。而后即可先行恢复(Resume) 1/0(步骤1410),使允 许主机对此虚拟资料源巻存取。接着,进入回存(Restore)程序,其中第一个步骤1420为自 相关的快照影像中选取一资料记录作为第一资料区块以进行回存,图5D中是以选取快照影像#1的DATA-B为例。步骤1422查核元映射中对应于该资料区块的回存旗标(Restored Flag)是否已被设起?若已设起,表示已回存至资料源巻1中;若未被设起,则依据该资料 区块所对应原始存放的资料源巻1的位置资讯将资料重写(Overwrite)至资料源巻1中, 而后将元映射中此纪录之回存旗标设起(步骤1424, 1426)。请注意,在重写过程中,同时亦 伴随着写入复制程序,使得以藉由该新的BAT保存启动复原时资料源巻的状态,是以图5D 的状态354为例,在重写DATA-B至资料区块212前,会将资料区块212内所存放的DATA-K 复制至BATft4。步骤1428查核是否相关快照影像内所有资料皆完成回存?若为非,则从快 照影像中取得下一个资料记录(步骤1429),且接至步骤1422,直到相关快照影像中的所有 资料记录皆完成回存。而后进行步骤1414取消映射前述的虚拟资料源巻,取而代之者为映 射此实际的资料源巻1至主机。最后删除元映射(步骤1416)。 另外,对于资料源巻1中不属于复原点快照巻内的资料,如图5D的状态350中的 资料源巻l,其资料区块220的DATA-N是为建置BAT#3后才新增入资料源巻1。对于这些 资料,在本发明的某些实施例中,在步骤1414之前,会予以删除或注记为无效,使资料源巻 1内的有效资料状态确实复原回快照巻#1的状态,请注意,在删除或注记无效前,需将其复 制于BAT#4中。如图5D的状态354。 再者,前述实施例中,具有建置一新BAT,用以保存此时资料源巻1的步骤1404是 在于考量系统欲支援向前复原(Roll-Forward)功能,即,使系统虽然在一时点T决定某一 或某些资料源巻复原至前一特定时点T'的资料状态,而后,系统仍可以依照运作的情况决 定是否要再向前复原至时点T的资料状态。且如本实施例中,较佳者,是更保留时点T'至 时点T之间的所有快照影像(如,图5D中的快照影像#2及#3),使得系统更具有得以使资 料源巻向前复原至该二时点间中的任一时点资料状态的功能。故而,若在一不支援向前复 原(Roll-Forward)的系统中,所采用的复原当可不具有前述的步骤1404,且在步骤1424的 重写过程中,无须伴随着将资料写入复制程序至新的BAT的步骤,既然无此新的BAT存在。 更者,在一实施例中,在完成回存后,即资料源巻已完成复原至时点T'的资料状态后,是具 有删除时点T'至时点T之间的所有快照影像的步骤。而在一实施例中,前述删除的快照影 像中是包括时点T'的快照影像,因既然该资料源巻的资料状态已复原至此时点T'。
前述的本发明的复原的实施例中,在进行将BAS内相关的快照影像回存至资料源 巻前,是映射虚拟资料源巻至主机以及恢复(Resume) 1/0 (步骤1406, 1410),而令主机视复 原已完成,且使系统在进行回存程序时允许主机对此资料源巻进行存取,而不用等到整个 复原程序完成才能恢复1/0,因此可改善因执行复原而引发的整体执行效率问题。而有关在 回存过程中,主机对资料源巻的读/写操作,请参阅图15A及图15B所示。
图15A是描绘在回存过程中对正在复原的资料源巻进行读取操作的一实施例流 程图。首先判断欲读取的资料是否是存在于相关的快照影像(步骤1502),请配合参阅图5D 所示,假设欲读取资料源巻1中某一目标资料区块的资料,是先搜寻相关快照影像(BAS#1 内黑框所示者)是否有任何资料其相对应的原始存放位置是为该目标资料区块,若有则执 行步骤1504,否则至步骤1506。步骤1504查核此资料是否已回存。若已回存,则进行步骤 1506,从资料源巻中读取资料以回复读取请求的发送端。若尚未回存,则自此快照影像中读 取资料以回复之(步骤1508)。例1 :若欲读取者为资料区块210,由于此资料区块从未复制 至BASftl中,因此在相关快照影像中无法搜寻到,故而直接读取资料源巻1中资料区块210内的DATA-A回复之。例2 :若欲读取者为资料区块214,则搜寻到快照影像#2内是存有原 始存放位置为资料区块214的资料区块240,接着查核复原程序中位元映射(bitm即)中此 资料区块240的回存旗标是否已设起。若是,则读取资料源巻1中资料区块214内的资料。 若回存旗标尚未设起,则读取BASftl内的资料区块240中的DATA-C回复之。前述由于资料
在复原至资料源巻之后可能会被更新,因而对于已复原的资料,需至资料源巻中读取之。另 外,在本发明的其他实施例中,在进行自快照影像中读取资料以回复的步骤1508时,是在 读取资料后包含将此资料重写(overwrite)至资料源巻以及将位元映射(bitm邻)中相对 应的回存旗标设起的操作。 图15B是描绘在原过程中对正在复原(Rollback)的资料源巻进行写入操作的一 实施例流程图。相类似于前述的读取操作流程,首先判断相关的快照影像内是否存有原始 储存位置为此欲写入的资料区块者(步骤1522)。若欲写入的资料区块未曾复制至相关的 快照影像,则至步骤1526,将资料写入资料源巻。否则至步骤1524,查核此资料是否已回 存。若已回存,则进行步骤1526。若尚未回存,是使回存旗标设起以及将资料写入资料源巻 (步骤1528)。且在一较佳实施例中,是引入信号机(sem即hore)控制机制,使步骤1508的 写入操作与前述回存程序不得同时对同一区块进行操作,避免因竞争效应导致资料错误。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽 然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人 员,在不脱离本发明技术方案范围内,当可利用上述揭示的方法及技术内容作出些许的更 动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的 技术实质运用本发明说明书及图示内容对以上实施例所作的任何简单修改、等同变化与修 饰,均仍属于本发明技术方案的范围内。
权利要求
一种储存虚拟化电脑系统,其特征在于其包含一主机单元,以发送一输出入要求;一外部储存虚拟化控制器,是耦接至该主机单元以执行输出入操作,来回应于该输出入要求;以及多个实体储存装置,其每一个是经由一串列附接小型电脑系统介面连结耦接至该外部储存虚拟化控制器,以经由该外部储存虚拟化控制器提供资料储存空间给该储存虚拟化电脑系统;其中该外部储存虚拟化控制器执行一快照功能,使得以保存所述的多个实体储存装置所构成的至少一资料源卷在一特定时点的资料状态,且所述的快照功能是通过一区段分配系统而操作,该区段分配系统包含一区段分配表和至少一区块关联集,且该区块关联集是进行时间点备份的基础。
2. 根据权利要求1所述的储存虚拟化电脑系统,其特征在于其中所述的多个实体储存 装置包含有至少一第一通讯协定实体储存装置和至少一第二通讯协定实体储存装置,该至 少一第一通讯协定实体储存装置和该至少一第二通讯协定实体储存装置皆通过该串列附 接小型电脑系统介面连结耦接至该外部储存虚拟化控制器。
3. 根据权利要求2所述的储存虚拟化电脑系统,其特征在于其中所述的第一通讯协定 为一串列附接小型电脑系统介面通讯协定,且所述的第二通讯协定为一串列先进技术附接 通讯协定。
4. 根据权利要求2所述的储存虚拟化电脑系统,其特征在于其中所述的资料源巻是储 存在所述的至少一第一通讯协定实体储存装置中,且该区段分配系统是储存在所述的至少 一第二通讯协定实体储存装置中。
5. 根据权利要求4所述的储存虚拟化电脑系统,其特征在于其中所述的第一通讯协定 为一串列附接小型电脑系统介面通讯协定,且该第二通讯协定为一串列先进技术附接通讯 协定。
6. 根据权利要求4所述的储存虚拟化电脑系统,其特征在于其中所述的多个实体储存装置为一硬盘。
7. 根据权利要求1所述的储存虚拟化电脑系统,其特征在于其中所述的区段分配表包 含有一第一属性区块,用以记载一区段分配系统识别符与媒体区识别符; 一第一文件表,用以记载指向每一区块关联集的资讯及每一区块关联集所关联的该资 料源巻的资讯;以及一描述资料栏位,用以储存管理该区段分配表的描述资料。
8. 根据权利要求7所述的储存虚拟化电脑系统,其特征在于其中所述的区段分配表还 包含有一第一日志栏位,用以存放一运作日志,以供该电脑系统发生错误或断电情形时可 供该电脑系统恢复之用。
9. 根据权利要求1所述的储存虚拟化电脑系统,其特征在于其中所述的每一区块关联 集包含有一第二属性区块,用以记载此区块关联集识别符和区块关联集大小以及区块关联集相 关设定资讯;一目录栏位,记载一区块关联表级数以及已建置区块关联表的数量; 一第二文件表,用以储存区块关联表;以及 一资料区,是用以存放至少一快照影像。
10. 根据权利要求9所述的储存虚拟化电脑系统,其特征在于其中所述的区块关联集 还包含有一第二日志栏位,是存放一运作日志,以供该电脑系统发生错误或断电情形时可 供该电脑系统恢复之用。
11. 根据权利要求1所述的储存虚拟化电脑系统,其特征在于在收到要将资料写入该 资料源巻中的第一位置的一第一写入请求时,则通过一写入复制程序,以将该资料源巻中 该第一位置的原资料以及该资料源巻中该第一位置的该原资料的储存位置的资讯复制至 一快照影像之后,再将该第一写入请求中要写入的该资料写入该资料源巻中的该第一位 置。
12. 根据权利要求11所述的储存虚拟化电脑系统,其特征在于在收到比该第一写入请 求晚的一第二写入请求而要将资料写入该资料源巻中的该第一位置之时,则不进行该写入 复制程序,直接将该资料写入该资料源巻中的该第一位置。
13. —种用于一储存系统中管理资料快照影像的方法,其特征在于其包括以下步骤 建立一区段分配系统,包括至少一媒体区;在该媒体区中建立一区段分配表及至少一区块关联集,该区段分配表包括记载指向该 区块关联集的资讯的栏位,该区块关联集与一资料源巻关联,为对该资料源巻进行快照备 份的基础,且该区块关联集是进行时间点备份的基础;在该区块关联集中建立至少一区块关联表,该区块关联表用以储存交互对照参考资讯 以与具有原始储存位置的备份资料相对应;以及当在收到要将资料写入一资料源巻中的第一位置的一第一写入请求时,则通过一写入 复制程序,以将该资料源巻中该第一位置的原资料以及该资料源巻中该第一位置的该原资 料的储存位置的资讯复制至一快照影像之后,再将该第一写入请求中要写入的该资料写入 该资料源巻中的该第一位置。
14. 根据权利要求13所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的储存系统包含有多个实体储存装置,且所述的多个实体储存装置包含有至少一 第一通讯协定实体储存装置和至少一第二通讯协定实体储存装置,该至少一第一通讯协定 实体储存装置和至少一第二通讯协定实体储存装置皆通过一串列附接小型电脑系统介面 连结而耦接一储存虚拟化控制器。
15. 根据权利要求14所述的用于一储存系统中管理资料快照影像的方法,其特征在于其中所述的第一通讯协定为一串列附接小型电脑系统介面通讯协定,且该第二通讯协定为 一串列先进技术附接通讯协定。
16. 根据权利要求14所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的资料源巻储存在所述的至少一第一通讯协定实体储存装置中,且该区段分配系 统储存在所述的至少一第二通讯协定实体储存装置中。
17. 根据权利要求16所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的第一通讯协定为一串列附接小型电脑系统介面通讯协定,且该第二通讯协定为 一串列先进技术附接通讯协定。
18. 根据权利要求16所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的所述的多个实体储存装置是为一硬盘。
19. 根据权利要求13所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的区段分配表包含有一第一属性区块,用以记载一区段分配系统识别符与媒体区识别符; 一第一文件表,用以记载指向每一区块关联集的资讯及每一区块关联集所关联的该资 料源巻的资讯;以及一描述资料栏位,用以储存管理该区段分配表的描述资料。
20. 根据权利要求19所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的区段分配表还包含有一第一 日志栏位,用以存放一运作日志,以供一 电脑系统 发生错误或断电情形时可供该电脑系统恢复之用。
21. 根据权利要求13所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的每一区块关联集包含有一第二属性区块,用以记载此区块关联集识别号码和区块关联集大小以及区块关联集 相关设定资讯;一目录栏位,记载一区块关联表级数以及已建置区块关联表的数量; 一第二文件表,用以储存区块关联表;以及 一资料区,是用以存放至少一快照影像。
22. 根据权利要求21所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的区块关联集还包含有一第二日志栏位,是存放一运作日志,以供一电脑系统发 生错误或断电情形时可供该电脑系统恢复之用。
23. 根据权利要求13所述的用于一储存系统中管理资料快照影像的方法,其特征在于 在收到比该第一写入请求晚的一第二写入请求而要将资料写入该资料源巻中的该第一位 置之时,则不进行该写入复制程序,直接将该资料写入该资料源巻中的该第一位置。
24. 根据权利要求13所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其还包含一清除资料快照影像的步骤。
25. 根据权利要求24所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的清除步骤包含以下步骤查核各区块关联表的设定; 选择清除的标的;若有清除标的存在,则先合并相关的快照影像;以及 删除所选的区块关联表以及其指向的快照影像。
26. 根据权利要求25所述的用于一储存系统中管理资料快照影像的方法,其特征在 于其进一步包含的步骤有查核一可利用空间是否已足够,若不够时,则重复所述的清除步 骤,直到该可利用空间巳经足够。
27. 根据权利要求25所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中若无适合清除标的,则启动相对应的事件处置程序,该处置程序是包含的步骤中止该 区块关联表的建置或令一 IO操作失效。
28. 根据权利要求25所述的用于一储存系统中管理资料快照影像的方法,其特征在于其中所述的设定是包含有所述的区块关联表的一优先权设定或一储存有效期。
29. 根据权利要求13所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其还包含一修剪资料快照影像的步骤。
30. 根据权利要求29所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其中所述的修剪步骤包含以下步骤选取现存有效的区块关联表中最早者; 查核所选取区块关联表的储存有效期;以及 若已期满,则将所选取区块关联表及其指向快照影像删除。
31. 根据权利要求30所述的用于一储存系统中管理资料快照影像的方法,其特征在于 其进一步包含的步骤有选取下一个时间的区块关联表,重复上述该查核所选取区块关联表的储存有效期的步 骤和所述若已期满,则将所选取区块关联表及其指向快照影像删除的该步骤,直到所选取 区块关联表是落入有效期内。
全文摘要
本发明是有关于一种储存虚拟化电脑系统,其包含一主机单元,以发送一输出入要求;一外部储存虚拟化控制器,是耦接至该主机单元以执行输出入操作,来回应于该输出入要求;以及多个实体储存装置,其每一个是经由一串列附接小型电脑系统介面连结耦接至该外部储存虚拟化控制器,以经由该外部储存虚拟化控制器提供资料储存空间给该储存虚拟化电脑系统;其中该外部储存虚拟化控制器执行一快照功能,使得以保存所述的多个实体储存装置所构成的至少一资料源卷在一特定时点的资料状态,且所述的快照功能是通过一区段分配系统而操作,该区段分配系统包含一区段分配表和至少一区块关联集,且该区块关联集是进行时间点备份的基础。
文档编号G06F11/14GK101763224SQ20091026575
公开日2010年6月30日 申请日期2007年1月26日 优先权日2006年1月26日
发明者庞景德, 施明文, 江建欣 申请人:普安科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1