硬盘性能的测试方法和装置的制作方法

文档序号:6737200阅读:199来源:国知局
专利名称:硬盘性能的测试方法和装置的制作方法
技术领域
本发明涉及计算机领域,并且特别地,涉及一种硬盘性能的测试方法和装置。
背景技术
目前,已经提出了一些针对硬盘的IO性能进行测试的方案,这些方案可从不同角度进行测试并在不同程度上满足对硬盘IO性能进行测试的要求,例如,能够测试硬盘的顺序读写速度、随机读写速度、对指令的响应时间、寻道时间、潜伏时间、功耗等。但是这些测试方法和思路均需要人工手动操作相关软件来完善。为了减少硬盘测试过程中人工操作量,目前也已经提出了用于进行硬盘IO测试的软件,这些测试软件能够对硬盘下达相应指令,并根据其反馈的结果进行分析与处理来判断其性能。但是,这些软件同样需要借助操作员的手工操作才能够完成相应的功能。由于已有的测试方案都依赖于人工参与,因此,这些方案只适用于小规模,实验室级别的测试验证,不适合生产线大规模部署。针对相关技术中硬盘IO测试需要借助人工操作而导致测试效率较低的问题,目前尚未提出有效的解决方案。

发明内容
针对相关技术中硬盘IO测试需要借助人工操作而导致测试效率较低的问题,本发明提出一种硬盘性能的测试方法和装置,能够有效提高测试的效率。本发明的技术方案是这样实现的根据本发明的一个方面,提供了一种硬盘性能的测试方法。该方法包括获取需要测试的至少一个硬盘的参数信息;在预先配置的测试环境下对硬盘进行测试,读取测试得到的测试结果、参数信息以及硬盘所在计算机的系统参数信息;根据读取的参数信息、测试结果以及计算机的系统参数信息判断硬盘的性能是否正

巾ο在配置硬盘的测试环境之前,该方法进一步包括确定需要测试的每个硬盘的参数信息,并判断需要测试的每个硬盘是否是磁盘冗余阵列RAID。并且,对于是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一 RAID卷数量、RAID级别、每卷中包含的磁盘数量;对于不是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一硬盘的型号、厂商信息。此外,在配置的测试环境下对硬盘进行测试包括对测试的硬盘进行数据写入操作,硬盘以预定时间间隔返回写入速率,将硬盘返回的写入速率作为测试结果保存在预定日志文件中。其中,判断硬盘的性能是否正常包括对于测试的每个硬盘,将该硬盘返回的写入速率进行平均,得到平均速率;对于每个硬盘,将预定速率与该硬盘的平均速率进行比较, 其中,预定速率为与系统参数信息和该硬盘的参数信息所对应的速率阈值。
此外,在预先配置的测试环境下对硬盘进行测试包括如果一个被测硬盘为系统盘,则针对该硬盘的指定分区进行测试;如果一个被测硬盘为非系统盘,则针对该硬盘的全部分区进行测试。根据本发明的另一方面,提供了一种硬盘性能的测试装置。根据本发明实施例的硬盘性能的测试装置包括获取模块,用于获取需要测试的至少一个硬盘的参数信息;测试模块,用于在预先配置的测试环境下对硬盘进行测试;读取模块,用于读取测试得到的测试结果、参数信息以及硬盘所在计算机的系统参数信息;分析模块,用于根据读取的参数信息、测试结果以及计算机的系统参数信息判断硬盘的性能是否正常。其中,该装置可以进一步包括确定模块,用于在配置硬盘的测试环境之前,确定需要测试的每个硬盘的参数信息,并判断需要测试的每个硬盘是否是RAID。此外,对于是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一 RAID卷数量、RAID级别、每卷中包含的磁盘数量;对于不是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一硬盘的型号、厂商信息。另外,测试模块用于确定至少一个硬盘的写入速率;并且,分析模块用于对于测试的每个硬盘,将该硬盘返回的写入速率进行平均,得到平均速率;并且,还用于对于每个硬盘,将预定速率与该硬盘的平均速率进行比较,其中,预定速率为与系统参数信息和该硬盘的参数信息所对应的速率阈值。本发明通过获取硬盘的参数信息和系统信息,并根据该参数信息和系统信息判断实际测得的硬盘性能是否正常,能够实现硬盘的自动化测试,提高测试的效率,同时保证测试的准确性。


