一种全方位自动化的磁盘测试工具的制作方法

文档序号:23991882发布日期:2021-02-20 13:43阅读:83来源:国知局
一种全方位自动化的磁盘测试工具的制作方法

[0001]
本发明涉及磁盘检测技术领域,具体为一种全方位自动化的磁盘测试工具。


背景技术:

[0002]
相比较于cpu、内存和网络带宽,磁盘的性能增长速度远远落后于前者,称为制约现代存储系统性能提高的瓶颈。为了弥补磁盘的缺陷,人们研究了多种新材料试图在一定程度上代替磁盘,其中固态硬盘(ssd)最有可能取代磁盘的地位。但是在未来比较长的时间内,相较于成本昂贵的ssd,磁盘仍有较大的应用市场。并且读写性能、寻道时间、数据传输率、i/o等指标作为检验磁盘的最基本参数,也直接影响着我们的工作效率。因此,对磁盘性能的测试很有必要,这样有助于进一步对磁盘的性能进行优化,进一步提升用户的使用感,相对于价格昂贵的ssd,进一步提高磁盘的性价比。而在我们使用产品时,也能了解到磁盘的真实性能,这也直接影响到了我们的工作效率。
[0003]
目前国内外进行磁盘性能测试的工具以及方法都很多,例如,在文件系统性能测评方面,文件系统i/o性能测评软件是目前最易获得的存储性能测评工具,常用的有postmark、iozone、bonnie++和iometer。iozone、bonnie++可以运行在多个操作系统上,是较好的文件io操作的基准工具;iometer可对各种常用的负载情况如文件服务器、oltp、web服务进行测评。iometer的工作负载规范已经成为windows平台的事实标准,并且可以产生许多性能指标结果,是windows平台最好用的、最常用的测试io性能的基准工具;postmark是测试internet应用下文件系统性能的基准。
[0004]
而当前工具大多都是如上所述,只针对一方面性能对磁盘进行测试,如果使用者想要对多个磁盘性能进行测试时,需要查找和选择不同的工具,而对于没有计算机基础知识的人来说,选择工具也是十分困难的。基于此,本发明集成了多种测试项,可以对磁盘的多方面性能进行测试,在一款工具的基础上,就可以同时实现采集磁盘信息,并进行读写性能、元数据性能、稳定性性能的测试,可以满足有不同磁盘测试需求的用户的要求。


技术实现要素:

