存储设备稳定性测试方法、装置、设备及介质与流程
未命名
07-27
阅读:84
评论:0

1.本发明涉及计算机技术领域,具体涉及存储设备稳定性测试方法、装置、设备及介质。
背景技术:
2.硬盘的使用过程中最重要的步骤是写与读,主机将数据发送至闪存,也可以从闪存中读取数据。不论是读的过程还是写的过程,任意环节出现问题,都可能导致数据传输出现丢包或误码的情况发生。
3.有些错误通过低密度奇偶校验码(lowdensityparitycheckcode,简称ldpc)等纠错机制就可以发现和纠正,但是也有极少数错误不能通过这些常规的机制检测出来,被称为静默错误(silent data error),这部分错误虽然极少,但是对于某些行业用户的众多核心业务系统是无法容忍的,而消除静默错误带来的风险就需要依靠端到端数据保护技术。
4.基于非易失性快速存储器(on-volatile memory express,简称nvme)的数据保护信息存储功能是一项非常前沿且具有可观价值的端到端数据保护技术,但是,目前还没有针对该技术进行稳定性测试的有效方法或手段。
技术实现要素:
5.有鉴于此,本发明提供了一种存储设备稳定性测试方法、装置、设备及介质,以解决目前技术中没有针对基于非易失性快速存储器(on-volatile memory express,简称nvme)的数据保护信息存储功能进行稳定性测试的问题。
6.第一方面,本发明提供了一种存储设备稳定性测试方法,该方法包括:
7.获取存储设备当前所属的运行模式;
8.根据所述运行模式,按照与所述运行模式对应的测试模式对所述存储设备的稳定性进行至少一次的测试;
9.在每一次测试后,获取与所述测试对应的参考数据;
10.根据所述参考数据验证所述存储设备的稳定性;
11.当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式为最后一个运行模式时,停止针对所述存储设备的运行模式下的稳定性的测试;
12.或者,当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对所述存储设备的稳定性进行测试,直至完成针对所述存储设备在所有运行模式下的稳定性测试后结束。
13.本发明提供的一种存储设备稳定性测试方法,具有如下优点:
14.获取存储设备当前所属的运行模式,然后根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次测试,并在测试后获取与测试对应的参考数
据。根据参考数据验证存储设备的稳定性。当确定存储设备在当前所属的运行模式下已经完成稳定性的测试,并且确定当前所属的运行模式为最后一个运行模式,则停止针对所述存储设备的运行模式下的稳定性的测试。相反,如果确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对所述存储设备的稳定性进行测试,直至完成针对所述存储设备在所有运行模式下的稳定性测试后结束。通过该方式,可以针对存储设备当前运行的每一种运行模式都进行一次稳定性测试,用以验证存储设备在运行过程中稳定性是否存在异常。而且,一旦检测到存储设备存在异常,可以及时发出告警信息来提示工作人员进行维护。以免在存储设备真正应用到实际情况中,才发现稳定性存在异常,数据出错等情况的发生。
15.在一种可选的实施方式中,针对所述存储设备在所有运行模式下的稳定性测试均在预设测试环境下执行。
16.具体的,考虑到存储设备可能应用到不同的环境中,为了验证存储设备在不同环境中的稳定性,因此针对存储设备在所有运行模式下的稳定性测试都可以配置在预设测试环境下执行。用以模拟在实际应用场景中,针对存储设备的稳定性的测试。进而及时发现在实际应用场景中,存储设备可能出现的问题,并及时进行维护。
17.在一种可选的实施方式中,所述预设测试环境包括:在预设温度范围内,按照预设间隔时间,逐次按照预设梯度调整所述预设测试环境中的温度。
18.具体的,外界环境中,其实主要考虑的就是设备工作时所处的温度。因此,可以预设测试环境可以配置在一定的温度范围内,间隔预设时间,然后逐次按照预设梯度调整预设测试环境中的温度。而且,通过不停调整不同环境温度,也可以进一步测试存储设备在环境温度交替变化的过程中的稳定性。
19.在一种可选的实施方式中,根据所述运行模式,按照与所述运行模式对应的测试模式对所述存储设备的稳定性进行至少一次的测试,具体包括:
20.按照与每一种运行模式对应的重启操作规则,执行对所述存储设备所属的主机的重启操作;
21.统计重启操作的执行次数;
22.根据重启操作的执行次数,输出与所述存储设备中的逻辑盘对应的预设压力值作用在所述逻辑盘上,并持续预设时间。
23.具体的,每一种运行模式在执行任意一次测试时,都需要重启一次存储设备所属的主机,用以保证该次运行模式的配置参数生效。因此,需要按照与每一种运行模式对应的重启操作规则,执行对存储设备所属的主机的重启操作。然后,可以统计重启操作的执行次数,并根据执行次数,为存储设备中的逻辑盘输出与次数对应的压力值,作用在逻辑盘上,并持续预设时间。通过该操作,可以验证逻辑盘在不同压力,持续不同时间的基础上,稳定性是否存在异常。
24.在一种可选的实施方式中,所述根据重启操作的执行次数,输出与所述存储设备中的逻辑盘对应的预设压力值作用在所述逻辑盘上,并持续预设时间,具体包括:
25.当所述执行次数为奇数次时,输出与所述存储设备中的逻辑盘对应的第一预设压力值作用在所述逻辑盘上,并持续预设时间;
26.或者,当所述执行次数为偶数次时,输出与所述存储设备中的逻辑盘配置第二预设压力值作用在所述逻辑盘上,并持续所述预设时间,其中,所述第二预设压力值大于所述第一预设压力值。
27.具体的,统计重启操作的执行次数,当执行次数为奇数次时,则输出与存储设备中的逻辑盘对应的第一预设压力值,并作用在逻辑盘上,且维持预设时间。当重启操作的执行次数为偶数次时,则输出与所述存储设备中的逻辑盘配置第二预设压力值作用在所述逻辑盘上,并持续所述预设时间。也即是说,根据执行次数的不同,输出不同的压力作用的逻辑盘上,而且不同压力交替作用,进一步验证在这种交替变换的环境中存储设备的稳定性。使得对存储设备的稳定性测试更加全面一些。
28.在一种可选的实施方式中,所述方法还包括:
29.构建存储模式库,其中,所述存储模式库中包括与所述存储设备的物理盘对应的多种存储模式;
30.针对每一种存储模式,分别在所述物理盘中已配置的逻辑盘中建立数据校验分区。
31.在一种可选的实施方式中,所述方法还包括:
32.针对所述存储设备在第一运行模式下的稳定性进行测试之前,获取第一数据校验分区已存储数据对应的第一校验码,其中,所述第一数据校验分区为在第一存储模式对应的第一逻辑盘中建立的数据校验分区,所述第一存储模式为多种存储模式中的任一种存储模式;
33.以及,针对所述存储设备在第一运行模式下的稳定性进行测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码;
34.根据所述第一校验码和所述第二校验码,验证所述第一运行模式下所述存储设备的稳定性。
35.具体的,对存储设备的稳定性测试,除了可以针对每一种运行模式下的稳定性进行验证外,还可以包括,针对存储设备在每一种运行模式下的稳定测试前后,获取第一数据校验分区中已存储数据对应的校验码,验证测试前后校验码是否相同,来佐证在每一种运行模式下,存储设备的稳定性。
36.在一种可选的实施方式中,所述针对所述存储设备在第一运行模式下的稳定性进行测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码,包括:
37.针对所述存储设备的第一运行模式的每一次测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码;
38.或者,针对所述存储设备的第一运行模式的所有次数的测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码。
39.具体的,获取第二校验码的时机不同,也即是说可以针对第一运行模式下的每一次测试后,都验证一下存储设备的稳定性,也可以是针对第一运行模式下的所有测试结束后,验证一次存储设备的稳定性即可。前者验证的次数多一些,对于存储设备的稳定性的验证更加精准一些。后一种虽然验证的次数较少,但是其占用的验证时间也相对少一些,可以提高工作效率。
40.第二方面,本发明提供了一种存储设备稳定性测试装置,该装置包括:
41.运行模式获取模块,用于获取存储设备当前所属的运行模式;
42.处理模块,用于根据所述运行模式,按照与所述运行模式对应的测试模式对所述存储设备的稳定性进行至少一次的测试;
43.数据获取模块,用于在每一次测试后,获取与所述测试对应的参考数据;
44.验证模块,用于根据所述参考数据验证所述存储设备的稳定性;
45.所述处理模块,还用于当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式为最后一个运行模式时,停止针对所述存储设备的运行模式下的稳定性的测试;
46.或者,当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对所述存储设备的稳定性进行测试,直至完成针对所述存储设备在所有运行模式下的稳定性测试后结束。
47.本发明提供的一种存储设备稳定性测试装置,具有如下优点:
48.获取存储设备当前所属的运行模式,然后根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次测试,并在测试后获取与测试对应的参考数据。根据参考数据验证存储设备的稳定性。当确定存储设备在当前所属的运行模式下已经完成稳定性的测试,并且确定当前所属的运行模式为最后一个运行模式,则停止针对所述存储设备的运行模式下的稳定性的测试。相反,如果确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对所述存储设备的稳定性进行测试,直至完成针对所述存储设备在所有运行模式下的稳定性测试后结束。通过该方式,可以针对存储设备当前运行的每一种运行模式都进行一次稳定性测试,用以验证存储设备在运行过程中稳定性是否存在异常。而且,一旦检测到存储设备存在异常,可以及时发出告警信息来提示工作人员进行维护。以免在存储设备真正应用到实际情况中,才发现稳定性存在异常,数据出错等情况的发生。
49.第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的存储设备稳定性测试方法。
50.第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的存储设备稳定性测试方法。
附图说明
51.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
52.图1是根据本发明实施例的存储设备稳定性测试方法的流程图;
53.图2是根据本发明提供的设定温度范围和设计原则等的建议流程框图;
54.图3是根据本发明实施例提供的另一种存储设备稳定性测试方法的流程示意图;
55.图4是根据本发明提供的根据重启操作的执行次数,输出预设压力值作用在逻辑盘上的简易流程框图;
56.图5是根据本发明提供的根据重启操作的执行次数,输出预设压力值作用在逻辑盘上,并持续预设时间的具体流程框图;
57.图6是根据本发明实施例提供的再一种存储设备稳定性测试方法的流程图;
58.图7是根据本发明实施例提供的再一种存储设备稳定性测试方法的流程图
59.图8是根据本发明实施例的一种存储设备稳定性测试装置结构框图;
60.图9是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
61.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
62.硬盘的使用过程中最重要的步骤是写与读,主机端发送一个数据“1”,通过中断io或轮询的方式传递指令与数据块阵列,存储“1”到nand闪存(nand flash memory)上,并在需要的时候将“1”正确的读出来。该过程看似简单,实际上,如果任何一个环节不能够正确传递数据而出现丢包或者误码的情况,可能会付出的代价是千百倍的。因此对于存储带来挑战非常多,例如,非易失性内存主机控制器(non-volatile memory controller,简称nvmc)的软硬件缺陷、温度等都可能会导致误码、丢包等的情况发生。
63.数据在传输、存储过程中,会经过多个软件模块、多种传输通道,而数据最终的存放又涉及到多种存储介质,其中任意一个环节发生错误都可能会导致数据错误。如前文所介绍的,虽然,有些错误通过ldpc等纠错机制就可以发现和纠正,但是有一些错误一般无法被立即检测出来,而是后续通过应用在访问数据过程中,才发现数据已经出错,在应用层体现出现数据不一致,这类错误我们称为静默数据破坏,也即是静默错误(silent data corruption)。
64.数据产生静默数据错误的原因有很多种,总结起来可以归结为两类:硬件错误和软件故障。其中,硬件错误:内存、cpu、硬盘、数据传输链路等,硬件错误产生的原因可能是受电磁辐射、温湿度、震动等环境的影响。软件故障:操作系统、驱动、以及应用程序等。
65.为了能在数据的传输、存储过程中,尽早的发现数据静默错误。相关技术中可以使用端到端的数据保护技术实现。但是,端到端的数据保护技术目前还没有有效的测试手段或方法验证其稳定性。
66.为解决上述问题,本发明实施例,提供了一种存储设备稳定性测试实施例,需要说明的是,在附图的流程图示出的步骤可以在包括诸如一组计算机可执行指令的计算机系统(计算机设备)中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
67.在本实施例中提供了一种存储设备稳定性测试方法,可用于上述的终端机设备,如手机、平板电脑等,图1是根据本发明实施例的存储设备稳定性测试方法的流程图,如图1
所示,该流程包括如下步骤:
68.步骤s101,获取存储设备当前所属的运行模式。
69.具体的,存储设备例如可以是硬盘、闪存等具有存储功能的设备。存储设备当前所属的运行模式,例如可以包括如下中的一种:热启动模式warmreoot、动力循环模式powercycle,以及动力重置模式powerreset。
70.不同的运行模式,对应有不同的测试模式。因此,首先要获取存储设备当前所属的运行模式。
71.步骤s102,根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次的测试。
72.具体的,测试模式中包括存储设备所在的主机重启操作,不同的测试模式对应有不同的主机重启原理,而且对应的链路模式也不同。而具体的测试过程可以相同或类似。
73.所以,需要先根据运行模式,获取与运行模式对应的测试模式,然后按照测试模式对存储设备的稳定性进行至少一次测试。测试模式中,可以包括如下参数,比如按照主机的重启次数不同输出不同的压力,作用在存储设备的逻辑盘上,然后查看存储设备的工作情况,验证存储设备的稳定性。又比如,包括不同的环境温度,让存储设备在不同的环境温度下工作,来查看存储设备在工作过程中的稳定性等等。当然,也可以包括其他测试,这里不再过多举例说明。
74.步骤s103,在每一次测试后,获取与测试对应的参考数据。
75.具体的,与测试对应的参考数据,实际上就是指存储设备工作在某种测试模式下后,主机所能采集的运行过程中的某些参数,例如监控io,可以监控io中的数据库是否正常,能否正常运行等。例如数据读写,是否能够正常执行数据读写,又例如检测硬盘温度等等是否正常等等。具体的,参考数据可以包括如下几个方面,例如包括smart日志、系统日志,以及bmc日志等,其中bmc日志可以包括系统事件日志、精准日志、sdr日志等等。从smart日志中,可以提取存储设备的温度、存储设备的重启次数、存储设备的使用时长、存储设备的报警情况、可纠正的错误(corrected error,简称ce)和不可纠正的错误(uncorrect error,简称uce)告警等信息。
76.步骤s104,根据参考数据验证存储设备的稳定性。
77.具体的,根据参考数据,验证存储设备的稳定性,可以包括确定参考数据是否在预设定的标准范围内。例如存储设备的温度、存储设备的重启次数、存储设备的使用时长等是不是在与之对应的标准范围内,如果在标准范围内,则说明存储设备稳定性是正常的。当然,也可以包括确定是否存在如上所介绍的报警信息,如果存在,则可能稳定性存在异常。如果不存在,则说明稳定性正常。当然,也可以包括其他评判标准。具体的评判标准都是与参考数据对应的。而且评判标准是可以预先配置好的,主机只要拿参考数据和与之对应的评判标准进行比较,进而确定存储设备的稳定性即可。
78.步骤s105,当确定已完成存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式为最后一个运行模式时,停止针对存储设备的运行模式下的稳定性的测试。
79.或者,
80.步骤s106,当确定已完成存储设备在当前所属的运行模式下的稳定性测试,且确
定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对存储设备的稳定性进行测试,直至完成针对存储设备在所有运行模式下的稳定性测试后结束。
81.具体的,当确定存储设备已经完成在当前运行模式下的测试,并且确定当前运行模式为最后一个运行模式,则可以停止测试。又或者,如果不是最后一个运行模式,则可以进入下一个运行模式,再次执行与下一个运行模式对应的测试模式,完成对存储设备的测试。
82.具体的,如前文所介绍的,运行模式可以包括热启动模式warmreoot、动力循环模式powercycle,以及动力重置模式powerreset等,那么只要事先配置好每一种运行模式的工作顺序,最后再判断的时候只要确定最后一个运行模式是哪一个,然后再判断当前运行模式是哪一个,进行简单的比对既可确定当前运行模式是否为最后一个运行模式,这里不再过多赘述。
83.本实施例提供的存储设备稳定性测试方法,获取存储设备当前所属的运行模式,然后根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次测试,并在测试后获取与测试对应的参考数据。根据参考数据验证存储设备的稳定性。当确定存储设备在当前所属的运行模式下已经完成稳定性的测试,并且确定当前所属的运行模式为最后一个运行模式,则停止针对存储设备的运行模式下的稳定性的测试。相反,如果确定已完成存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对存储设备的稳定性进行测试,直至完成针对存储设备在所有运行模式下的稳定性测试后结束。通过该方式,可以针对存储设备当前运行的每一种运行模式都进行一次稳定性测试,用以验证存储设备在运行过程中稳定性是否存在异常。而且,一旦检测到存储设备存在异常,可以及时发出告警信息来提示工作人员进行维护。以免在存储设备真正应用到实际情况中,才发现稳定性存在异常,数据出错等情况的发生。
84.具体的,考虑到存储设备可能应用到不同的环境中,为了验证存储设备在不同环境中的稳定性。因此在一个可选的实施方式中,针对存储设备在所有运行模式下的稳定性测试都可以配置在预设测试环境下执行。也可以理解为前文所介绍测试模式中的参数可以包括测试环境的限定。通过在不同测试环境中完成测试,用以模拟在实际应用场景中,针对存储设备的稳定性的测试。进而及时发现在实际应用场景中,存储设备可能出现的问题,并及时进行维护。
85.在一个可选的实施方式中,预设测试环境包括:在预设温度范围内,按照预设间隔时间,逐次按照预设梯度调整预设测试环境中的温度。
86.具体的,外界环境中,其实主要考虑的就是设备工作时所处的温度。因此,可以预设测试环境可以配置在一定的温度范围内,间隔预设时间,然后逐次按照预设梯度调整预设测试环境中的温度。而且,通过不停调整不同环境温度,也可以进一步测试存储设备在环境温度交替变化的过程中的稳定性。
87.在一个具体的例子中,例如测试环境设定的温度范围为20-60摄氏度,然后从低到高,每间隔1小时,升高5摄氏度的规律持续升高,然后在达到60摄氏度后,每间隔1小时,降低5摄氏度。模拟存储部件使用场景温度持续变化的情况。
88.具体参见图2所示,图2中示意出设定温度范围,并且按照上述规律设定温度的过程,以及具体设计原则等。具体的设定规则中,设定温度范围是模拟存储设备真实使用场景中室温承载极限。设定温度循环变化,是模拟存储设备工作在温度持续变化的应用场景。具体设定过程已经在前文做了明确介绍,这里不再过多赘述。
89.在本实施例中提供了一种存储设备稳定性测试方法,可用于上述的移动终端,如手机、平板电脑等,图3是根据本发明实施例提供的另一种存储设备稳定性测试方法的流程图,如图3所示,该流程包括如下步骤:
90.步骤s301,获取存储设备当前所属的运行模式。
91.步骤s302,根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次的测试。
92.具体的,根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次的测试,可以包括如下方法步骤:
93.步骤s3021,按照与每一种运行模式对应的重启操作规则,执行对存储设备所属的主机的重启操作。
94.具体的,如上所介绍的,与每一种运行模式对应的测试模式不同,其中,包括重启操作规则不同。例如,warmreoot和powerreset这两种工作模式,都是主机不掉电重启,但是warmreoot工作模式,需要完成流程关闭系统上的进程和线程后执行重启操作,powerreset工作模式则没有这个流程,powercycle工作模式是主机掉电,但是bmc不掉电的情况下重启。因此,需要按照与每一种运行模式对应的重启操作规则,执行对存储设备所属的主机的重启操作。
95.步骤s3022,统计重启操作的执行次数。
96.步骤s3023,根据重启操作的执行次数,输出与存储设备中的逻辑盘对应的预设压力值作用在逻辑盘上,并持续预设时间。
97.在一个可选的实施方式中,根据重启操作的执行次数,输出与存储设备中的逻辑盘对应的预设压力值作用在逻辑盘上,并持续预设时间,具体包括如下方法步骤:
98.当执行次数为奇数次时,输出与存储设备中的逻辑盘对应的第一预设压力值作用在逻辑盘上,并持续预设时间;
99.或者,当执行次数为偶数次时,输出与存储设备中的逻辑盘配置第二预设压力值作用在逻辑盘上,并持续预设时间,其中,第二预设压力值大于第一预设压力值。
100.具体的,比如针对每一种运行模式都配置有预设定次数的重启操作。例如,每个运行模式配置有100次的重启操作。每次重启操作后,都需要统计当前重启操作对应的执行次数。如果当前执行的重启操作为第奇数次重启,那么主机可以通过io压力测试工具fio输出第一预设压力值(例如128k)作用在逻辑盘上。当当前执行的重启操作的为第偶数次重启,那么主机可以通过fio输出第二预设压力值(例如2m)作用在逻辑盘上。而且,每次输出压力作用在逻辑盘的持续时间可以是300s。
101.具体参见图4和图5所示,图4和图5分别示意出根据重启操作的执行次数,输出与存储设备中的逻辑盘对应的预设压力值作用在逻辑盘上,并持续预设时间的简易流程框图。而且,图5中还介绍了获取逻辑盘的数量、获取主机重启执行次数等的获取方式。例如获取存储逻辑盘的数量的方式是通过sblk或者nvmecli识别获取,获取主机重启执行次数则
可以通过预配置的用以记录重启几次的重启几次文件获取。图4和图5中的其他内容具体操作参见上文介绍,这里不再赘述。
102.具体的,每一种运行模式在执行任意一次测试时,都需要重启一次存储设备所属的主机,用以保证该次运行模式的配置参数生效。因此,需要按照与每一种运行模式对应的重启操作规则,执行对存储设备所属的主机的重启操作。然后,可以统计重启操作的执行次数,并根据执行次数,为存储设备中的逻辑盘输出与次数对应的压力值,作用在逻辑盘上,并持续预设时间。通过该操作,可以验证逻辑盘在不同压力,持续不同时间的基础上,稳定性是否存在异常。而且,根据执行次数的不同,之所以输出不同的压力作用的逻辑盘上,是为了验证在不同压力交替作用的情况下存储设备的稳定性。使得对存储设备的稳定性测试更加全面一些。
103.步骤s303,在每一次测试后,获取与测试对应的参考数据。
104.步骤s304,根据参考数据验证存储设备的稳定性。
105.步骤s305,当确定已完成存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式为最后一个运行模式时,停止针对存储设备的运行模式下的稳定性的测试。
106.或者,步骤s306,当确定已完成存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对存储设备的稳定性进行测试,直至完成针对存储设备在所有运行模式下的稳定性测试后结束。
107.步骤s301,步骤s303至步骤s306的介绍,详细请参见图1所示实施例的介绍,在此不再赘述。
108.在本实施例中提供了一种存储设备稳定性测试方法,可用于上述的移动终端,如手机、平板电脑等,图6是根据本发明实施例提供的再一种存储设备稳定性测试方法的流程图,如图6所示,在前述任一个实施例的基础上,该方法还可以包括如下方法步骤:
109.步骤s601,构建存储模式库。
110.,其中,存储模式库中包括与存储设备的物理盘对应的多种存储模式。
111.在一个可选的例子中,存储模式库中的存储模式由逻辑块数据单元和保护信息单元的配置构成。其中,存储模式的配置实际是对物理盘的存储空间进行划分。具体的逻辑块数据单元和保护信息单元的组成模式,也即是存储模式包括但不限于如下中的几种:512b+0、512b+8b、4k+0b0b、4k+8bb、4k+64b。
112.例如,512b+0模式中,512b代表逻辑块数据单元的存储空间,0代表包含信息单元的存储空间。再者,例如512b+8b模式中,512b代表逻辑块数据单元的存储空间,8b代表包含信息单元的存储空间。其他的组合模式类似,存模式中的前者代表逻辑块数据单元的存储空间,后者代表保护信息单元的存储空间。
113.步骤s602,针对每一种存储模式,分别在物理盘中已配置的逻辑盘中建立数据校验分区。
114.具体的建立数据校验分区的过程属于比较成熟的技术,这里不再过多赘述。
115.在一个可选的实施方式中,在图6对应的实施例的基础上,该方法还包括如下方法步骤,具体参见图7所示,
116.步骤s701,针对存储设备在第一运行模式下的稳定性进行测试之前,获取第一数据校验分区已存储数据对应的第一校验码。
117.其中,第一数据校验分区为在第一存储模式对应的第一逻辑盘中建立的数据校验分区,第一存储模式为多种存储模式中的任一种存储模式;
118.以及,
119.步骤s702,针对存储设备在第一运行模式下的稳定性进行测试之后,获取第一数据校验分区已存储数据对应的第二校验码。
120.具体的,例如在针对存储设备在第一运行模式下的稳定性进行测试之前,在第一数据校验分区中随机写入一定的数据,例如10g数据,然后生成第一校验码,校验码例如可以是md5校验码。然后,在针对存储设备在第一运行模式下的稳定性进行测试之后,获取第一数据校验分区已存储的10g数据对应的第二校验码。也即是第二个md5校验码。然后,将第一个md5校验码和第二个md5校验码进行比较,确定二者是否相同,进而从侧面验证存储设备的稳定性。
121.在一个可选的实施方式中,获取第二校验码可以包括如下方式中的一种:
122.针对存储设备的第一运行模式的每一次测试之后,获取第一数据校验分区已存储数据对应的第二校验码;
123.或者,针对存储设备的第一运行模式的所有次数的测试之后,获取第一数据校验分区已存储数据对应的第二校验码。
124.步骤s703,根据第一校验码和第二校验码,验证第一运行模式下存储设备的稳定性。
125.具体的,对存储设备的稳定性测试,除了可以针对每一种运行模式下的稳定性进行验证外,还可以包括,针对存储设备在每一种运行模式下的稳定测试前后,获取第一数据校验分区中已存储数据对应的校验码,验证测试前后校验码是否相同,来佐证在每一种运行模式下,存储设备的稳定性。
126.而获取第二校验码的时机不同,也即是说可以针对第一运行模式下的每一次测试后,都验证一下存储设备的稳定性,也可以是针对第一运行模式下的所有测试结束后,验证一次存储设备的稳定性即可。前者验证的次数多一些,对于存储设备的稳定性的验证更加精准一些。后一种虽然验证的次数较少,但是其占用的验证时间也相对少一些,可以提高工作效率。
127.在本实施例中还提供了一种存储设备稳定性测试装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
128.本实施例提供一种存储设备稳定性测试装置,如图8示,包括:运行模式获取模块801、处理模块802、数据获取模块803,以及验证模块804。
129.其中,运行模式获取模块801,用于获取存储设备当前所属的运行模式;
130.处理模块802,用于根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次的测试;
131.数据获取模块803,用于在每一次测试后,获取与测试对应的参考数据;
132.验证模块804,用于根据参考数据验证存储设备的稳定性;
133.处理模块802,还用于当确定已完成存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式为最后一个运行模式时,停止针对存储设备的运行模式下的稳定性的测试;
134.或者,当确定已完成存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对存储设备的稳定性进行测试,直至完成针对存储设备在所有运行模式下的稳定性测试后结束。
135.在一种可选的实施方式中,针对存储设备在所有运行模式下的稳定性测试均在预设测试环境下执行。
136.在一个可选的实施方式中,预设测试环境包括:在预设温度范围内,按照预设间隔时间,逐次按照预设梯度调整预设测试环境中的温度。
137.在一个可选的实施方式中,处理模块802包括:重启子模块、统计子模块以及输出子模块;
138.其中,重启子模块,用于按照与每一种运行模式对应的重启操作规则,执行对存储设备所属的主机的重启操作。
139.统计子模块,用于统计重启操作的执行次数。
140.输出子模块,用于根据重启操作的执行次数,输出与存储设备中的逻辑盘对应的预设压力值作用在逻辑盘上,并持续预设时间。
141.在一个可选的实施方式中,重启子模块,具体用于:当执行次数为奇数次时,输出与存储设备中的逻辑盘对应的第一预设压力值作用在逻辑盘上,并持续预设时间;
142.或者,当执行次数为偶数次时,输出与存储设备中的逻辑盘配置第二预设压力值作用在逻辑盘上,并持续预设时间,其中,第二预设压力值大于第一预设压力值。
143.在一个可选的实施方式中,该装置还包括:
144.构建模块805,用于构建存储模式库,其中,存储模式库中包括与存储设备的物理盘对应的多种存储模式;针对每一种存储模式,分别在物理盘中已配置的逻辑盘中建立数据校验分区。
145.在一个可选的实施方式中,数据获取模块803,还用于针对存储设备在第一运行模式下的稳定性进行测试之前,获取第一数据校验分区已存储数据对应的第一校验码,其中,第一数据校验分区为在第一存储模式对应的第一逻辑盘中建立的数据校验分区,第一存储模式为多种存储模式中的任一种存储模式;
146.以及,针对存储设备在第一运行模式下的稳定性进行测试之后,获取第一数据校验分区已存储数据对应的第二校验码;
147.验证模块802,还用于根据第一校验码和第二校验码,验证第一运行模式下存储设备的稳定性。
148.在一个可选的实施方式中,校验码获取模块806,具体用于针对存储设备的第一运行模式的每一次测试之后,获取第一数据校验分区已存储数据对应的第二校验码;
149.或者,针对存储设备的第一运行模式的所有次数的测试之后,获取第一数据校验分区已存储数据对应的第二校验码。
150.本实施例中的存储设备稳定性测试装置是以功能模块的形式来呈现,这里的模块是指专用集成电路(application specific integrated circuit,简称asic),执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
151.上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
152.本发明实施例提供的一种存储设备稳定性测试装置,获取存储设备当前所属的运行模式,然后根据运行模式,按照与运行模式对应的测试模式对存储设备的稳定性进行至少一次测试,并在测试后获取与测试对应的参考数据。根据参考数据验证存储设备的稳定性。当确定存储设备在当前所属的运行模式下已经完成稳定性的测试,并且确定当前所属的运行模式为最后一个运行模式,则停止针对所述存储设备的运行模式下的稳定性的测试。相反,如果确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对所述存储设备的稳定性进行测试,直至完成针对所述存储设备在所有运行模式下的稳定性测试后结束。通过该方式,可以针对存储设备当前运行的每一种运行模式都进行一次稳定性测试,用以验证存储设备在运行过程中稳定性是否存在异常。而且,一旦检测到存储设备存在异常,可以及时发出告警信息来提示工作人员进行维护。以免在存储设备真正应用到实际情况中,才发现稳定性存在异常,数据出错等情况的发生。
153.本发明实施例还提供一种计算机设备,具有上述图9所示的存储设备稳定性测试装置。
154.请参阅图9,图9是本发明可选实施例提供的一种计算机设备的结构示意图,如图9所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器10为例。
155.处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
156.其中,存储器20存储有可由至少一个处理器10执行的指令,以使至少一个处理器10执行实现上述实施例示出的方法。
157.存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种小程序落地页的展现的计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存
储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
158.存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
159.该计算机设备还包括输入装置30和输出装置40。处理器10、存储器20、输入装置30和输出装置40可以通过总线或者其他方式连接,图9中以通过总线连接为例。
160.输入装置30可接收输入的数字或字符信息,以及产生与该计算机设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等。输出装置40可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。上述显示设备包括但不限于液晶显示器,发光二极管,显示器和等离子体显示器。在一些可选的实施方式中,显示设备可以是触摸屏。
161.该计算机设备还包括通信接口50,用于该计算机设备与其他设备或通信网络通信。
162.本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
163.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
技术特征:
1.一种存储设备稳定性测试方法,其特征在于,所述方法包括:获取存储设备当前所属的运行模式;根据所述运行模式,按照与所述运行模式对应的测试模式对所述存储设备的稳定性进行至少一次的测试;在每一次测试后,获取与所述测试对应的参考数据;根据所述参考数据验证所述存储设备的稳定性;当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式为最后一个运行模式时,停止针对所述存储设备的运行模式下的稳定性的测试;或者,当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对所述存储设备的稳定性进行测试,直至完成针对所述存储设备在所有运行模式下的稳定性测试后结束。2.根据权利要求1所述的方法,其特征在于,针对所述存储设备在所有运行模式下的稳定性测试均在预设测试环境下执行。3.根据权利要求2所述的方法,其特征在于,所述预设测试环境包括:在预设温度范围内,按照预设间隔时间,逐次按照预设梯度调整所述预设测试环境中的温度。4.根据权利要求1至3任一项所述的方法,其特征在于,根据所述运行模式,按照与所述运行模式对应的测试模式对所述存储设备的稳定性进行至少一次的测试,具体包括:按照与每一种运行模式对应的重启操作规则,执行对所述存储设备所属的主机的重启操作;统计重启操作的执行次数;根据重启操作的执行次数,输出与所述存储设备中的逻辑盘对应的预设压力值作用在所述逻辑盘上,并持续预设时间。5.根据权利要求4所述的方法,其特征在于,所述根据重启操作的执行次数,输出与所述存储设备中的逻辑盘对应的预设压力值作用在所述逻辑盘上,并持续预设时间,具体包括:当所述执行次数为奇数次时,输出与所述存储设备中的逻辑盘对应的第一预设压力值作用在所述逻辑盘上,并持续预设时间;或者,当所述执行次数为偶数次时,输出与所述存储设备中的逻辑盘配置第二预设压力值作用在所述逻辑盘上,并持续所述预设时间,其中,所述第二预设压力值大于所述第一预设压力值。6.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:构建存储模式库,其中,所述存储模式库中包括与所述存储设备的物理盘对应的多种存储模式;针对每一种存储模式,分别在所述物理盘中已配置的逻辑盘中建立数据校验分区。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:针对所述存储设备在第一运行模式下的稳定性进行测试之前,获取第一数据校验分区已存储数据对应的第一校验码,其中,所述第一数据校验分区为在第一存储模式对应的第
一逻辑盘中建立的数据校验分区,所述第一存储模式为多种存储模式中的任一种存储模式;以及,针对所述存储设备在第一运行模式下的稳定性进行测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码;根据所述第一校验码和所述第二校验码,验证所述第一运行模式下所述存储设备的稳定性。8.根据权利要求7所述的方法,其特征在于,所述针对所述存储设备在第一运行模式下的稳定性进行测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码,包括:针对所述存储设备的第一运行模式的每一次测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码;或者,针对所述存储设备的第一运行模式的所有次数的测试之后,获取所述第一数据校验分区已存储数据对应的第二校验码。9.一种存储设备稳定性测试装置,其特征在于,所述装置包括:运行模式获取模块,用于获取存储设备当前所属的运行模式;处理模块,用于根据所述运行模式,按照与所述运行模式对应的测试模式对所述存储设备的稳定性进行至少一次的测试;数据获取模块,用于在每一次测试后,获取与所述测试对应的参考数据;验证模块,用于根据所述参考数据验证所述存储设备的稳定性;所述处理模块,还用于当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式为最后一个运行模式时,停止针对所述存储设备的运行模式下的稳定性的测试;或者,当确定已完成所述存储设备在当前所属的运行模式下的稳定性测试,且确定当前所属的运行模式并非为最后一个运行模式时,进入下一个运行模式,并按照与下一运行模式对应的测试模式对所述存储设备的稳定性进行测试,直至完成针对所述存储设备在所有运行模式下的稳定性测试后结束。10.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至8中任一项所述的存储设备稳定性测试方法。11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至8中任一项所述的存储设备稳定性测试方法。
技术总结
本发明涉及计算机技术领域,公开了一种存储设备稳定性测试方法、装置、设备及介质,该方法包括:获取存储设备当前所属的运行模式;根据运行模式,按照与之对应的测试模式对存储设备的稳定性进行至少一次的测试;在每一次测试后,获取参考数据;根据参考数据验证存储设备的稳定性;当确定已完成在当前所属的运行模式下的测试,且确定该运行模式为最后一个运行模式时,停止测试;或者,当确定已完成在当前所属的运行模式下的测试,且确定该运行模式并非为最后一个运行模式时,进入下一个运行模式,按照与下一运行模式对应的测试模式进行测试,直至完成在所有运行模式下的测试后结束。针对每一种运行模式都进行一次测试,测试更加全面,准确。准确。准确。
技术研发人员:邵盟 李楠
受保护的技术使用者:苏州浪潮智能科技有限公司
技术研发日:2023.04.18
技术公布日:2023/7/25
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/