冗余式磁盘阵列存储数据可靠性测试方法及系统的制作方法

文档序号:6564072阅读:155来源:国知局
专利名称:冗余式磁盘阵列存储数据可靠性测试方法及系统的制作方法
技术领域
本发明涉及一种计算机信息技术,特别涉及一种磁盘阵列装置存 储数据可靠性测试方法及系统,其可应用于一冗余式磁盘阵列
(Redundant Array of Independent Disks, RAID)。
背景技术
冗余式磁盘阵列(Redundant Array of Ind印endent Disks, RAID) 具备有二个或二个以上的实体硬盘的计算机存储数据装置,其通常应 用于搭接至网络服务器,用以存储数量极为庞大的计算机网络数据。 此外,由于冗余式磁盘阵列具备有多个实体硬盘,因此通常被用来提 供高可靠性的数据容错及备份功能。
对于数据容错及备份功能,RAID的标准规范订定有多种存储数据 模式,并将此些存储数据模式以不同的级层来表示;例如初级的RAID 存储模式(RAID Level 0)代表将数据以交错方式存储于二个或二个以 上的实体硬盘;第一级的RAID存储模式(RAID Level l)代表将数据以 镜射方式(mirroring)存储于二个或二个以上的实体硬盘;第二级的 RAID存储模式(RAID Level 2)代表将数据以交错及容错方式存储于二 个或二个以上的实体硬盘;等等。基本上,目前常用的RMD存储模式 包括RAID Level 0、 RAID Level 1、 RAID Level 2、 RAID Level 3、 RAID Level 4、 RAID Level 5、 RAID Level 6、和RAID Level 10,以 上除RAID Level 0外,皆为冗余式的存储技术。然而目前本技术领域 于冗余式磁盘阵列的应用上,仍缺少一种可测试其存储数据的可靠性 的工具。
有关于上述的各种不同级层的RAID存储模式的详细内容,请参阅 RAID咨询委员会(RAID Advisory Board)所订定的标准规范;于此说明 书中,将不对其细节内容作进一步的详细的说明。

发明内容
鉴于以上所述现有技术的缺点,本发明的主要目的在于提供一种 冗余式磁盘阵列存储数据可靠性测试方法及系统,其可应用来测试冗 余式磁盘阵列存储数据的可靠性与冗余数据的正确性。
本发明的冗余式磁盘阵列存储数据可靠性测试方法至少包括(PI) 一冗余式存储数据测试程序,用以测试该冗余式磁盘阵列的冗余数据 是否正确;(P2)—磁盘删减测试程序,用以仿真测试该冗余式磁盘阵 列于其中一个成员磁盘损毁后,是否仍可正常运作,并可读取出正确 的数据;以及(P3)—磁盘增加测试程序,用以测试该冗余式磁盘阵列 新增加一个成员磁盘后,是否可于该新增加的成员磁盘上正确地存储 数据。
于系统架构上,本发明的冗余式磁盘阵列装置存储数据可靠性测
试系统至少包括(A)—数据写入单元,用以将测试数据写入冗余式磁
盘阵列;(B)—冗余数据测试单元,其用以测试该冗余式磁盘阵列存储
的冗余数据是否正确;(C)一冗余式磁盘阵列运作测试单元,其用以测
试该冗余式磁盘阵列是否能正确无误地运作;(D)—冗余式磁盘阵列重
建监视单元,用以监视冗余式磁盘阵列是否在进行重建;(E)—磁盘删
减单元和;(F)—磁盘增加单元;其中该磁盘删减单元用以于该冗余式
磁盘阵列中删减一个成员磁盘,而该磁盘增加单元用以于该冗余式磁 盘阵列中新增加一个成员磁盘。
本发明的冗余式磁盘阵列装置存储数据可靠性测试方法及系统的 特点在于可对该冗余式磁盘阵列进行3项测试程序:磁盘一冗余式存储 数据测试程序、 一磁盘删减测试程序及一磁盘增加测试程序,由此即 可完整地测试出冗余式磁盘阵列存储数据的可靠性。