[0005]
本部分的目的在于概述本发明的实施方式的一些方面以及简要介绍一些较佳实施方式。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
[0006]
鉴于现有磁盘测试工具中存在的问题,提出了本发明。
[0007]
因此,本发明的目的是提供一种全方位自动化的磁盘测试工具,能够实现对磁盘的多方面性能进行测试,在一款工具的基础上,就可以同时实现采集磁盘信息,并进行读写性能、元数据性能、稳定性性能的测试,可以满足有不同磁盘测试需求的用户的要求。
[0008]
为解决上述技术问题,根据本发明的一个方面,本发明提供了如下技术方案:
[0009]
一种全方位自动化的磁盘测试工具,其包括初始化模块、磁盘性能测试眼镜模块
和数据库存储模块,所述初始化模块包括界面设计、测试工具初始化设置、数据库初始化、参数获取和用户身份验证,所述磁盘性能测试研究模块包括执行任务、过程展示和提取结果并保存,所述执行任务包括信息采集、稳定性性能测试、读写性能测试,所述数据库存储模块包括保存测试结果、保存必要参数、历史结果查看和测试结果导出。
[0010]
作为本发明所述的一种全方位自动化的磁盘测试工具的一种优选方案,其中:界面设计在国产uos系统中使用qt进行开发,兼容多个国产操作系统平台,采用sql数据库进行数据的存储。
[0011]
作为本发明所述的一种全方位自动化的磁盘测试工具的一种优选方案,其中:测试工具初始化设置需要自动下载安装的数据,包括hdparm、filebench、fio和iozone,通过获取用户的root密码,获得安装工具的权限,以成功安装工具。
[0012]
作为本发明所述的一种全方位自动化的磁盘测试工具的一种优选方案,其中:在初始化阶段,软件判断数据库和表是否存在,若不存在,则在数据库中建表all_tool和account,all_tool用于存储测试结果相关信息,account用于存储工具安装路径的信息。
[0013]
作为本发明所述的一种全方位自动化的磁盘测试工具的一种优选方案,其中:进行性能测试之前,在可视化界面,获取用户输入/选择的测试所需的参数,并且临时保存到变量中,进行测试的时候访问变量以获得测试所需要的参数。
[0014]
与现有技术相比,本发明的有益效果是:
[0015]
1、本发明实现了全方位测试,将多个磁盘性能测试内容集成到一款工具上,测试功能覆盖全面,提供的测试项足以满足现阶段对磁盘性能测试的需求。
[0016]
2、本发明实现了测试工具的自动化,工具提供了良好的用户界面,用户无需再通过命令行测试,参数设置、测试选项、测试过程控制以及测试结果的显示和管理均采用友好的图形化交互界面,且可以方便地查看历史测试结果,便于用户学习和使用,相较于之前的工具,极大地提升了用户友好性。
[0017]
3、本发明实现了测试工具的可跨平台应用,可运行于linux、uos、ubuntu以及centos等多种操作系统,可移植性高。
[0018]
4、本发明采用的整体技术架构,分为初始化模块、磁盘性能研究模块(各测试任务对应执行任务、过程展示以及结果保存及导出)、数据存储模块。
[0019]
5、本发明所涵盖的四方面测试任务的整体设置,即:在研究各测试项之后,选取合适的工具,并对工具进行分析,选取在磁盘测试过程中可以较好体现磁盘性能的测试点,分析欲达到预期效果所需要的必要参数。将这些测试点和参数进行进一步分析,简化工具的使用,只提供可以充分了解磁盘性能的测试项。
[0020]
6、本发明测试结果的有效提取,显示的结果对用户需求的磁盘性能测试项结果以表格形式实现了精简有效的提取,用户可以直接清晰地获取所需的各项数据。
附图说明
[0021]
为了更清楚地说明本发明实施方式的技术方案,下面将结合附图和详细实施方式对本发明进行详细说明,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
[0022]
图1为本发明结构示意图;
[0023]
图2为本发明初始化模块技术架构图;
[0024]
图3为本发明文件系统架构图;
[0025]
图4为本发明磁盘性能研究模块技术架构图;
[0026]
图5为本发明数据库存储模块技术架构图。
具体实施方式
[0027]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
[0028]
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施方式的限制。
[0029]
其次,本发明结合示意图进行详细描述,在详述本发明实施方式时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。
[0030]
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
[0031]
实施例1
[0032]
1、界面设计实施实例
[0033]
界面设计使用qt完成。共有以下几个主要界面:“工具自动安装”、“执行任务”、“正在执行”、“已完成任务”、“帮助文档”。
[0034]“工具自动安装”界面,支持选择安装包路径以及工具安装路径。用户需要先选择工具的安装包所在路径(软件提供安装包),然后选择工具的安装路径,点击“安装”按钮即可根据后续提示操作以进行自动安装工具过程。
[0035]“执行任务”界面,包括信息采集、稳定性性能测试、读写性能测试、元数据性能测试4个方面的若干个测试项。用户可以根据自己的需求选择对应的测试项,例如,稳定性测试包括“文件系统运行正确性测试”和“文件系统压力测试”。每个测试项对应其需要通过文本框输入的参数,或者通过下拉框选择的参数。在确定测试项和参数之后,点击“执行任务”按钮即可根据后续提示以进行性能测试过程。
[0036]“正在执行”界面,是性能测试进行时展示给用户的界面,可以显示测试任务名称、测试任务场景、测试任务执行时间,并且实时显示后台终端执行性能测试的过程。测试任务结束之后,将跳转到“已完成任务”界面。
[0037]“已完成任务”界面,包含有历史若干次测试任务的测试结果,以列表的形式展示给用户,用户可以点击某项的“测试结果”按钮,选择查看该测试项结果,并且可以选择“导出结果”以导出该项内容;可以点击某项的“删除记录”按钮,删除该项记录。
[0038]“帮助文档”界面,是对本软件的使用操作指南,用户可以查看帮助文档以了解工具自动安装详情、参数填写/选择详情、测试结果解析详情等。
[0039]
2、测试工具初始化实施实例
[0040]
(1)将工具运行依赖文件和工具包导入到要测试的机器,点击文件夹中的可执行
文件即可运行程序。
[0041]
(2)在使用本发明的工具前,需要在安装工具的界面,进行依赖工具的安装。选择工具包路径,即(1)中所提到的工具包所在路径(此处检查所选路径是否存在,且是否有目标安装包),并选择工具的安装路径,在用户输入root密码之后验证用户身份,身份核验通过则进行依赖工具的安装。同时,本发明提供工具包的路径检查以及用户身份核验,如果路径或者用户密码其中一个有误,则依赖工具就不能继续安装过程。
[0042]
(3)在安装过程中,可以查看终端进程输出的实时反馈,会提示依赖工具是否安装成功。如果工具安装失败,则提示用户安装失败;如果依赖工具安装成功,则保存其安装路径,作为工具安装成功的依据。
[0043]
3、数据库初始化实施实例
[0044]
本软件采用sqlite数据库,由qt中的qsqlite驱动程序与sqlite进行通信。建立名为“sys”的数据库,并在其中建立两个数据库表“all_tool”和“account”。“all_tool”用于存储磁盘性能测试的测试项名称、测试场景名称、运行时间以及测试结果。“account”用于存储测试工具的安装路径。
[0045]
all_tool表:
[0046][0047]
account表:
[0048]
columnnamedatatypedefault/expressionaddressvarchar(250) install_addrvarchar(250) [0049]
4、参数获取实施实例
[0050]
在进行某测试项的测试前,需要先在“执行任务”界面输入/选择参数。若有输入参数的需要,则对应测试项设置文本框或下拉框以供用户选择,使用qt中的qlabel和qcombobox完成。
[0051]
在用户输入或者选择参数,并且点击“执行任务”按钮之后,本软件将会读取对应测试项若干个文本框/下拉框内容,存储在临时变量中。之后,判断参数输入是否符合规范:例如,用户是否按照要求输入数字类型数据,或者输入的数字是否在规定的区间范围内。在
所有参数进行合理性判断之后,即可进行下一步操作。
[0052]
5、用户身份验证实例实施
[0053]
(1)用户首先根据提示输入root密码。
[0054]
(2)根据用户输入的root密码,在后端建立终端进程,并判断用户输入的root密码是否正确。
[0055]
(3)将终端进程判断的结果反馈给用户,告知其密码是否正确。若密码正确,则保存密码,反之则提示其密码错误,并限制用户进行下一步动作。
[0056]
(4)仅在安装依赖工具和重新运行本软件时需要输入密码,在一次使用过程中,用户只需要输入一次密码,这个密码会被记录,用户在之后的多次测试任务中都不需要再次输入密码。直到本软件被关闭,在下一次重启时,用户需要重新输入密码,这样做的目的是为了防止用户密码更改而本软件没有跟随用户实时更新。
[0057]
6、执行磁盘测试项实施实例(以元数据性能测试为例)
[0058]
(1)首先在“执行任务”界面,在任务列表中找到“元数据性能测试”,并且在对应一行提供的参数输入框/下拉框中选择合适的参数(可参照帮助文档),填写或选择完毕之后,点击“执行任务”按钮。此时,后端建立终端进程,根据用户输入的参数(若为重启后的首次执行,则仍需输入密码),执行相应命令以进行元数据性能测试。
[0059]
需要注意的是,用户需要输入正确的密码和正确格式的参数,测试才可以顺利进行。
[0060]
(2)测试开始执行,跳转到“正在执行”界面,在此界面用户可以查看终端进程所给出的实时反馈,即测试过程以及最后的测试结果。
[0061]
(3)在测试结束时,获取到终端反馈的最后结果,将其转换为json字符串的形式,利用正则匹配对其中的内容进行筛选、总结,按照对测试的研究所得到的评测磁盘性能的标准,提取出结果中精炼有用的信息,并将其保存到数据库,同时,用户可以在“已完成任务”界面查看测试结果,且可以查看历史测试结果,并且可以根据需要选择是否要导出结果。
[0062]
根据实施例1可以得出,本发明实现了对磁盘性能的全方位测试,集成了多项磁盘测试内容,提供给用户多种磁盘测试项的选择。用户在需要选择工具进行磁盘性能测试时,不需要消耗更多的时间在选择工具和研究工具使用的问题上面,这在一定程度上节约了大部分时间。工具在设计时选择了磁盘各方面性能测试时的重点测试项,基本覆盖了磁盘性能测试功能的需要。
[0063]
本发明设计了工具的自动化测试,用户无需再通过命令行输入测试命令进行测试,工具提供了友好的图形界面和用户进行交互,用户可以依据本发明提供的测试项,以及筛选出的有助于进行磁盘性能测试的参数选择,按照说明书设置参数来进行磁盘性能测试,避免了用户输入命令的错误情况,减少了用户在测试时人工输入的时间,提高了测试效率。
[0064]
本发明实现了工具的跨平台应用,工具可运行于多种操作系统,大大提高了工具的可应用性。
[0065]
本发明对测试得到的结果进行了全面的阐述,用户不需要查阅资料就可以得到关于磁盘测试内容的结果分析,并可以查看历史结果或导出结果。
[0066]
虽然在上文中已经参考实施方式对本发明进行了描述,然而在不脱离本发明的范围的情况下,可以对其进行各种改进并且可以用等效物替换其中的部件。尤其是,只要不存在结构冲突,本发明所披露的实施方式中的各项特征均可通过任意方式相互结合起来使用,在本说明书中未对这些组合的情况进行穷举性的描述仅仅是出于省略篇幅和节约资源的考虑。因此,本发明并不局限于文中公开的特定实施方式,而是包括落入权利要求的范围内的所有技术方案。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1