CN107562554A - 一种存储可靠性测试方法及服务器 - Google Patents
一种存储可靠性测试方法及服务器 Download PDFInfo
- Publication number
- CN107562554A CN107562554A CN201710742159.4A CN201710742159A CN107562554A CN 107562554 A CN107562554 A CN 107562554A CN 201710742159 A CN201710742159 A CN 201710742159A CN 107562554 A CN107562554 A CN 107562554A
- Authority
- CN
- China
- Prior art keywords
- small documents
- random number
- random
- catalogue
- generation
- 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
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明实施例提供一种存储可靠性测试方法及服务器,该方法包括:重复执行目标步骤直至生成预定数量的小文件;所述目标步骤包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。本发明实施例提供的存储可靠性测试方法,可提升存储可靠性测试结论的可靠性,并可适应不同规格存储设备的测试需求。
Description
技术领域
本发明涉及测试技术领域,具体涉及一种存储可靠性测试方法及服务器。
背景技术
当前存储设备(尤其是企业级存储设备)已被大规模应用,这些存储设备在金融、互联网、云计算等各个不同的领域发挥了重要的作用,接受着不同的应用场景的考验,其中以SAN(Storage Area Network,存储区域网络)存储和NAS(Network Attached Storage,网络附属存储)存储这两种存储设备的应用最为广泛。存储设备的存储可靠性是存储设备是否合格一个基本因素,因此对存储设备的存储可靠性进行测试尤为必要。
存储设备的存储可靠性是指,存储设备在面对多种复杂应用场景下能否正常发挥其功能的一种特性;基于小文件(小文件的大小通常在2KB-1MB之间)进行存储设备的存储可靠性测试,是存储可靠性测试的一种常用方式。然而目前遇到的问题是,在基于小文件进行存储设备的存储可靠性测试时,一般是使用已有的小文件实现,这使得存储可靠性测试结论的可靠性无法得到保障。
发明内容
有鉴于此,本发明实施例提供一种存储可靠性测试方法及服务器,以提升存储可靠性测试结论的可靠性。
为实现上述目的,本发明实施例提供如下技术方案:
一种存储可靠性测试方法,包括:
重复执行目标步骤直至生成预定数量的小文件;所述目标步骤包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;
根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
可选的,所述生成随机数包括:
利用$RANDOM变量产生随机数;$RANDOM是Linux***的shell中的环境变量,且$RANDOM变量生成数的范围被设置为,小文件设定的千字节KB大小范围。
可选的,所述获取可靠随机数序列包括:
获取/dev/urandom设备输出的可靠随机数序列;/dev/urandom是Linux***提供的产生随机数的设备;
所述以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件包括:
以所述可靠随机数序列为基础,使用dd工具得到内容随机且文件大小为所述大小变量所指示的小文件;其中,dd工具是Linux***中的文件备份工具。
可选的,所述重复执行目标步骤直至生成预定数量的小文件包括:
利用shell脚本,重复执行目标步骤直至生成预定数量的小文;所述shell脚本封装有所述目标步骤的操作。
可选的,所述根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论包括:
创建目录一和目录二,并控制待测存储设备的lun1挂载在目录一,待测存储设备的lun2挂载在目录二;
将所述预定数量的小文件分别拷贝到目录一和目录二;
控制所述预定数量的小文件在目录一和目录二之间移动,根据移动情况确定存储可靠性测试结论。
本发明实施例还提供一种服务器,包括:
海量小文件生成模块,用于重复执行目标步骤直至生成预定数量的小文件;所述目标步骤包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;
测试执行模块,用于根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
可选的,所述海量小文件生成模块,用于生成随机数,具体包括:
利用$RANDOM变量产生随机数;$RANDOM是Linux***的壳shell中的环境变量,且$RANDOM变量生成数的范围被设置为,小文件设定的千字节KB大小范围。
可选的,所述海量小文件生成模块,用于获取可靠随机数序列,具体包括:
获取/dev/urandom设备输出的可靠随机数序列;/dev/urandom是Linux***提供的产生随机数的设备;
所述海量小文件生成模块,用于以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件,具体包括:
以所述可靠随机数序列为基础,使用dd工具得到内容随机且文件大小为所述大小变量所指示的小文件;其中,dd工具是Linux***中的文件备份工具。
可选的,所述海量小文件生成模块,用于重复执行目标步骤直至生成预定数量的小文件,具体包括:
利用shell脚本,重复执行目标步骤直至生成预定数量的小文;所述shell脚本封装有所述目标步骤的操作。
可选的,所述测试执行模块,用于根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论,具体包括:
创建目录一和目录二,并控制待测存储设备的lun1挂载在目录一,待测存储设备的lun2挂载在目录二;
将所述预定数量的小文件分别拷贝到目录一和目录二;
控制所述预定数量的小文件在目录一和目录二之间移动,根据移动情况确定存储可靠性测试结论。
基于上述技术方案,本发明实施例提供的存储可靠性测试方法包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;重复上述步骤直至生成预定数量的小文件;根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
由于本发明实施例对待测存储设备进行存储可靠性测试所用测试数据是,文件大小和内容均为随机生成的小文件,这充分模拟了存储设备现实应用场景中小文件的特性,降低了主观因素对于测试结论的影响,提升了存储可靠性测试结论的可靠性;同时小文件数量可控,可以适应不同规格存储设备的测试需求。因此,本发明实施例提供的存储可靠性测试方法,可提升存储可靠性测试结论的可靠性,并可适应不同规格存储设备的测试需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的存储可靠性测试***的结构框图;
图2为本发明实施例提供的存储可靠性测试方法的流程图;
图3为本发明实施例提供的存储可靠性测试方法的另一流程图;
图4为基于小文件,对待测存储设备进行存储可靠性测试的流程图;
图5为本发明实施例提供的服务器的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的存储可靠性测试***的结构框图,基于图1所示存储可靠性测试***,可实现本发明实施例提供的存储可靠性测试方法;参照图1,该存储可靠性测试***可以包括:服务器10和至少一个待测存储设备20;
现有的存储可靠性测试使用已有的小文件实现,由于小文件的内容缺少随机性,文件大小也缺少随机性,且小文件的数量也不可控,导致无法有效的得出存储设备在海量小文件的应用场景下是否可靠的结论的问题;
鉴于此,在本发明实施例中,服务器10可随机生成一定数量的小文件(所生成的小文件的文件大小随机、内容随机),服务器所随机生成的一定数量的小文件可作为待测存储设备进行存储可靠性测试的测试数据,通过对待测存储设备进行包括写入、删除、读取、复制在内的一系列测试操作,得到待测存储设备的可靠性测试结论,可提升存储可靠性测试结论的可靠性。
基于图1所示存储可靠性测试***,下面站在服务器的角度对本发明实施例提供的存储可靠性测试方法进行介绍;图2为本发明实施例提供的存储可靠性测试方法的流程图,该方法可应用于服务器,可选的,该服务器可选用Linux服务器;
参照图2,该存储可靠性测试方法可以包括:
步骤S100、生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中。
可选的,本发明实施例可利用Linux***中的$RANDOM变量产生随机数,以随机数来控制小文件的文件大小,所确定的文件大小可保存在大小变量(size变量)中;
可选的,本发明实施例可将随机数加上KB(千字节)单位,作为小文件的文件大小;可选的,随机数的数值范围为小文件设定的KB大小范围,如随机数的数值范围在2至1021之间;
$RANDOM是Linux***的shell(壳)中的一个环境变量,通常情况下,$RANDOM变量可生成0至32767范围的数,本发明实施例设置$RANDOM变量生成数的范围为小文件设定的KB大小范围,以使得随机数的数值范围为小文件设定的KB大小范围。
例如,可在Linux服务器上执行命令“size=$(($RANDOM%1023+2))”,生成2至1021之间的随机数,将生成的随机数保存在size变量中。
步骤S110、获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件。
在通过步骤S100确定需随机生成的小文件的文件大小,并记录在大小变量中后,需随机生成的小文件的文件内容可以可靠随机数序列为基础确定,该可靠随机数序列可通过/dev/urandom设备输出,/dev/urandom是Linux***提供的产生随机数的设备;
可选的,本发明实施例可获取/dev/urandom设备输出的可靠随机数序列,以该可靠随机数序列为基础,使用dd工具(dd工具是Linux***中的一个文件备份工具)得到内容随机且文件大小为所述大小变量所指示的小文件;即所生成的小文件的文件大小是以随机生成的随机数确定,小文件的文件内容是以/dev/urandom设备输出的可靠随机数序列为基础确定;
例如,本发明实施例可在Linux服务器上执行命令“dd if=/dev/urandom of=/tmp/testfile/file1.img bs=1K count=$size”,从而生成size变量指示的文件大小,内容随机的小文件。
可选的,所生成的小文件可保存在预定路径;例如,所生成的小文件可保存在“/tmp/testfile/file1.img”路径中。
步骤S120、重复上述步骤S100至步骤S110,直至生成预定数量的小文件。
上述步骤S100至步骤S110说明了一个文件大小随机、内容随机的小文件的生成过程,上述步骤S100至步骤S110可称为目标步骤;本发明实施例可重复执行目标步骤(上述步骤S100至步骤S110),直至所生成的小文件的数量达到预定数量;预定数量可以是事先设定的测试所使用的小文件的数量,可根据实际情况定义调整。
可选的,本发明实施例可利用shell脚本,控制上述步骤S100至步骤S110的重复执行,同时控制所生成的小文件的数量;例如,可通过shell脚本封装上述步骤S100至步骤S110的操作,循环创建随机的小文件,并通过控制循环次数,获得指定数量的文件大小随机、内容随机的小文件;
可选的,作为一种示例,shell脚本的内容可以如下,其中num变量可以控制生成的小文件的数量:
!#/bin/bash
num=100000
for iin$(seq 1$num)
do
size=$(($RANDOM%1023+2))
dd if=/dev/urandom of=/tmp/testfile/file$i.img bs=1K count=$sizedone。
步骤S130、根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
可选的,可将所述预定数量的小文件作为测试数据,对待测存储设备进行包括写入、删除、读取、复制在内的一系列测试操作,得到存储设备在进行海量小文件数据操作时可靠性的有效结论。
本发明实施例的优点在于,测试数据的文件大小和内容均为随机生成,充分模拟了现实应用场景中小文件的特性,且降低了主观因素对于测试结论的影响,同时小文件数量可控,可以适应不同规格存储设备的测试需求。
可以理解的是,对海量小文件的存储是存储设备的一种普遍应用场景,在互联网、移动运营商领域尤为常见,因为这些行业所存储的数据往往涉及图片、音频、文本、日志等小型文件,且数量巨大,因此无论何种存储设备在设计时都会对小文件的存储进行一些特别的优化;采用本发明实施例,可利用随机生成的预定数量的小文件(这些预定数量的小文件中,小文件的文件大小随机,内容随机)进行待测存储设备的可靠性测试,解决现有使用已有小文件进行测试,所带来的可靠性测试结论的可靠性无法保障的问题,提升了可靠性测试结论的可靠性;
可见,本发明实施例所提供的基于海量随机小文件的存储设备读写可靠性测试方法,对于存储设备的研发企业和采购企业都有重要意义。
本发明实施例提供的存储可靠性测试方法包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;重复上述步骤直至生成预定数量的小文件;根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
由于本发明实施例对待测存储设备进行存储可靠性测试所用测试数据是,文件大小和内容均为随机生成的小文件,这充分模拟了存储设备现实应用场景中小文件的特性,降低了主观因素对于测试结论的影响,提升了存储可靠性测试结论的可靠性;同时小文件数量可控,可以适应不同规格存储设备的测试需求。因此,本发明实施例提供的存储可靠性测试方法,可提升存储可靠性测试结论的可靠性,并可适应不同规格存储设备的测试需求。
可选的,图3示出了本发明实施例提供的存储可靠性测试方法的另一流程,参照图3,该方法可应用于服务器,该存储可靠性测试方法可以包括:
步骤S200、利用$RANDOM变量产生随机数,以随机数来控制小文件的文件大小,所确定的文件大小保存在size变量。
步骤S210、获取/dev/urandom设备输出的可靠随机数序列,以所述可靠随机数序列为基础,使用dd工具得到内容随机且文件大小为所述size变量所指示的小文件。
步骤S220、利用shell脚本,重复执行步骤S200至步骤S210,直至生成预定数量的小文件。
步骤S230、根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
在得到预定数量的小文件后,本发明实施例可对待测存储设备进行存储可靠性测试;基于图1所示***,进行存储可靠性测试之前,本发明实施例需确定被测存储设备处于稳定状态,保证服务器与待测设备之间的网络连接通畅的情况下,可通过图4所示方法基于小文件,对待测存储设备进行存储可靠性测试,图4所示方法可应用于服务器;
参照图4,该方法可以包括:
步骤S300、在服务器上创建目录一和目录二,并控制待测存储设备的lun1挂载在目录一,待测存储设备的lun2挂载在目录二。
可选的,本发明实施例可在待测存储设备上创建两个lun(Logical Unit Number,逻辑单元号),命名为lun1(逻辑单元号一)和lun2(逻辑单元号二);可选的,单个lun的容量应大于1TB,其它参数可使用***默认;
同时,在服务器上创建/mnt/lun1(称为目录一,用于挂载lun1),/mnt/lun2(称为目录二,用于挂载lun2)。
可选的,可通过iSCSI(Internet Small Computer System Interface,Internet小型计算机***接口)协议,使用mount命令(挂载命令)控制被测存储设备的lun1挂载在目录一,待测存储设备的lun2挂载在目录二;即通过iSCSI协议,使用mount命令控制待测存储设备的lun1挂载在Linux服务器上的目录/mnt/lun1中,待测存储设备的lun2挂载在Linux服务器上的目录/mnt/lun2中。
步骤S310、将所述预定数量的小文件分别拷贝到目录一和目录二。
可选的,本发明实施例可使用cp命令(cp命令用于复制文件或目录),将生成的预定数量的小文件分别拷贝到/mnt/lun1和/mnt/lun2目录中。
步骤S320、控制所述预定数量的小文件在目录一和目录二之间移动,根据移动情况确定存储可靠性测试结论。
可选的,本发明实施例可使用mv命令,控制预定数量的小文件在/mnt/lun1和/mnt/lun2之间移动,从而根据预定数量的小文件在/mnt/lun1和/mnt/lun2之间的移动情况,确定存储可靠性测试结论;
可选的,在测试过程中可以通过小文件在/mnt/lun1和/mnt/lun2之间的移动来,模拟小文件写入、读取、删除等常见IO操作,可以快速得出有效的可靠性测试结论。
可以理解的是,如果能够顺利完成图4所示方法,实现预定数量的小文件在目录一和目录二之间移动,则待测存储设备和Linux服务器无异常报错,则测试完成,输出存储可靠性测试结论,认为待测存储设备对于海量小文件应用场景有良好的可靠性;否则,认为待测存储设备对于海量小文件的支持不够完善。
本发明实施例提供的存储可靠性测试方法,可利用Linux中的$RANDOM变量和/dev/urandom设备,产生海量随机小文件作为测试数据,其随机性体现在文件大小随机和文件内容随机;进而在同一存储设备的两个LUN上相互移动海量随机小文件,来得出存储设备对于海量小文件应用场景的可靠性,确定存储可靠性测试结论。本发明实施例提供的存储可靠性测试方法,可提升存储可靠性测试结论的可靠性,并可适应不同规格存储设备的测试需求。
下面对本发明实施例提供的服务器进行介绍,下文描述的服务器可以认为是,服务器为实现本发明实施例提供的存储可靠性测试方法所需设置的程序模块内容;下文描述的服务器内容可与上文描述的存储可靠性测试方法内容相应对应参照。
图5为本发明实施例提供的服务器的结构框图,参照图5,该服务器可以包括:
海量小文件生成模块100,用于重复执行目标步骤直至生成预定数量的小文件;所述目标步骤包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;
测试执行模块200,用于根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
可选的,海量小文件生成模块100,用于生成随机数,具体包括:
利用$RANDOM变量产生随机数;$RANDOM是Linux***的壳shell中的环境变量,且$RANDOM变量生成数的范围被设置为,小文件设定的千字节KB大小范围。
可选的,海量小文件生成模块100,用于获取可靠随机数序列,具体包括:
获取/dev/urandom设备输出的可靠随机数序列;/dev/urandom是Linux***提供的产生随机数的设备;
可选的,海量小文件生成模块100,用于以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件,具体包括:
以所述可靠随机数序列为基础,使用dd工具得到内容随机且文件大小为所述大小变量所指示的小文件;其中,dd工具是Linux***中的文件备份工具。
可选的,海量小文件生成模块100,用于重复执行目标步骤直至生成预定数量的小文件,具体包括:
利用shell脚本,重复执行目标步骤直至生成预定数量的小文;所述shell脚本封装有所述目标步骤的操作。
可选的,测试执行模块200,用于根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论,具体包括:
创建目录一和目录二,并控制待测存储设备的lun1挂载在目录一,待测存储设备的lun2挂载在目录二;
将所述预定数量的小文件分别拷贝到目录一和目录二;
控制所述预定数量的小文件在目录一和目录二之间移动,根据移动情况确定存储可靠性测试结论。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的核心思想或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种存储可靠性测试方法,其特征在于,包括:
重复执行目标步骤直至生成预定数量的小文件;所述目标步骤包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;
根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
2.根据权利要求1所述的存储可靠性测试方法,其特征在于,所述生成随机数包括:
利用$RANDOM变量产生随机数;$RANDOM是Linux***的壳shell中的环境变量,且$RANDOM变量生成数的范围被设置为,小文件设定的千字节KB大小范围。
3.根据权利要求1所述的存储可靠性测试方法,其特征在于,所述获取可靠随机数序列包括:
获取/dev/urandom设备输出的可靠随机数序列;/dev/urandom是Linux***提供的产生随机数的设备;
所述以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件包括:
以所述可靠随机数序列为基础,使用dd工具得到内容随机且文件大小为所述大小变量所指示的小文件;其中,dd工具是Linux***中的文件备份工具。
4.根据权利要求1所述的存储可靠性测试方法,其特征在于,所述重复执行目标步骤直至生成预定数量的小文件包括:
利用shell脚本,重复执行目标步骤直至生成预定数量的小文;所述shell脚本封装有所述目标步骤的操作。
5.根据权利要求1-4任一项所述的存储可靠性测试方法,其特征在于,所述根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论包括:
创建目录一和目录二,并控制待测存储设备的lun1挂载在目录一,待测存储设备的lun2挂载在目录二;
将所述预定数量的小文件分别拷贝到目录一和目录二;
控制所述预定数量的小文件在目录一和目录二之间移动,根据移动情况确定存储可靠性测试结论。
6.一种服务器,其特征在于,包括:
海量小文件生成模块,用于重复执行目标步骤直至生成预定数量的小文件;所述目标步骤包括:生成随机数,以所述随机数确定小文件的文件大小,将所述文件大小保存在大小变量中;获取可靠随机数序列,以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件;
测试执行模块,用于根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论。
7.根据权利要求6所述的服务器,其特征在于,所述海量小文件生成模块,用于生成随机数,具体包括:
利用$RANDOM变量产生随机数;$RANDOM是Linux***的壳shell中的环境变量,且$RANDOM变量生成数的范围被设置为,小文件设定的千字节KB大小范围。
8.根据权利要求6所述的服务器,其特征在于,所述海量小文件生成模块,用于获取可靠随机数序列,具体包括:
获取/dev/urandom设备输出的可靠随机数序列;/dev/urandom是Linux***提供的产生随机数的设备;
所述海量小文件生成模块,用于以所述可靠随机数序列为基础,生成内容随机且文件大小为所述大小变量所指示的小文件,具体包括:
以所述可靠随机数序列为基础,使用dd工具得到内容随机且文件大小为所述大小变量所指示的小文件;其中,dd工具是Linux***中的文件备份工具。
9.根据权利要求6所述的服务器,其特征在于,所述海量小文件生成模块,用于重复执行目标步骤直至生成预定数量的小文件,具体包括:
利用shell脚本,重复执行目标步骤直至生成预定数量的小文;所述shell脚本封装有所述目标步骤的操作。
10.根据权利要求5-9任一项所述的服务器,其特征在于,所述测试执行模块,用于根据所述预定数量的小文件,对待测存储设备进行存储可靠性测试,得到存储可靠性测试结论,具体包括:
创建目录一和目录二,并控制待测存储设备的lun1挂载在目录一,待测存储设备的lun2挂载在目录二;
将所述预定数量的小文件分别拷贝到目录一和目录二;
控制所述预定数量的小文件在目录一和目录二之间移动,根据移动情况确定存储可靠性测试结论。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710742159.4A CN107562554A (zh) | 2017-08-25 | 2017-08-25 | 一种存储可靠性测试方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710742159.4A CN107562554A (zh) | 2017-08-25 | 2017-08-25 | 一种存储可靠性测试方法及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107562554A true CN107562554A (zh) | 2018-01-09 |
Family
ID=60976959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710742159.4A Pending CN107562554A (zh) | 2017-08-25 | 2017-08-25 | 一种存储可靠性测试方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107562554A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108683567A (zh) * | 2018-05-30 | 2018-10-19 | 郑州云海信息技术有限公司 | 一种基于mcs和服务器的交换机端口故障测试方法及*** |
CN108829573A (zh) * | 2018-06-20 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种基于Linux***小文件预读功能的可靠性测试方法 |
CN109614330A (zh) * | 2018-12-06 | 2019-04-12 | 广东浪潮大数据研究有限公司 | 存储***业务测试方法、装置、***、存储控制器及介质 |
CN110557299A (zh) * | 2019-07-31 | 2019-12-10 | 苏州浪潮智能科技有限公司 | 一种网络传输功能批量测试方法、***、终端及存储介质 |
CN111221691A (zh) * | 2019-12-27 | 2020-06-02 | 广东睿江云计算股份有限公司 | 一种磁盘自动快照数据恢复的测试方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020162066A1 (en) * | 2001-03-09 | 2002-10-31 | Ajay Khoche | Test vector compression method |
CN103514958A (zh) * | 2012-12-31 | 2014-01-15 | Tcl集团股份有限公司 | 一种emmc芯片寿命检测方法 |
CN106095635A (zh) * | 2016-06-28 | 2016-11-09 | 浪潮电子信息产业股份有限公司 | 一种基于dd的硬盘性能测试方法 |
-
2017
- 2017-08-25 CN CN201710742159.4A patent/CN107562554A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020162066A1 (en) * | 2001-03-09 | 2002-10-31 | Ajay Khoche | Test vector compression method |
CN103514958A (zh) * | 2012-12-31 | 2014-01-15 | Tcl集团股份有限公司 | 一种emmc芯片寿命检测方法 |
CN106095635A (zh) * | 2016-06-28 | 2016-11-09 | 浪潮电子信息产业股份有限公司 | 一种基于dd的硬盘性能测试方法 |
Non-Patent Citations (1)
Title |
---|
高泽栋: "一种优化HDFS小写文件存储策略研究与实现", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108683567A (zh) * | 2018-05-30 | 2018-10-19 | 郑州云海信息技术有限公司 | 一种基于mcs和服务器的交换机端口故障测试方法及*** |
CN108829573A (zh) * | 2018-06-20 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种基于Linux***小文件预读功能的可靠性测试方法 |
CN109614330A (zh) * | 2018-12-06 | 2019-04-12 | 广东浪潮大数据研究有限公司 | 存储***业务测试方法、装置、***、存储控制器及介质 |
CN110557299A (zh) * | 2019-07-31 | 2019-12-10 | 苏州浪潮智能科技有限公司 | 一种网络传输功能批量测试方法、***、终端及存储介质 |
CN111221691A (zh) * | 2019-12-27 | 2020-06-02 | 广东睿江云计算股份有限公司 | 一种磁盘自动快照数据恢复的测试方法 |
CN111221691B (zh) * | 2019-12-27 | 2023-09-01 | 广东睿江云计算股份有限公司 | 一种磁盘自动快照数据恢复的测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107562554A (zh) | 一种存储可靠性测试方法及服务器 | |
CN107480039B (zh) | 一种分布式存储***的小文件读写性能测试方法及装置 | |
EP3033678B1 (en) | Methods, systems, and computer readable media for modeling a workload | |
CN109787830A (zh) | 灰度发布控制方法、装置、***、电子设备及存储介质 | |
US9824000B1 (en) | Testing calling code dynamically with random error injection based on user-specified configuration | |
CN109376046A (zh) | 一种硬盘测试方法、装置、设备以及计算机可读存储介质 | |
CN109189384A (zh) | 一种代码的复用方法及装置 | |
CN107479823A (zh) | 随机读写文件测试中的数据校验方法和装置 | |
CN105183641B (zh) | 一种内核模块的数据一致性校验方法及*** | |
CN110851307A (zh) | 振动环境下硬盘性能测试方法、***、终端及存储介质 | |
US6868434B1 (en) | System and method for testing server latencies using multiple concurrent users in a computer system | |
US8874966B1 (en) | Storage device error simulator tool | |
CN115129572A (zh) | 一种性能测试方法、装置、设备及介质 | |
CN106126427A (zh) | 一种快速恢复测试的方法及*** | |
CN103970967B (zh) | 一种电力***电磁暂态仿真分析*** | |
CN108200169A (zh) | 一种云存储***的副本初次放置策略控制方法 | |
CN103279408B (zh) | 独立冗余磁盘阵列raid性能的测试方法 | |
US9501390B1 (en) | Enhancing automated mobile application testing | |
BRPI0904262A2 (pt) | modelo de carga automatizado | |
US20200387649A1 (en) | Systems and methods for simulating real-world io workloads in a parallel and distributed storage system | |
CN105893198A (zh) | 一种kvm稳定性的测试方法及装置 | |
CN111026656A (zh) | 分布式存储的自动化测试***、方法、设备及存储介质 | |
CN107329798A (zh) | 数据复制的方法、装置和虚拟化*** | |
US10725877B2 (en) | System, method and computer program product for performing a data protection operation | |
CN106909472B (zh) | 一种分布式文件***的输入/输出负载调整方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180109 |