图1为一应用示意图,用以显示本发明的冗余式磁盘阵列存储数 据可靠性测试系统的应用方式及其模块化的基本架构;
图2A为一应用示意图,用以显示本发明的冗余式磁盘阵列存储数
据可靠性测试系统所执行的写入测试数据的一个应用范例;
图2B为一应用示意图,用以显示本发明的冗余式磁盘阵列存储数
据可靠性测试系统所执行的冗余数据测试的一个应用范例;
图2C为一应用示意图,用以显示本发明的冗余式磁盘阵列存储数
据可靠性测试系统所执行的重建监视的一个应用范例;
图3为一作业流程图,用以显示本发明的冗余式磁盘阵列存储数
据可靠性测试系统所执行的各个测试程序的作业流程。
附图标记说明10计算机平台(网络服务器)
11屏幕监视器
20硬盘阵列装置(RAID)
21控制接口
30镜射磁盘群组
31第一磁盘
32第二磁盘
33第三磁盘
40本发明的冗余式磁盘阵列存储数据可靠性测试系统
100数据写入单元
200冗余数据测试单元
300冗余式磁盘阵列运作测试单元
400冗余式磁盘阵列重建监视单元
500磁盘删减单元
600磁盘增加单元
具体实施例方式
以下配合所附的图,详细揭露本发明的冗余式磁盘阵列装置存储 数据可靠性测试方法及系统的实施例。
图1显示本发明较佳实施例的冗余式磁盘阵列存储数据可靠性测
试系统(如标号40所指的虚线框所包括的部分)的应用方式,本实施例 中,该冗余式磁盘阵列的等级为1 (RAID Level 1)。如图所示,本发明 的冗余式磁盘阵列存储数据可靠性测试系统40于实际应用上搭载至一 计算机平台,例如为一网络服务器IO,且该网络服务器IO设置有一冗 余式硬盘阵列(Redundant Array of Ind印endent Disks, RAID) 20, 用以对该冗余式硬盘阵列20执行一存储数据可靠性测试程序,以测试 该冗余式硬盘阵列20的RAID LEVEL 1的存储数据功能是否于实际操作时具有高可靠性,本较佳实施例中,该冗余式磁盘阵列等级为1,因 此其存储数据的方式为镜射存储。
于图1所示的实施例中,冗余式硬盘阵列20具有一控制接口 21, 且仅以3个磁盘31、 32、 33为例作示范性的说明。于实际应用上,冗 余式硬盘阵列20中的磁盘的数量并无限制。
如图1所示,本发明的冗余式磁盘阵列存储数据可靠性测试系统 40的实体架构的对象导向组件模型(object-oriented component model)至少包括6个主要单元(A)—数据写入单元100,用以将测试 数据写入冗余式磁盘阵列;(B)—冗余数据测试单元200,其用以测试 该冗余式磁盘阵列存储的冗余数据是否正确;(C)一冗余式磁盘阵列运 作测试单元300,其用以测试该冗余式磁盘阵列是否能正确无误地运 作;(D)—冗余式磁盘阵列重建监视单元400,用以监视冗余式磁盘阵 列是否在进行重建;(E)—磁盘删减单元500;和(F)—磁盘增加单元 600。
以下说明本发明的冗余式磁盘阵列存储数据可靠性测试系统40如 何利用上述的对象来对RAID Level 1的冗余式磁盘阵列20进行存储 数据的可靠性测试。
本最佳实施例中,此可靠性测试程序包括(P1)执行一冗余式存 储数据测试程序、(P2)执行一磁盘删减测试程序、和(P3)执行一磁 盘增加测试程序;且此3个测试程序即由前述的冗余存储测试单元
100; —冗余式磁盘阵列运作测试单元200;磁盘删减单元300;以及
磁盘增加单元400来分别执行。 (Pl)冗余式存储数据测试程序
冗余式存储数据测试程序Pl用以测试该冗余式磁盘阵列20存储 的数据是否正确,本实施例中,即测试该冗余式磁盘阵列20在RAID Level l镜射式存储下,是否具有正确的存储数据。此冗余式存储数据 测试程序Pl进而细分为3个程序(Pl-l)写入测试数据、和(P1-2)对 比存储数据是否正确;分别由数据写入单元100、冗余数据测试单元 200来负责执行。
于具体实施上,在进行测试数据写入程序之前,可还包括下列的 细节歩骤
(5110) 令使用者(即网络系统管理人员)输入一RAID Level 1存 储模式下的成员数量N,其中1< N < Nmax, Nmax为冗余式硬盘阵列 20可提供的最大成员数量。于图2A-图2C所示的实施例中,成员数量 例如为^2。
(5111) 通过冗余式硬盘阵列20的控制接口 21来建立一 RAID Level l镜射磁盘群组30。由于成员数量N二2,因此此冗余式磁盘阵列 20的磁盘群组30的成员磁盘即如图2A所示般地包括第一磁盘31、第 二磁盘32 (第三磁盘33则用以作为备份磁盘)。
(5112) 读取该磁盘群组30中的总区块数量B。 写入测试数据的步骤(P1-1)用以将一组原始测试数据(例如以来表示)如图2A所示般地依RAID Level 1的规则写入至该磁盘 群组30中的各个成员磁盘(包括第一磁盘31、第二磁盘32)。于具体 实施上,此程序的细节步骤如下
(5121) 对该第一磁盘31、第二磁盘32进行一区块组态写入程
序,直至其存储空间饱和为止。
(5122) 通过控制接口 21停止该冗余式硬盘阵列20。 对比存储数据是否正确的步骤(P1-2)用以将上述的数据写入单元
100写入至该磁盘群组30中的第一磁盘31、第二磁盘32上的存储数 据分别对比至原始的测试数据[XYZ],由此而检查出该磁盘群组30中 的各个成员磁盘31、 32是否可正确地存储数据。于具体实施上,此程 序的细节步骤如下
(5131) 将磁盘群组30中的第1个成员磁盘31上的存储数据读 出,并将其对比至原始的测试数据[XYZ],由此而测试是否有错误发生; 若有错误,则发出一读取动作错误信息,并将此信息显示于网络服务 器10的屏幕监视器11上来告知给测试人员。
(5132) 将第一成员磁盘31的存储数据与其它成员(即第二成员 磁盘32)作对比,以测试是否有错误发生;若有任何成员磁盘产生对比 错误,则发出一对比错误信息,并将此信息显示于网络服务器10的屏 幕监视器11上来告知给测试人员。
(5133) 通过RAID控制接口 21重新启动该冗余式硬盘阵列20。
(5134) 对该冗余式硬盘阵列20迸行数据读取动作,并将读出的
数据对比至原始的测试数据[XYZ],以测试是否有错误发生;若有错误, 则发出一读取错误信息,并将此信息显示于网络服务器10的屏幕监视 器ll上来告知给测试人员。
(P2)磁盘删减测试程序
磁盘删减测测试程序P2用以仿真测试该冗余式磁盘阵列20于其 中一个成员磁盘损毁后,是否仍可正常运作,并可读取出正确的数据。
本实施例中,即测试该RAID Level 1的冗余式磁盘阵列20,是否 可于该磁盘群组30的成员磁盘发生损毁状况或被移除)的情况下,仍 可正常地运作并读取正确的数据。图2B所示的范例是以仿真成员磁盘 中的第二磁盘32发生损毁状况而仅剩余第一磁盘31为完好的情况作 说明。
此磁盘删减测测试程序P2进而细分为3个程序(P2-l)仿真一磁 盘损毁、(P2-2)测试冗余式磁盘阵列是否正常运作、和(P2-3)对比存 储数据是否正确,分别由磁盘删减单元500、冗余式磁盘阵列运作测试 单元300、和冗余数据测试单元200来负责执行。
仿真一磁盘损毁的步骤(P2-l)用以将该磁盘群组30中任一个成员 磁盘(本实施例中第二磁盘32)仿真成一损毁的磁盘,以测试该冗余式 磁盘阵列20于一个成员磁盘损毁时磁盘,是否仍可正常且完整地读取 出原先所存储入的数据。
由于本实施例的冗余式磁盘阵列20是一 RAID Level 1的磁盘阵 列,因此其可允许成员数减一的磁盘损毁,因此,若成员数大于二时, 可持续(P2-1) (P2-2) (P2-3)的步骤,直到该磁盘群组的成员数为一。
于具体实施上,此程序的细节步骤如下
(5211) 通过RAID控制接口 21来停止该RAID硬盘阵列装置20。
(5212) 从该镜射磁盘群组30中随机挑选一个成员磁盘(例如为 第二磁盘32),并将其组态信息(RAID superblock)清除。此动作即可 将成员磁盘中的第二磁盘32自成员磁盘中排除,因此可将第二磁盘32 仿真成一损毁的磁盘。
测试冗余式磁盘阵列是否正常运作的步骤P2-2用以测试该冗余式 磁盘阵列20是否能正确无误地运作,于具体实施上,此程序的细节步 骤如下
(5221) 通过RAID控制接口 21来重新运作该冗余式磁盘阵列20。
(5222) 检査是否于成员磁盘中第二磁盘32被仿真成一损毁的磁 盘后,冗余式磁盘阵列20仍可正常运作;若运作失败,则发出一运作 失败信息,并将此信息显示于网络服务器10的屏幕监视器11上来告 知给测试人员。
对比存储数据是否正确的步骤(Pl-3)用以将该存储数据对比模块 130所读取出的镜射存储数据对比至原始测试数据[XYZ],由此而检查 出该冗余式磁盘阵列20是否可正确地提供数据。于具体实施上,此程
序的细节步骤如下
(S231)将读取出的存储数据对比至原始测试数据[XYZ],并检査
是否有错误发生;若有错误,则发出一冗余数据失效信息,并将此信 息显示于网络服务器10的屏幕监视器11上来告知给测试人员。 (P3)磁盘增加测试程序
磁盘增加测试程序P3于本实施例,用以测试该RAID Level 1的 冗余式磁盘阵列20,于该磁盘群组30中有任一成员磁盘(例如为第2 磁盘32)发生损毁的情况下,是否可利用另一磁盘(例如为第3磁盘33) 来正常地提供一重建功能(rebuild),并正确存储数据。此重建功能测 试程序进而细分为3个程序(P3-l)仿真一备份磁盘、(P3-2)监视冗 余式磁盘阵列是否正常重建、和(P3-3)对比存储数据是否正确,分别 由磁盘增加单元600、冗余式磁盘阵列重建监视单元400、和冗余数据 测试单元200来负责执行。
仿真一备份磁盘的步骤(P3-1)用以从该镜射磁盘群组30中选择一 非成员磁盘(例如为第3磁盘33)来指定作为一备份磁盘。于具体实施 上,此程序的细节步骤如下
(5311) 通过RAID控制接口 21停止该RAID硬盘阵列装置20。
(5312) 随机选取RAID硬盘阵列装置20中的一非成员磁盘(例如 为图2C所示的第三磁盘33),并修改该选取的磁盘(即第三磁盘33)修 改为与其它所有成员磁盘(即第一磁盘31)相同的组态方式(即RAID superblock所存的组态数据),以将该第三磁盘33设定成一成员磁盘。
要特别说明的是,在磁盘删减测试程序P2中,将第二磁盘32自 成员磁盘中删除后,第二磁盘32即成为一非成员磁盘,因此在磁盘增 加测试程序P3中,亦可以再度新增第二磁盘32,为一新的成员磁盘。 重建程序监视程序(P3-2)用以于该镜射磁盘群组30中有一磁盘损 毁的情况下,自动于该冗余式磁盘阵列20被重新启动后,监视该冗余 式磁盘阵列20是否可正常地利用新增的成员磁盘来进行一重建程序。 于具体实施上,此程序的细节步骤如下
(5321) 通过RAID控制接口 21来重新运作冗余式磁盘阵列20。
(5322) 通过RAID控制接口21来监视冗余式磁盘阵列20其是否 处于重建模式;若否,则发出一重建功能失效信息,并将此信息显示 于网络服务器10的屏幕监视器11上来告知给测试人员。
(5323) 重复地监视该RAID硬盘阵列装置20,直至其完成重建程序。
对比存储数据是否正确的步骤(P3-3)用以于上述的重建程序完成 之后,对比该新增的成员磁盘(即第三磁盘33)上所重建的数据是否符 合原始测试数据[XYZ],由此而检查出该冗余式磁盘阵列20是否可靠 地执行重建功能,并可正确的建立冗余数据。于具体实施上,此程序 的细节歩骤如下
(5331) 将第三磁盘33上的重建数据读出,并对比至原始测试数 据[XYZ];若有错误,则发出一重建失败信息,并将此信息显示于网络 服务器10的屏幕监视器11上来告知给测试人员。
(5332) 通过RAID控制接口 21来停止该冗余式磁盘阵列20。 同样的,若成员数大于二时,可持续(P3-1) (P3-2) (P3-3)的步
骤,直到该磁盘群组的成员数达到初始的设定数。
上述的3项测试程序完成之后,即可完整地测试出该RAID Level 1 的冗余式磁盘阵列20的存储数据可靠性。
总而言之,本发明提供了一种冗余式磁盘阵列存储数据可靠性测 试方法及系统,其特点在于可通过冗余式存储数据测试程序、磁盘删 减测试程序及磁盘增加测试程序,来自动地测试出冗余式磁盘阵列存 储数据在各种状况下的可靠性。
以上所述仅为本发明的较佳实施例而已,并非用以限定本发明的 实质技术内容的范围。本发明的实质技术内容广义地定义于上述的权
利要求书中。若任何他人所完成的技术实体或方法与上述的权利要求 书所定义的完全相同、或是等效的变更,均将被视为涵盖于本发明的 权利要求书内。
权利要求
1.一种冗余式磁盘阵列存储数据可靠性测试方法,其可应用于一计算机平台,且该计算机平台配有一磁盘阵列装置,用以对该磁盘阵列装置进行存储数据可靠性测试程序;其特征在于,此冗余式磁盘阵列存储数据可靠性测试方法至少包括一冗余式存储数据测试程序,用以测试该冗余式磁盘阵列的冗余数据是否正确;一磁盘删减测试程序,用以仿真测试该冗余式磁盘阵列于其中一个成员磁盘损毁后,是否仍可正常运作,并可读取出正确的数据;以及一磁盘增加测试程序,用以测试该冗余式磁盘阵列新增加一个成员磁盘后,是否可于该新增加的成员磁盘上正确地存储数据。
2. 根据权利要求1所述的冗余式磁盘阵列存储数据可靠性测试方 法,其特征在于,该冗余式存储数据测试程序包括一写入测试数据步骤,用以将一组测试数据写入至该磁盘阵列装 置;以及一对比步骤,用以对比存储数据是否正确。
3. 根据权利要求2所述的冗余式磁盘阵列存储数据可靠性测试方 法,其特征在于,该磁盘删减测试程序至少包括仿真一磁盘损毁;测试冗余式磁盘阵列是否正常运作;以及 对比存储数据是否正确。
4. 根据权利要求1所述的冗余式磁盘阵列存储数据可靠性测试方 法,其中该磁盘增加测试程序用以测试该冗余式磁盘阵列于有一成员 磁盘发生损毁的情况下,是否可利用另一磁盘来正常地执行一重建程 序;且该重建程序包括仿真一备份磁盘; 监视冗余式磁盘阵列是否正常重建;以及 对比存储数据是否正确。
5. —种冗余式磁盘阵列装置存储数据可靠性测试系统,其搭载至 一计算机平台,且该计算机平台配有一磁盘阵列装置,用以对该磁盘 阵列装置进行一存储数据可靠性测试程序;其特征在于,此冗余式磁盘阵列装置存储数据可靠性测试系统至少包括 一数据写入单元,用以将测试数据写入冗余式磁盘阵列; 一冗余数据测试单元,其用以测试该冗余式磁盘阵列存储的冗余 数据是否正确;一冗余式磁盘阵列运作测试单元,其用以测试该冗余式磁盘阵列 是否能正确无误地运作;一冗余式磁盘阵列重建监视单元,用以监视冗余式磁盘阵列是否 在进行重建;一磁盘删减单元,其删减该冗余式磁盘阵列中的一指定的磁盘;以及一磁盘增加单元,其增加一新磁盘至该冗余式磁盘阵列。
6. 根据权利要求5所述的冗余式磁盘阵列装置存储数据可靠性测 试系统,其特征在于,该计算机平台为一网络服务器。
7. 根据权利要求5所述的冗余式磁盘阵列装置存储数据可靠性测 试系统,其特征在于,该数据写入单元和该冗余数据测试单元用以共 同负责执行一冗余式存储数据测试程序,其至少包括一写入测试数据步骤,用以将一组测试数据写入至该磁盘阵列装 置;以及一对比步骤,用以对比存储数据是否正确。
8. 根据权利要求5所述的冗余式磁盘阵列装置存储数据可靠性测 试系统,其特征在于,该冗余存储测试单元、该冗余式磁盘阵列运作 测试单元、该磁盘删减单元、和该磁盘增加单元用以共同负责执行一 磁盘删减测试程序,其至少包括 仿真一磁盘损毁;测试冗余式磁盘阵列是否正常运作;以及 对比存储数据是否正确。
9.根据权利要求5所述的冗余式磁盘阵列装置存储数据可靠性测 试系统,其特征在于,该磁盘增加单元、该冗余式磁盘阵列重建监视 单元、和该冗余数据测试单元用以共同负责执行一磁盘增加测试程序, 且该磁盘增加测试程序用以测试该冗余式磁盘阵列于有一成员磁盘发 生损毁的情况下,是否可利用另一磁盘来正常地执行一重建程序;其 中该重建程序包括仿真一备份磁盘;监视冗余式磁盘阵列是否正常重建;以及 对比存储数据是否正确。
全文摘要
一种冗余式磁盘阵列存储数据可靠性测试方法及系统,其可应用于对一冗余式磁盘阵列(Redundant Array of Independent Disks,RAID)进行一存储数据可靠性测试程序,以测试该磁盘阵列的存储数据是否具有可靠性;且其特点在于对该磁盘阵列进行3项测试程序冗余式存储数据测试程序、磁盘删减测试程序及磁盘增加测试程序,由此即可完整地测试出RAID Level 1镜射存储模式的操作可靠性。
文档编号G06F11/28GK101192185SQ20061016331
公开日2008年6月4日 申请日期2006年11月30日 优先权日2006年11月30日
发明者陈志伟 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1