CN106021047A - 一种对硬盘测试数据进行处理的方法及装置 - Google Patents
一种对硬盘测试数据进行处理的方法及装置 Download PDFInfo
- Publication number
- CN106021047A CN106021047A CN201610321909.6A CN201610321909A CN106021047A CN 106021047 A CN106021047 A CN 106021047A CN 201610321909 A CN201610321909 A CN 201610321909A CN 106021047 A CN106021047 A CN 106021047A
- Authority
- CN
- China
- Prior art keywords
- test
- temporary file
- file
- hard disk
- strategy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种对硬盘测试数据进行处理的方法及装置,该方法包括:获取测试软件Iometer对硬盘测试后形成的测试原文件;创建第一临时文件以及第二临时文件;从所述测试原文件中获取对所述硬盘进行测试的至少一个测试策略,并将所述至少一个测试策略存储到所述第一临时文件中;从所述测试原文件中获取每一个所述测试策略对应的性能测试值,并将所述性能测试值存储到所述第二临时文件中;将所述第一临时文件与第二临时文件合并,形成测试结果文件。该装置包括:获取单元、创建单元、第一筛选单元、第二筛选单元及合并单元。本方案能够提高对硬盘测试数据进行处理的效率。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种对硬盘测试数据进行处理的方法及装置。
背景技术
随着计算机技术的不断发展与进步,服务器由于其强大的运算能力以及稳定的工作状态,被广泛应用于各个领域。硬盘作为服务器必不可少的部件,主要用于存储服务器应用程序以及用户数据。硬盘的读写性能直接影响服务器对数据进行处理的速度,为了保证服务器具有较快的数据处理速度,需要对服务器上的硬盘进行I/O测试,以检测硬盘的数据读写速度是否满足使用要求。
目前一般通过测试软件Iometer对硬盘进行测试,Iometer对硬盘测试完成后,形成相应的测试原文件,从该测试源文件中获取硬盘的性能测试值,根据性能测试值判断硬盘的读写性能是否满足使用要求。
通过Iometer对硬盘进行测试时,为了保证测试的全面性,Iometer形成的测试原文件中包括大量的冗余数据,测试原文件中的测试数据量非常大而且数据结构繁杂,用户需要耗费大量的时间,通过人工查找的方式从繁杂的测试原文件中获取所需的性能测试值,因此对硬盘测试数据进行处理的效率较低。
发明内容
本发明实施例提供了一种对硬盘测试数据进行处理的方法及装置,能够提高对硬盘测试数据进行处理的效率。
本发明实施例提供了一种对硬盘测试数据进行处理的方法,获取测试软件Iometer对硬盘测试后形成的测试原文件,还包括:
创建第一临时文件以及第二临时文件;
从所述测试原文件中获取对所述硬盘进行测试的至少一个测试策略,并将所述至少一个测试策略存储到所述第一临时文件中;
从所述测试原文件中获取每一个所述测试策略对应的性能测试值,并将所述性能测试值存储到所述第二临时文件中;
将所述第一临时文件与第二临时文件合并,形成测试结果文件。
优选地,所述测试策略包括:对硬盘进行测试时测试块大小、读写占比以及读写类型中的任意一个或多个,其中所述读写类型为随机读写或顺序读写;
所述性能测试值包括:对硬盘进行检测时硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个。
优选地,所述创建第一临时文件以及第二临时文件包括:
创建一个表格类型的文件作为所述第一临时文件,并以所述测试块大小、读写占比以及读写类型中的任意一个或多个作为所述第一临时文件的表头项目;
创建一个表格类型的文件作为所述第二临时文件,并以所述硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个作为所述第二临时文件的表头项目。
优选地,所述从所述测试原文件中获取对所述硬盘进行测试的至少一种测试策略,并将所述至少一种测试策略存储到所述第一临时文件中包括:
将所述第一临时文件的各个所述表头项目确定为第一关键字,从所述测试原文件中匹配所述第一关键字,将匹配成功的每一组数据确定为一个测试策略,并将所述测试策略包括的数据存储到所述第一临时文件中相应的表头项目下。
优选地,所述从所述测试原文件中获取每一个所述测试策略对应性能测试值,并将所述性能测试值存储到所述第二临时文件中包括:
针对于所述第一临时文件中存储的每一个所述测试策略,将该测试策略确定为第二关键字,从所述源文件中匹配所述第二关键字,将匹配成功的数据确定为一个性能测试值,并将所述性能测试值存储到所述第二临时文件中相应的表头项目下。
优选地,在所述将所述第一临时文件与所述第二临时文件合并,形成测试结果文件后进一步包括:
将所述第一临时文件及所述第二临时文件删除。
本发明实施例还提供了一种对硬盘测试数据进行处理的装置,包括:获取单元、创建单元、第一筛选单元、第二筛选单元及合并单元;
所述获取单元,用于获取测试软件Iometer对硬盘测试后形成的测试原文件;
所述创建单元,用于创建第一临时文件以及第二临时文件;
所述第一筛选单元,用于从所述获取单元获取到的测试原文件中获取对所述硬盘进行测试的至少一个测试策略,并将所述至少一个测试策略存储到所述创建单元创建的第一临时文件中;
所述第二筛选单元,用于从所述获取单元获取到的测试原文件中获取所述第一筛选单元获取到的每一个所述测试策略对应的性能测试值,并将所述性能测试值存储到所述创建单元创建的第二临时文件中;
所述合并单元,用于将所述创建单元创建的第一临时文件及第二临时文件合并,形成测试结果文件。
优选地,
所述创建单元,用于创建一个表格类型的文件作为所述第一临时文件,并以所述测试块大小、读写占比以及读写类型中的任意一个或多个作为所述第一临时文件的表头项目;创建一个表格类型的文件作为所述第二临时文件,并以所述硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个作为所述第二临时文件的表头项目。
优选地,
所述第一筛选单元,用于将所述第一临时文件的各个所述表头项目确定为第一关键字,从所述测试原文件中匹配所述第一关键字,将匹配成功的每一组数据确定为一个测试策略,并将所述测试策略包括的数据存储到所述第一临时文件中相应的表头项目下。
优选地,
所述第二筛选单元,用于针对于所述第一临时文件中存储的每一个所述测试策略,将该测试策略确定为第二关键字,从所述源文件中匹配所述第二关键字,将匹配成功的数据确定为一个性能测试值,并将所述性能测试值存储到所述第二临时文件中相应的表头项目下。
优选地,该装置进一步包括:删除单元:
所述删除单元,用于将所述第一临时文件及所述第二临时文件删除。
本发明实施例提供了一种对硬盘测试数据进行处理的方法及装置,在测试软件Iometer形成测试原文件后,从测试原文件中获取对硬盘测试时采用的至少一个测试策略,将获取到的测试策略存储到创建的第一临时文件中,从测试原文件中获取硬盘在各个测试策略下对应的性能测试值,将获取到的性能测试值存储到创建的第二临时文件中,将第一临时文件与第二临时文件合并后形成测试结果文件。这样,在测试结果文件中仅包括有对硬盘进行测试的测试策略以及对应的性能测试值,没有繁杂的冗余数据,通过测试结果文件可以直接获取硬盘的性能测试值,无需通过手动的方式逐行从测试原文件中查找性能测试值,缩短了对硬盘测试数据进行处理的时间,从而提高了对硬盘数据进行处理的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种对硬盘测试数据进行处理的方法流程图;
图2是本发明另一个实施例提供的一种对硬盘测试数据进行处理的方法流程图;
图3是本发明一个实施例提供的一种对硬盘测试数据进行处理的装置所在设备的示意图;
图4是本发明一个实施例提供的一种对硬盘测试数据进行处理的装置示意图;
图5是本发明另一个实施例提供的一种对硬盘测试数据进行处理的装置示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种对硬盘测试数据进行处理的方法,该方法可以包括以下步骤:
步骤101:获取测试软件Iometer对硬盘测试后形成的测试原文件;
步骤102:创建第一临时文件以及第二临时文件;
步骤103:从所述测试原文件中获取对所述硬盘进行测试的至少一个测试策略,并将所述至少一个测试策略存储到所述第一临时文件中;
步骤104:从所述测试原文件中获取每一个所述测试策略对应的性能测试值,并将所述性能测试值存储到所述第二临时文件中;
步骤105:将所述第一临时文件与第二临时文件合并,形成测试结果文件。
本发明实施例提供了一种对硬盘测试数据进行处理的方法,在测试软件Iometer形成测试原文件后,从测试原文件中获取对硬盘测试时采用的至少一个测试策略,将获取到的测试策略存储到创建的第一临时文件中,从测试原文件中获取硬盘在各个测试策略下对应的性能测试值,将获取到的性能测试值存储到创建的第二临时文件中,将第一临时文件与第二临时文件合并后形成测试结果文件。这样,在测试结果文件中仅包括有对硬盘进行测试的测试策略以及对应的性能测试值,没有繁杂的冗余数据,通过测试结果文件可以直接获取硬盘的性能测试值,无需通过手动的方式逐行从测试原文件中查找性能测试值,缩短了对硬盘测试数据进行处理的时间,从而提高了对硬盘数据进行处理的效率。
在本发明一个实施例中,测试策略中包括有对硬盘进行测试时采用的测试块大小、读写占比以及读写类型中的任意一个或多个,其中读写类型为随机读写或顺序读写;性能测试值包括有对应硬盘进行测试时硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个。这样,通过该方法可以对不同测试策略下形成的硬盘测试数据进行处理,同时可以从测试原文件中获取包括不同内容的性能测试值,提高了该对硬盘测试数据进行处理的方法的适用性。
在本发明一个实施例中,创建两个表格类型的文件分别作为第一临时文件和第二临时文件,第一临时文件的表头项目包括测试块大小、读写占比以及读写类型中的任意一个或多个,第二临时文件的表头项目包括硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个。第一临时文件和第二临时文件作为存储测试策略和性能测试值的容器,通过设定表头项目规定存储测试策略和性能测试值的格式,保证获取到的测试策略及性能测试值能够完整、准确的存储。
在本发明一个实施例中,以第一临时文件的表头项目作为第一关键字,从测试原始文件中匹配第一关键字,匹配成功的每一组数据对应一个测试策略,根据第一临时文件中由各个表头项目确定的格式,将匹配出的各个测试策略包括的数据存储到对应的表头项目下。将第一临时文件的表头作为关键字从测试原文件中匹配测试策略,一方面可以获取到对硬盘进行测试时采用的各个测试策略,保证对硬盘测试数据进行处理的完整性;另一方面可以保证获取到的测试策略的格式满足第一临时文件的存储要求。
在本发明一个实施例中,以第一临时文件中的各个测试策略作为第二关键字,从测试原文件中匹配第二关键字,针对任意一个第二关键字,与该第二关键字匹配成功的一组数据即为通过与该第二关键字相对应的测试策略对硬盘进行测试时硬盘的性能测试值,将与各个第二关键字匹配成功的性能测试值存储到第二临时文件中对应的表头项目下。以第一临时文件中的每一个测试策略作为第二关键字,能够获取到在各种测试策略下硬盘对应的性能测试值,从而保证最终获取的测试结果文件中性能测试值的全面性,提高该对硬盘测试数据进行处理的方法的准确性。
在本发明一个实施例中,在将第一临时文件与第二临时文件合并形成测试结果文件后,可以将第一临时文件和第二临时文件删除。由于在形成测试结果文件后第一临时文件和第二临时文件已经没有利用价值,将第一临时文件及第二临时文件删除可以减少***内存及存储空间的占用。
下面以通过多种测试策略对硬盘进行测试为例,对本发明实施例提供的对硬盘测试数据进行处理的方法进行说明,如图2所示,该方法包括:
步骤201:获取测试软件Iometer对硬盘测试后形成的测试原文件。
在本发明一个实施例中,通过设置测试软件Iometer的测试参数,使测试软件Iometer通过多种不同的测试策略对硬盘进行测试,测试完成后形成包括整个测试过程中记录数据的测试原文件。对硬盘的测试结果进行分析时,需要从测试原文件中获取在各个测试策略下硬盘对应的性能测试值,导出测试软件Iometer形成的测试原文件备用。
例如,通过测试软件Iometer对硬盘A进行测试结束后,形成包括8000行数据的测试原文件,从测试软件Iometer将该测试原文件输出备用。
步骤202:判断是否接收到测试软件Iometer输出的测试原文件,如果是,执行步骤204,否则执行步骤203;
在本发明一个实施例中,测试软件Iometer输出的测试原文件作为数据处理的对象,实时判断是否接收到测试软件Iometer输出的测试原文件,当接收到测试原文件后,可以开始对硬盘测试数据进行处理,相应地执行步骤204;如果没有接收到测试原文件,需要对测试人员做出提示,相应地执行步骤203。
例如,检测是否接收到测试软件Iometer输出的对于硬盘A的测试原文件,如果是,开始对硬盘A的测试数据进行处理,相应地执行步骤204,否则通过显示器向检测人员发出提示信息,相应地执行步骤203。
步骤203:向测试人员发出提示信息,并结束当前流程。
在本发明一个实施例中,如果没有接收到测试软件Iometer输出测试原文件,则没有数据处理的对象,向测试人员发出无输入数据的提示信息,然后结束当前流程。
例如,通过脚本程序判断是否接收到测试软件Iometer输出的对硬盘A进行测试后形成的测试原文件,如果没有接收到,通过显示器向检测人员发出相应的提示信息,具体的脚本程序如下:
if[$#-ne 1];then{
echo"Usage:(./filter_iometer.sh name_windows_iometer_result)"
sleep 1
exit
}
fi
步骤204:创建用于存储测试策略的第一临时文件。
在本发明一个实施例中,创建一个表格类型的文件作为第一临时文件,并根据对硬盘进行测试时设定的测试策略,将测试策略包括的各个项目作为第一临时文件的表头项目,其中测试策略的项目包括测试块大小、读写占比以及读写类型中的任意一个或多个,读写类型为随机读写或顺序读写。
例如,通过脚本程序创建一个表格类型的文件1.csv作为第一临时文件,以测试块大小(size)、读写占比(read_percentage)以及随机占比(random_percentage)作为文件1.csv的表头,具体的脚本程序如下:
echo"size(KB)read_percentage random_percentage">1.csv
通过上述脚本程序,形成表1所示的第一临时文件,其中表1如下所示:
表1
size | read_percentage | random_percentage |
步骤205:从测试原文件中获取测试策略,并将获取到的各个测试策略存储到第一临时文件中。
在本发明一个实施例中,将步骤204中确定的第一临时文件中的各个表头项目确定为第一关键字,从测试原文件中匹配第一关键字,将每一组匹配成功的数据作为一个测试策略,将匹配出的各个测试策略存储到步骤204中创建的第一临时文件中,其中每一个测试策略包括的各个项目存储在第一临时文件中对应表头项目下,获取到对硬盘进行测试时采用的各个测试策略。
例如,通过脚本程序以文件1.csv的表头size、read_percentage以及random_percentage作为关键字,中硬盘A对应的测试原文件中进行匹配,共匹配成功6组不同的数据,将每一组数据作为一个测试策略存储到文件1.csv中,其中每一组数据中数据块大小对应的值存储在表头size下,每一组数据中读写占比对应的值存储在表头read_percentage下,每一组数据中的随机占比对应的数据存储在表头random_percentage下,而且同一组数据对应的三个数值位于同一行。具体的获取并存储测试策略的脚本程序如下:
cat$1|sed-n"/^'size,/{n;p}"|awk-F","'{print$1"\t"$3"\t"$4"\t"}'>>1.csv
通过上述脚本程序,将获取到的6个测试策略存储到文件1.csv中后,形成如下表2所示的第一临时文件,其中表2如下所示:
表2
size | read_percentage | random_percentage |
4KB | 20% | 0 |
16KB | 30% | 0 |
64KB | 20% | 1 |
128KB | 10% | 1 |
512KB | 10% | 0 |
1024KB | 10% | 1 |
步骤206:创建用于存储性能测试值的第二临时文件。
在本发明一个实施例中,创建一个表格类型的文件作为第二临时文件,通过测试软件Iometer对硬盘的多个性能项目进行测试,以获取包括多个性能项目的性能测试值,将性能测试值包括的各个性能项目作为第二临时文件的表头项目,其中第二临时文件的表头项目包括硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个。
例如,通过第二临时文件创建脚本程序创建一个表格类型的文件2.csv作为第二临时文件,以每秒进行读的次数(read_iops)、读带宽(read_MBps)、每秒进行写的次数(write_iops)及写带宽(write_MBps)作为文件2.csv的表头,具体的第二临时文件创建脚本程序如下:
echo"write_iops write_MBps read_iops read_MBps">2.csv
通过上述第二临时文件创建脚本程序,形成如下表3所示的第二临时文件,其中表3如下所示:
表3
read_iops | read_MBps | write_iops | write_MBps |
步骤207:从测试原文件中获取性能测试值,并将获取到的各个性能测试值存储到第二临时文件中。
在本发明一个实施例中,以步骤206中存储到第一临时文件中的每一个测试策略作为一个第二关键字,从测试原文件中匹配各个第二关键字。每一个第二关键字匹配成功一组数据,该组数据即为通过该第二关键字对应的测试策略对硬盘进行测试时硬盘的性能测试值,将匹配出的各个性能测试值存储到步骤206中创建的第二临时文件中,其中每一个性能测试值包括的各个性能项目的值存储在第二临时文件中对应的表头项目下,获取到每一种测试策略下硬盘对应的性能测试值。
例如,通过性能测试值获取及存储脚本程序,以表2中每一行的3个数值作为第二关键字在硬盘A的测试原文件中进行匹配,表2中每一行数据匹配出一组数据作为该行测试策略对应的性能测试值,将匹配出的6组数据存储到表3所示的文件2.csv中,其中每一组数据中每秒进行读的次数对应的值存储在表头read_iops下,每一组数据中读带宽对应的值存储在表头read_MBps下,每一组数据中每秒进行写的次数对应的值存储在表头write_iops下,每一组数据中写带宽对应的值存储在表头write_MBps下,而且同一组数据对应的四个位于同一行。具体的性能测试值获取及存储脚本程序如下:
cat$1|sed-n"/^'Target Type,/{n;p}"|awk-F","'{print$9"\t"$12"\t"$8"\t"$11"\t"}'>>2.csv
通过上述性能测试值获取及存储脚本程序,将匹配出的6个性能测试值存储到文件2.csv中后,形成如下表4所示的第二临时文件,表4如下所示:
表4
read_iops | read_MBps | write_iops | write_MBps |
300 | 1.2 | 350 | 1.0 |
400 | 11 | 420 | 15 |
500 | 80 | 530 | 75 |
600 | 150 | 600 | 145 |
800 | 200 | 780 | 180 |
900 | 350 | 980 | 400 |
步骤208:将第一临时文件与第二临时文件合并,形成测试结果文件。
在本发明一个实施例中,在将测试策略存储到第一临时文件中,且将性能测试值存储到第二临时文件中之后,将第一临时文件与第二临时文件合并,将测试策略与性能测试值存储到一个文件中,形成最终的测试结果文件,其中测试策略与对应的性能测试值相对应。
例如,通过合并脚本程序将表2所示的第一临时文件与表4所示的第二临时文件合并,将6个测试策略及各个测试策略对应的性能测试值存储到一个文件中,形成最终的测试结果文件result-iometer-filter.csv,具体的合并脚本程序如下:
paste 1.csv 2.csv>result-iometer-filter.csv
通过上述合并脚本程序将表2所示的第一临时文件与表4所示的第二临时文件合并,形成如下表5所示的测试结果文件result-iometer-filter.csv,random_percentage为0时对应顺序读写,random_percentage为1时对应随机读写,其中表5如下所示:
表5
步骤209:将第一临时文件与第二临时文件删除。
在本发明一个实施例中,将第一临时文件与第二临时文件合并形成测试结果文件后,第一临时文件与第二临时文件已经失去利用价值,为节省内存占用及存储空间,将第一临时文件及第二临时文件删除。
例如,通过删除脚本程序将第一临时文件及第二临时文件删除,具体删除脚本程序如下所示:
rm-rf 1.csv 2.csv
通过上述删除脚本程序,将第一临时文件1.csv及第二临时文件2.csv删除。
在本发明一个实施例中,对应测试数据进行处理的方法可以通过脚本程序实现,下面给出一种可以实现的脚本程序:
if[$#-ne 1];then{
echo"Usage:(./filter_iometer.sh name_windows_iometer_result)"
sleep 1
exit
}
fi
echo"size(KB)read_percentage random_percentage">1.csv
cat$1|sed-n"/^'size,/{n;p}"|awk-F","'{print$1"\t"$3"\t"$4"\t"}'>>1.csv
echo"write_iops write_MBps read_iops read_MBps">2.csv
cat$1|sed-n"/^'Target Type,/{n;p}"|awk-F","'{print$9"\t"$12"\t"$8"\t"$11"\t"}'>>2.csv
paste 1.csv 2.csv>result-iometer-filter.csv
rm-rf 1.csv 2.csv
如图3、图4所示,本发明实施例提供了一种对硬盘测试数据进行处理的装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的对硬盘测试数据进行处理的装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的对硬盘测试数据进行处理的装置,包括:获取单元401、创建单元402、第一筛选单元403、第二筛选单元404及合并单元405;
获取单元401,用于获取测试软件Iometer对硬盘测试后形成的测试原文件;
创建单元402,用于创建第一临时文件以及第二临时文件;
第一筛选单元403,用于从获取单元401获取到的测试原文件中获取对硬盘进行测试的至少一个测试策略,并将至少一个测试策略存储到创建单元402创建的第一临时文件中;
第二筛选单元404,用于从获取单元401获取到的测试原文件中获取第一筛选单元403获取到的每一个测试策略对应的性能测试值,并将性能测试值存储到创建单元402创建的第二临时文件中;
合并单元405,用于将创建单元402创建的第一临时文件及第二临时文件合并,形成测试结果文件。
在本发明一个实施例中,创建单元402,用于创建一个表格类型的文件作为第一临时文件,并以测试块大小、读写占比以及读写类型中的任意一个或多个作为第一临时文件的表头项目;创建一个表格类型的文件作为第二临时文件,并以硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个作为第二临时文件的表头项目。
在本发明一个实施例中,第一筛选单元403,用于将第一临时文件的各个表头项目确定为第一关键字,从测试原文件中匹配第一关键字,将匹配成功的每一组数据确定为一个测试策略,并将测试策略包括的数据存储到第一临时文件中相应的表头项目下。
在本发明一个实施例中,第二筛选单元404,用于针对于第一临时文件中存储的每一个测试策略,将该测试策略确定为第二关键字,从源文件中匹配第二关键字,将匹配成功的数据确定为一个性能测试值,并将性能测试值存储到第二临时文件中相应的表头项目下。
在本发明一个实施例中,如图5所示,该装置进一步包括:删除单元406;
删除单元406,用于将第一临时文件及第二临时文件删除。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明提供的各个实施例,至少具有如下有益效果:
1、本发明实施例中,在测试软件Iometer形成测试原文件后,从测试原文件中获取对硬盘测试时采用的至少一个测试策略,将获取到的测试策略存储到创建的第一临时文件中,从测试原文件中获取硬盘在各个测试策略下对应的性能测试值,将获取到的性能测试值存储到创建的第二临时文件中,将第一临时文件与第二临时文件合并后形成测试结果文件。这样,在测试结果文件中仅包括有对硬盘进行测试的测试策略以及对应的性能测试值,没有繁杂的冗余数据,通过测试结果文件可以直接获取硬盘的性能测试值,无需通过手动的方式逐行从测试原文件中查找性能测试值,缩短了对硬盘测试数据进行处理的时间,从而提高了对硬盘数据进行处理的效率。
2、本发明实施例中,创建的第一临时文件的表头可以包括测试块大小、读写占比以及读写类型中的任意一个或多个,这样,通过各种测试策略对硬盘进行测试形成的测试原文件,都可以通过本发明实施例提供的对硬盘测试数据进行处理的方法进行处理,提高了该对硬盘测试数据进行处理的方法的适用性。
3、本发明实施例中,创建的第二临时文件的表头可以包括硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个,这样,通过定义不同的第二临时文件的表头,可以从测试原文件中获取包括不同内容的性能测试值,从而能够根据需求灵活的确定所需要的性能测试值,提高了该对硬盘测试数据进行处理的易用性。
4、本发明实施例中,将测试策略及性能测试值分别存储到不同的临时文件中,然后将两个临时文件合并形成测试结果文件,这样可以提高从测试原文件中获取测试策略及性能测试值的速度,缩短获取测试策略及性能测试值所需的时间,从而进一步提高了读硬盘测试数据进行处理的效率。
5、本发明实施例中,在将第一临时文件与第二临时文件合并形成测试结果文件后,第一临时文件与第二临时文件已经失去利用价值,将第一临时文件与第二临时文件删除,可以减小***内存及存储空间的占用,对硬盘测试数据进行处理的装置的性能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种对硬盘测试数据进行处理的方法,其特征在于,获取测试软件Iometer对硬盘测试后形成的测试原文件,还包括:
创建第一临时文件以及第二临时文件;
从所述测试原文件中获取对所述硬盘进行测试的至少一个测试策略,并将所述至少一个测试策略存储到所述第一临时文件中;
从所述测试原文件中获取每一个所述测试策略对应的性能测试值,并将所述性能测试值存储到所述第二临时文件中;
将所述第一临时文件与第二临时文件合并,形成测试结果文件。
2.根据权利要求1所述的方法,其特征在于,
所述测试策略包括:对硬盘进行测试时测试块大小、读写占比以及读写类型中的任意一个或多个,其中所述读写类型为随机读写或顺序读写;
所述性能测试值包括:对硬盘进行检测时硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个。
3.根据权利要求2所述的方法,其特征在于,
所述创建第一临时文件以及第二临时文件包括:
创建一个表格类型的文件作为所述第一临时文件,并以所述测试块大小、读写占比以及读写类型中的任意一个或多个作为所述第一临时文件的表头项目;
创建一个表格类型的文件作为所述第二临时文件,并以所述硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个作为所述第二临时文件的表头项目。
4.根据权利要求3所述的方法,其特征在于,
所述从所述测试原文件中获取对所述硬盘进行测试的至少一种测试策略,并将所述至少一种测试策略存储到所述第一临时文件中包括:
将所述第一临时文件的各个所述表头项目确定为第一关键字,从所述测试原文件中匹配所述第一关键字,将匹配成功的每一组数据确定为一个测试策略,并将所述测试策略包括的数据存储到所述第一临时文件中相应的表头项目下。
5.根据权利要求3所述的方法,其特征在于,
所述从所述测试原文件中获取每一个所述测试策略对应性能测试值,并将所述性能测试值存储到所述第二临时文件中包括:
针对于所述第一临时文件中存储的每一个所述测试策略,将该测试策略确定为第二关键字,从所述源文件中匹配所述第二关键字,将匹配成功的数据确定为一个性能测试值,并将所述性能测试值存储到所述第二临时文件中相应的表头项目下。
6.根据权利要求1至5中任意所述的方法,其特征在于,
在所述将所述第一临时文件与所述第二临时文件合并,形成测试结果文件后进一步包括:
将所述第一临时文件及所述第二临时文件删除。
7.一种对硬盘测试数据进行处理的装置,其特征在于,包括:获取单元、创建单元、第一筛选单元、第二筛选单元及合并单元;
所述获取单元,用于获取测试软件Iometer对硬盘测试后形成的测试原文件;
所述创建单元,用于创建第一临时文件以及第二临时文件;
所述第一筛选单元,用于从所述获取单元获取到的测试原文件中获取对所述硬盘进行测试的至少一个测试策略,并将所述至少一个测试策略存储到所述创建单元创建的第一临时文件中;
所述第二筛选单元,用于从所述获取单元获取到的测试原文件中获取所述第一筛选单元获取到的每一个所述测试策略对应的性能测试值,并将所述性能测试值存储到所述创建单元创建的第二临时文件中;
所述合并单元,用于将所述创建单元创建的第一临时文件及第二临时文件合并,形成测试结果文件。
8.根据权利要求7所述的装置,其特征在于,
所述创建单元,用于创建一个表格类型的文件作为所述第一临时文件,并以所述测试块大小、读写占比以及读写类型中的任意一个或多个作为所述第一临时文件的表头项目;创建一个表格类型的文件作为所述第二临时文件,并以所述硬盘每秒进行读的次数、读带宽、每秒进行写的次数以及写带宽中的任意一个或多个作为所述第二临时文件的表头项目。
9.根据权利要求8所述的装置,其特征在于,
所述第一筛选单元,用于将所述第一临时文件的各个所述表头项目确定为第一关键字,从所述测试原文件中匹配所述第一关键字,将匹配成功的每一组数据确定为一个测试策略,并将所述测试策略包括的数据存储到所述第一临时文件中相应的表头项目下;
和/或,
所述第二筛选单元,用于针对于所述第一临时文件中存储的每一个所述测试策略,将该测试策略确定为第二关键字,从所述源文件中匹配所述第二关键字,将匹配成功的数据确定为一个性能测试值,并将所述性能测试值存储到所述第二临时文件中相应的表头项目下。
10.根据权利要求9所述的装置,其特征在于,进一步包括:删除单元:
所述删除单元,用于将所述第一临时文件及所述第二临时文件删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610321909.6A CN106021047A (zh) | 2016-05-13 | 2016-05-13 | 一种对硬盘测试数据进行处理的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610321909.6A CN106021047A (zh) | 2016-05-13 | 2016-05-13 | 一种对硬盘测试数据进行处理的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106021047A true CN106021047A (zh) | 2016-10-12 |
Family
ID=57098215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610321909.6A Pending CN106021047A (zh) | 2016-05-13 | 2016-05-13 | 一种对硬盘测试数据进行处理的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106021047A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106998468A (zh) * | 2017-04-25 | 2017-08-01 | 郑州云海信息技术有限公司 | 一种视频服务器性能测试的方法及*** |
CN108920319A (zh) * | 2018-07-26 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种可实时显示性能数据的硬盘压力测试方法 |
CN109933474A (zh) * | 2019-03-15 | 2019-06-25 | 湖南国科微电子股份有限公司 | 一种硬盘测试方法、***及其开发方法 |
CN117130844A (zh) * | 2023-10-27 | 2023-11-28 | 四川华鲲振宇智能科技有限责任公司 | 一种硬盘测试方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101742531A (zh) * | 2008-11-13 | 2010-06-16 | ***通信集团设计院有限公司 | 一种测试数据存储方法及装置 |
CN101872320A (zh) * | 2010-04-16 | 2010-10-27 | 浪潮电子信息产业股份有限公司 | 一种关于ssd硬盘可靠性及性能的测试及统计方法 |
CN102999504A (zh) * | 2011-09-13 | 2013-03-27 | 鸿富锦精密工业(深圳)有限公司 | 硬盘测试数据分析方法 |
CN103578568A (zh) * | 2012-07-24 | 2014-02-12 | 苏州捷泰科信息技术有限公司 | 固态硬盘的性能测试方法及装置 |
CN104765665A (zh) * | 2015-04-14 | 2015-07-08 | 浪潮电子信息产业股份有限公司 | 一种测试硬盘的方法及装置 |
CN105260392A (zh) * | 2015-09-15 | 2016-01-20 | 歌尔声学股份有限公司 | 测试数据的存储方法及*** |
-
2016
- 2016-05-13 CN CN201610321909.6A patent/CN106021047A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101742531A (zh) * | 2008-11-13 | 2010-06-16 | ***通信集团设计院有限公司 | 一种测试数据存储方法及装置 |
CN101872320A (zh) * | 2010-04-16 | 2010-10-27 | 浪潮电子信息产业股份有限公司 | 一种关于ssd硬盘可靠性及性能的测试及统计方法 |
CN102999504A (zh) * | 2011-09-13 | 2013-03-27 | 鸿富锦精密工业(深圳)有限公司 | 硬盘测试数据分析方法 |
CN103578568A (zh) * | 2012-07-24 | 2014-02-12 | 苏州捷泰科信息技术有限公司 | 固态硬盘的性能测试方法及装置 |
CN104765665A (zh) * | 2015-04-14 | 2015-07-08 | 浪潮电子信息产业股份有限公司 | 一种测试硬盘的方法及装置 |
CN105260392A (zh) * | 2015-09-15 | 2016-01-20 | 歌尔声学股份有限公司 | 测试数据的存储方法及*** |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106998468A (zh) * | 2017-04-25 | 2017-08-01 | 郑州云海信息技术有限公司 | 一种视频服务器性能测试的方法及*** |
CN106998468B (zh) * | 2017-04-25 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种视频服务器性能测试的方法及*** |
CN108920319A (zh) * | 2018-07-26 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种可实时显示性能数据的硬盘压力测试方法 |
CN109933474A (zh) * | 2019-03-15 | 2019-06-25 | 湖南国科微电子股份有限公司 | 一种硬盘测试方法、***及其开发方法 |
CN117130844A (zh) * | 2023-10-27 | 2023-11-28 | 四川华鲲振宇智能科技有限责任公司 | 一种硬盘测试方法 |
CN117130844B (zh) * | 2023-10-27 | 2024-03-12 | 四川华鲲振宇智能科技有限责任公司 | 一种硬盘测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107688618B (zh) | 数据对比方法、装置、计算机设备和存储介质 | |
CN106021047A (zh) | 一种对硬盘测试数据进行处理的方法及装置 | |
CN108108297A (zh) | 自动化测试的方法和装置 | |
CN111290956B (zh) | 基于脑图的测试方法、装置、电子设备及存储介质 | |
CN109614324A (zh) | 一种测试用例生成方法和装置 | |
CN107741903A (zh) | 应用程序兼容性测试方法、装置、计算机设备和存储介质 | |
CN106445815A (zh) | 一种自动化测试方法及装置 | |
CN108984393A (zh) | 一种单元测试代码自动生成方法及装置 | |
CN106897342A (zh) | 一种数据校验方法和设备 | |
CN108460068A (zh) | 报表导入导出的方法、装置、存储介质及终端 | |
CN103810094B (zh) | 一种测试案例的执行方法、装置和测试工具 | |
WO2020233347A1 (zh) | 工作流管理***的测试方法、装置、存储介质及终端设备 | |
CN107480056A (zh) | 一种软件测试方法和装置 | |
CN105138656A (zh) | 一种处理数据的方法及装置 | |
CN106407123A (zh) | 一种服务器接口的自动化测试方法及装置 | |
CN109684517A (zh) | 一种历史数据存储方法、读写方法、存储装置和设备 | |
CN107368500A (zh) | 数据抽取方法及*** | |
CN110188033B (zh) | 数据检测装置、方法、计算机设备及计算机可读存储介质 | |
CN115617819B (zh) | 数据存储方法、***、计算机设备及存储介质 | |
CN107133163A (zh) | 一种验证描述类api的方法与设备 | |
CN106155866A (zh) | 一种监控cpu核心频率的方法及装置 | |
US10509659B1 (en) | Input processing logic to produce outputs for downstream systems using configurations | |
CN106155878B (zh) | 用于在数据库中创建供软件测试用的测试环境的方法和装置 | |
CN107533562A (zh) | 在具有只追加磁道带的设备上存储数据和轻量级索引的序列化方案 | |
CN116795723B (zh) | 链式单元测试处理方法、装置及计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161012 |
|
RJ01 | Rejection of invention patent application after publication |