图1是根据本发明实施例的硬盘性能的测试方法的流程图;图2是根据本发明实施例的硬盘性能的测试装置的框图。
具体实施例方式根据本发明的实施例,提供了一种硬盘性能的测试方法。如图1所示,根据本发明实施例的硬盘性能的测试方法包括步骤S101,获取需要测试的至少一个硬盘的参数信息;步骤S103,在预先配置的测试环境下对硬盘进行测试,读取测试得到的测试结果、 参数信息以及硬盘所在计算机的系统参数信息;步骤S105,根据读取的参数信息、测试结果以及计算机的系统参数信息判断硬盘的性能是否正常。其中,在配置硬盘的测试环境之前,该方法可以进一步包括确定需要测试的每个硬盘的参数信息,并判断需要测试的每个硬盘是否是磁盘冗余阵列(Redundant Array of Independent Disk,简称为 RAID)。并且,对于是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一 RAID卷数量、RAID级别、每卷中包含的磁盘数量;另一方面,对于不是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一硬盘的型号、厂商信息。当在配置的测试环境下对硬盘进行测试时,可以对测试的硬盘进行数据写入操作,硬盘以预定时间间隔返回写入速率,将硬盘返回的写入速率作为测试结果保存在预定日志文件中。并且,在判断硬盘的性能是否正常时,可以执行以下处理对于测试的每个硬盘, 将该硬盘返回的写入速率进行平均,得到平均速率;对于每个硬盘,将预定速率与该硬盘的平均速率进行比较,其中,预定速率为与系统参数信息和该硬盘的参数信息所对应的速率阈值。此外,如果一个被测硬盘为系统盘,则在测试时,需要针对该硬盘的指定分区进行测试,避免损坏系统文件;如果一个被测硬盘为非系统盘,则可以针对该硬盘的全部分区进行测试。在实际应用中,可以通过以下步骤来实现根据本发明实施例的硬盘测试方案步骤1 判断系统中的硬盘数量和所对应盘符(这里的盘符可以是硬盘的位置符);步骤2 判断硬盘的型号与厂商信息,并根据此信息判断硬盘是否已经做了 RAID (是否已经是RAID)。步骤3 根据步骤2读取的信息,调用相关厂商提供的命令接口,读取相关RAID阵列的具体信息,例如,可以读取RAID卷数量,RAID级别,每卷中包含的硬盘数量等,之后将 RAID信息写入记录文件,为之后判断通过与否做准备。步骤4 如果是非RAID,则根据厂商不同,进行相应硬盘型号的判断。并写入记录文件。(通过步骤3和步骤4,相当于获取了硬盘的参数信息)步骤5 将所需库拷贝到相应目录,为运行测试程序做准备。步骤6 先进行系统盘的测试,将待测硬盘挂在到之前设定好的制定目录,运行测试程序,数据块大小为64MB(也可以是其他大小的数据块),顺序写入,每20秒反馈一次结果(也可以根据其他长度的时间周期反馈结果),并将结果写入到指定日志中,运行5分钟 (测试的执行时间长度可以根据实际需要改变)之后结束。步骤7 如有非系统盘,则依次在每个非系统盘上运行一次测试程序。测试过程同上,5分钟后结束(测试的执行时间长度可以根据实际需要改变),并将结果写入对应的日志文件。步骤8 依次读出系统盘与非系统盘的测试结果日志,并对结果求平均值,将求平均的结果写入指定文件。步骤9 读取系统的硬件信息,判断主板、CPU、主机序列号等信息,并写入相应文件。步骤10 读取出之前记录在日志中的硬盘型号,RAID级别,RAID卷数量,RAID卷中的磁盘数量信息,并同时读取硬盘速度阈值信息,步骤8的结果取出,与对应型号硬盘或对应的RAID卷的阀值进行比较。其中,上述的速率阈值信息可以以表格的形式进行预先保存,例如,其中可以包含各种系统参数和硬盘参数的组合以及所对应的速率阈值,通过将表格中的速率阈值与测试得到的平均速率值进行比较就能够结合实际的硬盘型号和系统状况判断硬盘的速率是否正常。
步骤11 显示步骤10的比较结果,对通过测试和未通过测试的硬盘进行标识,例如,可以通过不同颜色的标识来表示硬盘是否通过测试,例如,通过的硬盘用蓝色显示,未通过测试的硬盘用红色警示显示,并将各个硬盘的测试结果写入日志文件。步骤12 :(可选)将日志结果上传至相关服务器,方便判断与诊断。通过上述处理,相比于相关技术中通过手工运行测试程序针对各个硬盘进行逐个测试,并手工比较阀值进行判断的方案,能够显著提高了测试的执行效率,单位时间内进行测试的系统数量比手工运行测试提高10倍以上,并且有助于结合生产自动化部署系统进行自动化部署,可以进一步提高测试效率,实现整个系统的全自动测试。除了上述实现方式之外,还可以采用键盘鼠标记录的方式进行自动化运行与自动化比较结果。并且,可以使用程序语言(如C,C++, VB, Java等)进行结构化编程,直接创造出一块进行自动化硬盘IO性能测试的软件。采用上述方案的逻辑与思路,可直接实现相应功能。根据本发明的实施例,还提供了一种硬盘性能的测试装置。如图2所示,根据本发明实施例的硬盘性能的测试装置包括获取模块21,用于获取需要测试的至少一个硬盘的参数信息;测试模块22,用于在预先配置的测试环境下对硬盘进行测试;读取模块23,连接至获取模块21和测试模块22,用于读取测试得到的测试结果、 参数信息以及硬盘所在计算机的系统参数信息;分析模块M,连接至读取模块23,用于根据读取的参数信息、测试结果以及计算机的系统参数信息判断硬盘的性能是否正常。该装置可以进一步包括确定模块(未示出),用于在配置硬盘的测试环境之前, 确定需要测试的每个硬盘的参数信息,并判断需要测试的每个硬盘是否是RAID。此外,对于是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一 RAID卷数量、RAID级另I」、每卷中包含的磁盘数量;而对于不是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一硬盘的型号、厂面信息。应当注意,尽管之前以测试硬盘IO速率性能为例进行了描述,但是,本发明的测试方案还可以统计和测试硬盘的其他方面性能,只需要配置不同硬盘参数信息、系统参数信息所对应的该性能指标的对应关系,即可根据对应关系对实际测得的指标进行比较,并判断该指标是否正常。此外,测试模块用于确定至少一个硬盘的写入速率;并且,分析模块用于对于测试的每个硬盘,将该硬盘返回的写入速率进行平均,得到平均速率;并且,分析模块还用于对于每个硬盘,将预定速率与该硬盘的平均速率进行比较,其中,预定速率为与系统参数信息和该硬盘的参数信息所对应的速率阈值。综上所述,借助于本发明的上述技术方案,通过获取硬盘的参数信息和系统信息, 并根据该参数信息和系统信息判断实际测得的硬盘性能是否正常,能够实现硬盘的自动化测试,提高测试的效率,同时保证测试的准确性。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种硬盘性能的测试方法,其特征在于,包括 获取需要测试的至少一个硬盘的参数信息;在预先配置的测试环境下对所述硬盘进行测试,读取测试得到的测试结果、所述参数信息以及所述硬盘所在计算机的系统参数信息;根据读取的所述参数信息、所述测试结果以及所述计算机的系统参数信息判断所述硬盘的性能是否正常。
2.根据权利要求1所述的测试方法,其特征在于,在配置硬盘的测试环境之前,所述方法进一步包括确定需要测试的每个硬盘的参数信息,并判断需要测试的每个硬盘是否是磁盘冗余阵列 RAID。
3.根据权利要求2所述的测试方法,其特征在于,对于是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一 RAID卷数量、RAID 级别、每卷中包含的磁盘数量;对于不是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一硬盘的型号、厂商信息。
4.根据权利要求1所述的测试方法,其特征在于,在配置的所述测试环境下对所述硬盘进行测试包括对测试的硬盘进行数据写入操作,所述硬盘以预定时间间隔返回写入速率,将所述硬盘返回的写入速率作为测试结果保存在预定日志文件中。
5.根据权利要求4所述的测试方法,其特征在于,判断所述硬盘的性能是否正常包括 对于测试的每个硬盘,将该硬盘返回的写入速率进行平均,得到平均速率;对于每个硬盘,将预定速率与该硬盘的平均速率进行比较,其中,所述预定速率为与所述系统参数信息和该硬盘的参数信息所对应的速率阈值。
6.根据权利要求1所述的测试方法,其特征在于,在预先配置的测试环境下对所述硬盘进行测试包括如果一个被测硬盘为系统盘,则针对该硬盘的指定分区进行测试; 如果一个被测硬盘为非系统盘,则针对该硬盘的全部分区进行测试。
7.—种硬盘性能的测试装置,其特征在于,包括获取模块,用于获取需要测试的至少一个硬盘的参数信息; 测试模块,用于在预先配置的测试环境下对所述硬盘进行测试; 读取模块,用于读取测试得到的测试结果、所述参数信息以及所述硬盘所在计算机的系统参数信息;分析模块,用于根据读取的所述参数信息、所述测试结果以及所述计算机的系统参数信息判断所述硬盘的性能是否正常。
8.根据权利要求7所述的测试装置,其特征在于,进一步包括确定模块,用于在配置硬盘的测试环境之前,确定需要测试的每个硬盘的参数信息,并判断需要测试的每个硬盘是否是RAID。
9.根据权利要求8所述的测试装置,其特征在于,对于是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一 RAID卷数量、RAID级别、每卷中包含的磁盘数量;对于不是RAID的硬盘,确定的该硬盘的参数信息包括以下至少之一硬盘的型号、厂商信息。
10.根据权利要求7所述的测试方法,其特征在于, 所述测试模块用于确定所述至少一个硬盘的写入速率;并且,所述分析模块用于对于测试的每个硬盘,将该硬盘返回的写入速率进行平均,得到平均速率;并且,还用于对于每个硬盘,将预定速率与该硬盘的平均速率进行比较,其中, 所述预定速率为与所述系统参数信息和该硬盘的参数信息所对应的速率阈值。
全文摘要
本发明公开了一种硬盘性能的测试方法和装置,其中,该方法包括获取需要测试的至少一个硬盘的参数信息;在预先配置的测试环境下对硬盘进行测试,读取测试得到的测试结果、参数信息以及硬盘所在计算机的系统参数信息;根据读取的参数信息、测试结果以及计算机的系统参数信息判断硬盘的性能是否正常。本发明通过获取硬盘的参数信息和系统信息,并根据该参数信息和系统信息判断实际测得的硬盘性能是否正常,能够实现硬盘的自动化测试,提高测试的效率,同时保证测试的准确性。
文档编号G11B20/18GK102568522SQ201110456279
公开日2012年7月11日 申请日期2011年12月31日 优先权日2011年12月31日
发明者刘建锋, 刘流, 赵雷 申请人:曙光信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1