CN110865896A - 慢盘检测方法及装置、计算机可读存储介质 - Google Patents
慢盘检测方法及装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN110865896A CN110865896A CN201810980255.7A CN201810980255A CN110865896A CN 110865896 A CN110865896 A CN 110865896A CN 201810980255 A CN201810980255 A CN 201810980255A CN 110865896 A CN110865896 A CN 110865896A
- Authority
- CN
- China
- Prior art keywords
- data
- time
- real
- value
- hard disk
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本申请公开了一种慢盘检测方法及装置、计算机可读存储介质,属于云存储安全领域。包括:获取包括硬盘的多个IO数据的训练集;对训练集执行x次训练过程,训练过程包括:从训练集获取m个IO数据,对于每个IO数据,从第一搜索空间获取与IO数据中的目标IO值距离最近的k个IO值,基于目标IO值对应的目标时延值以及k个IO值对应的k个时延值确定IO数据对应的目标统计值,根据m个IO数据对应的m个目标统计值确定m个IO数据对应的累积分布函数;基于x次训练过程得到的x个累积分布函数确定目标阈值;基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测。本申请通过IO数据中的IO值和时延值确定目标阈值,解决了慢盘检测的精确度较低的问题。
Description
技术领域
本申请涉及云存储安全领域,特别涉及一种慢盘检测方法及装置、计算机可读存储介质。
背景技术
硬盘由于磁头老化、磁性退化、坏道、碎片、振动和节能设计等硬件和环境问题,会导致读写性能恶化,输入输出(Input/Output,IO)响应时间变长,进而成为慢盘,这种现象称为慢盘现象。在云化场景下,硬盘除了硬件和环境问题以外,还可能由于应用层的IO数据冲击导致IO响应时间变长,进而成为慢盘。云化场景可以划分为三层结构,由底层至上层依次包括:基础设施即服务(Infrastructure-as-a-Service,IaaS)(简称:I层)、平台即服务(Platform-as-a-Service,PaaS)(简称:P层)和软件即服务(Software-as-a-Service,SaaS)(简称:S层),常见的云化场景包括云优化场景、云增值场景和云创新场景。其中,由于硬件和环境问题导致的慢盘现象发生在I层,由于应用层的IO数据冲击导致的慢盘现象发生在P层。慢盘现象轻则会引起业务性能和/或可靠性下降,重则会导致业务中断。因此,快速精准地检测慢盘对云存储安全至关重要。
目前,业界主要采用自我监测、分析及报告技术(Self-Monitoring Analysis andReporting Technology,SMART)数据或IO数据进行慢盘检测。其中,SMART数据主要包括磁盘性能数据,例如数据吞吐性能、马达启动时间和寻道错误率等,即SMART数据为I层的数据;IO数据包括IO值和等待时间(await)值,IO值包括磁盘的读写流量和读写次数等,await时延表征IO请求的完成耗时,也称时延值,await值的大小取决于服务时间、IO队列的长度以及IO请求的发出模式等。云化解耦场景是I层和P层相互独立的云化场景,由于I层和P层相互独立,P层无法获取I层的数据,因此云化解耦场景下,处于P层的用户设备无法获取I层的SMART数据以进行慢盘检测,基于SMART数据的慢盘检测方法的通用性较低。
相关技术中提供了一种基于await值的慢盘检测方法,包括:获取磁盘中多个测试样本(指IO请求)的await值,将每个测试样本的await值与设定的阈值进行比较,对于同一磁盘,当超过一定数量的测试样本的await值大于固定阈值时,则确定该磁盘为慢盘。
但是,采用相关技术中的慢盘检测方法,由于相同IO值对应的await值可能不同,await值的波动较大,当固定阈值设定过高时,易造成慢盘的漏测,当固定阈值设定过低时,易造成慢盘的误测,慢盘检测的精确度较低。
发明内容
本申请实施例提供了一种慢盘检测方法及装置、计算机可读存储介质,可以解决相关技术中慢盘检测的精确度较低的问题。所述技术方案如下:
第一方面,提供了一种慢盘检测方法,该方法包括:
获取训练集,训练集中包括硬盘的多个输入输出IO数据,每个IO数据包括IO值和时延值;对训练集重复执行x次训练过程直至满足训练停止条件,x≥1,其中,训练过程包括:从训练集获取m个IO数据,m≥2,对于m个IO数据中的每个IO数据,从第一搜索空间获取与IO数据中的目标IO值距离最近的k个IO值,第一搜索空间由训练集中除m个IO数据以外的IO数据中的IO值构成,k≥2,基于目标IO值对应的目标时延值以及k个IO值对应的k个时延值,确定IO数据对应的目标统计值,目标统计值表征k个时延值中大于目标时延值的时延值个数和k个时延值中小于目标时延值的时延值个数中的一种,根据m个IO数据对应的m个目标统计值,确定m个IO数据对应的累积分布函数;基于x次训练过程所得到的x个累积分布函数,确定目标阈值;基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测。
需要说明的是,根据x次训练过程所得到的x个累积分布函数确定目标阈值,由于累积分布函数是综合IO值的特征和时延值的大小确定的,减小了由于相同IO值对应的时延值的波动较大导致的慢盘检测的精确度较低的问题,进而提高了慢盘检测的准确性。
可选的,基于x次训练过程所得到的x个累积分布函数,确定目标阈值,包括:
根据x个累积分布函数,确定x条累积分布曲线;计算每条累积分布曲线的包络面面积;基于目标特征值与硬盘的状态之间的关系,确定目标阈值,目标特征值与累积分布曲线的包络面面积相关。
其中,目标特征值与累积分布曲线的包络面面积相关,包括:目标特征值为累积分布曲线的包络面面积的值,或者,目标特征值由对包络面面积的值进行转换后得到,本申请实施例对此不做限定。由于硬盘处于正常状态下和处于慢盘状态下时对应的累积分布曲线的分布差异较大,进而累积分布曲线的包络面面积的值差异较大,因此可以将与累积分布曲线的包络面面积相关的数据确定为目标特征值,并基于该目标特征值确定硬盘的状态。
进一步的,在获取目标特征值后,可以将目标特征值输入无监督学习模型,以确定目标阈值。例如可以采用一类支持向量机模型对目标特征值进行训练,以确定用于区分慢盘的目标阈值。其中,该无监督学习模型的输入数据为目标特征值,输出数据为目标阈值,或者,输出数据也可以为慢盘标识,例如,慢盘标识可以为“0”或“1”,“0”表示该硬盘不为慢盘,“1”表示该硬盘为慢盘,当训练精度达到预设精度,例如训练结果的准确性达到99%以上时,则结束训练过程。其中,上述目标阈值可以通过离线训练的方式得到。
可选的,基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测,包括:
获取检测时段内硬盘的至少一个实时IO数据组,每个实时IO数据组包括m个实时IO数据,每个实时IO数据包括实时IO值和实时时延值;对每个实时IO数据组执行检测过程,其中,检测过程包括:对于每个实时IO数据,从第二搜索空间获取与实时IO数据中的实时IO值距离最近的z个IO值,第二搜索空间由训练集中所有IO数据中的IO值构成,基于实时IO值对应的实时时延值以及z个IO值对应的z个时延值,确定实时IO数据对应的实时统计值,z=k,根据实时IO数据组中的m个实时IO数据对应的m个实时统计值,确定实时IO数据组对应的实时累积分布函数;基于目标阈值以及至少一个实时IO数据组对应的至少一个实时累积分布函数,检测检测时段内硬盘是否为慢盘;其中,当目标统计值表征k个时延值中大于目标时延值的时延值个数,实时统计值表征z个时延值中大于实时时延值的时延值个数;当目标统计值表征k个时延值中小于目标时延值的时延值个数,实时统计值表征z个时延值中小于实时时延值的时延值个数。
可选的,基于目标阈值以及至少一个实时IO数据组对应的至少一个实时累积分布函数,检测检测时段内硬盘是否为慢盘,包括:
根据至少一个实时累积分布函数,确定至少一条实时累积分布曲线;计算每条实时累积分布曲线的包络面面积;当每个实时特征值与目标阈值的关系均满足指定关系条件时,确定硬盘在检测时段内不是慢盘,实时特征值与实时累积分布曲线的包络面面积相关,且每个实时特征值分别对应一条实时累积分布曲线。
示例的,当目标统计值表征k个时延值中小于目标时延值的时延值个数,实时统计值表征z个时延值中小于实时时延值的时延值个数时,当每个实时特征值均大于目标阈值时,确定硬盘在检测时段内不是慢盘;当目标统计值表征k个时延值中大于目标时延值的时延值个数,实时统计值表征z个时延值中大于实时时延值的时延值个数,当每个实时特征值均小于目标阈值时,确定硬盘在检测时段内不是慢盘。
可选的,当获取检测时段内硬盘的至少一个实时IO数据组,包括:获取检测时段内硬盘的多个实时IO数据组;则基于目标阈值以及至少一个实时IO数据组对应的至少一个实时累积分布函数,检测检测时段内硬盘是否为慢盘,还包括:
当存在指定实时特征值与目标阈值的关系不满足指定关系条件时,检测指定实时特征值的个数是否达到数量阈值;当指定实时特征值的个数达到数量阈值时,确定硬盘在检测时段内为慢盘。
示例的,假设在每个检测时段内对100个实时IO数据组进行检测,数量阈值为10,则当指定实时特征值的个数达到10时,确定硬盘在该检测时段内为慢盘;当指定实时特征值的个数未达到10时,确定硬盘在该检测时段内不为慢盘。例如可以将每个检测时段内确定的至少一个实时特征值输入无监督学习模型,根据无监督学习模型输出的慢盘标识确定该硬盘是否为慢盘,本申请实施例对此不做限定。
可选的,获取检测时段内硬盘的多个实时IO数据组,包括:
获取检测时段内硬盘的多个IO数据;从多个IO数据中,每隔p个IO数据截取m个连续的IO数据作为一个实时IO数据组,p≥1。
在本申请一种可能的实现方式中,获取训练集的过程,包括:
建立训练集;对于每个检测时段,将获取的硬盘的IO数据划分至训练集或对应的测试集,每个检测时段对应一个测试集,测试集根据每个检测时段内获取的硬盘的IO数据建立;获取当前检测时段结束后的训练集。
其中,将获取的硬盘的IO数据划分至训练集或对应的测试集,包括:
在获取硬盘的任一IO数据后,当训练集中IO数据的个数未达到基础个数阈值时,将该任一IO数据划分至训练集,得到更新后的训练集;当训练集中IO数据的个数达到基础个数阈值时,从训练集中获取该任一IO数据的n个最近邻IO数据,n≥2;分别计算每个最近邻IO数据与该任一IO数据之间的距离;当每个最近邻IO数据与该任一IO数据之间的距离均不大于指定距离阈值时,将该任一IO数据划分至测试集,得到更新后的测试集;当存在某个最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值时,将该任一IO数据划分至训练集,得到更新后的训练集。
需要说明的是,当每个最近邻IO数据与该任一IO数据之间的距离均不大于指定距离阈值时,说明训练集中的IO数据足够稠密,则无需将该任一IO数据划分至训练集。由于硬盘的IO数据是实时产生的,在一个检测时段结束后,可以将测试集中的IO数据清空,以释放存储空间,减少资源占用;在下一个检测时段开始后,将该检测时段内的IO数据划分至清空后的测试集,得到该检测时段对应的测试集。每个检测时段对应的测试集可以用于对该检测时段内的硬盘进行慢盘检测。采用上述方法获取训练集,与采用常规的无监督学习方式根据检测时段内的硬盘的IO数据建立训练集相比,在保证训练集中IO数据的精度的同时,减少了训练集中IO数据的数量,进而缩短了训练过程所耗费的时间,提高了慢盘检测效率。
可选的,当存在某个最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值时,将该任一IO数据划分至训练集,得到更新后的训练集,包括:
当存在某个最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值,且训练集中IO数据的个数未达到最大个数阈值时,将该任一IO数据划分至训练集,得到更新后的训练集。
相应的,基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测,包括:
获取当前检测时段对应的测试集;基于目标阈值和当前检测时段结束后的训练集,根据当前检测时段对应的测试集中的IO数据对硬盘进行慢盘检测。
在本申请另一种可能的实现方式中,从硬盘的历史IO数据中获取多个正样本IO数据,以建立训练集。
可选的,上述慢盘检测方法还包括:
在确定硬盘为慢盘后,检测硬盘的IO数据中的IO值是否符合指定条件;当硬盘的IO数据中的IO值符合指定条件时,确定基础设施即服务I层导致硬盘成为慢盘;当硬盘的IO数据中的IO值不符合指定条件时,至少确定平台即服务P层导致硬盘成为慢盘。
需要说明的是,本申请实施例提供的慢盘检测方法,通过检测IO数据中的IO值是否符合指定条件,确定I层或P层导致硬盘成为慢盘,无需人工干预即可确定导致慢盘的原因来自I层还是P层,便于维护人员针对性地进行修复和维护,进而可以提高慢盘修复效率。
可选的,在获取训练集之后,方法还包括:
剔除训练集中的负样本IO数据。
需要说明的是,根据每个检测时段内硬盘的IO数据更新训练集中的IO数据时,可能会将负样本IO数据划分至训练集中,影响训练结果的精度,将训练集中的负样本IO数据剔除,可以提高训练结果的精度。其中,负样本IO数据指的是慢盘的IO数据。
可选的,训练停止条件包括训练过程的执行次数达到预设次数阈值和训练结果精度达到预设精度中的至少一种。
第二方面,提供了一种慢盘检测装置,所述装置包括:
获取模块,用于获取训练集,所述训练集中包括硬盘的多个输入输出IO数据,每个所述IO数据包括IO值和时延值;
训练模块,用于对所述训练集重复执行x次训练过程直至满足训练停止条件,x≥1,其中,所述训练过程包括:
从所述训练集获取m个IO数据,m≥2,
对于所述m个IO数据中的每个IO数据,从第一搜索空间获取与所述IO数据中的目标IO值距离最近的k个IO值,所述第一搜索空间由所述训练集中除所述m个IO数据以外的IO数据中的IO值构成,k≥2,基于所述目标IO值对应的目标时延值以及所述k个IO值对应的k个时延值,确定所述IO数据对应的目标统计值,所述目标统计值表征所述k个时延值中大于所述目标时延值的时延值个数和所述k个时延值中小于所述目标时延值的时延值个数中的一种,
根据所述m个IO数据对应的m个目标统计值,确定所述m个IO数据对应的累积分布函数;
第一确定模块,用于基于所述x次训练过程所得到的x个累积分布函数,确定目标阈值;
第一检测模块,用于基于所述目标阈值和所述训练集,根据所述硬盘的实时IO数据对所述硬盘进行慢盘检测。
可选的,所述确定模块,用于:
根据所述x个累积分布函数,确定x条累积分布曲线;
计算每条所述累积分布曲线的包络面面积;
基于目标特征值与所述硬盘的状态之间的关系,确定所述目标阈值,所述目标特征值与所述累积分布曲线的包络面面积相关。
可选的,所述第一检测模块,包括:
第一获取子模块,用于获取检测时段内所述硬盘的至少一个实时IO数据组,每个所述实时IO数据组包括m个实时IO数据,每个所述实时IO数据包括实时IO值和实时时延值;
第一检测子模块,用于对每个所述实时IO数据组执行检测过程,其中,所述检测过程包括:
对于每个所述实时IO数据,从第二搜索空间获取与所述实时IO数据中的实时IO值距离最近的z个IO值,所述第二搜索空间由所述训练集中所有IO数据中的IO值构成,基于所述实时IO值对应的实时时延值以及所述z个IO值对应的z个时延值,确定所述实时IO数据对应的实时统计值,z=k,
根据所述实时IO数据组中的m个实时IO数据对应的m个实时统计值,确定所述实时IO数据组对应的实时累积分布函数;
第二检测子模块,用于基于所述目标阈值以及所述至少一个实时IO数据组对应的至少一个实时累积分布函数,检测所述检测时段内所述硬盘是否为慢盘;
其中,当所述目标统计值表征所述k个时延值中大于所述目标时延值的时延值个数,所述实时统计值表征所述z个时延值中大于所述实时时延值的时延值个数;当所述目标统计值表征所述k个时延值中小于所述目标时延值的时延值个数,所述实时统计值表征所述z个时延值中小于所述实时时延值的时延值个数。
可选的,所述第二检测子模块,用于:
根据所述至少一个实时累积分布函数,确定至少一条实时累积分布曲线;
计算每条所述实时累积分布曲线的包络面面积;
当每个实时特征值与所述目标阈值的关系均满足指定关系条件时,确定所述硬盘在所述检测时段内不是慢盘,所述实时特征值与所述实时累积分布曲线的包络面面积相关,且每个所述实时特征值分别对应一条所述实时累积分布曲线。
可选的,所述第一获取子模块,用于:
获取所述检测时段内所述硬盘的多个实时IO数据组;
所述第二检测子模块,还用于:
当存在指定实时特征值与所述目标阈值的关系不满足所述指定关系条件时,检测所述指定实时特征值的个数是否达到数量阈值;
当所述指定实时特征值的个数达到所述数量阈值时,确定所述硬盘在所述检测时段内为慢盘。
可选的,所述第一获取子模块,用于:
获取所述检测时段内所述硬盘的多个IO数据;
从所述多个IO数据中,每隔p个IO数据截取m个连续的IO数据作为一个所述实时IO数据组,p≥1。
可选的,所述获取模块,包括:
建立子模块,用于建立训练集;
划分子模块,用于对于每个检测时段,将获取的所述硬盘的IO数据划分至所述训练集或对应的测试集,所述每个检测时段对应一个测试集,所述测试集根据所述每个检测时段内获取的所述硬盘的IO数据建立;
第二获取子模块,用于获取当前检测时段结束后的所述训练集。
可选的,所述划分子模块,用于:
在获取所述硬盘的任一IO数据后,当所述训练集中IO数据的个数未达到所述基础个数阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集;
当所述训练集中IO数据的个数达到所述基础个数阈值时,从所述训练集中获取所述任一IO数据的n个最近邻IO数据,n≥2;
分别计算每个所述最近邻IO数据与所述任一IO数据之间的距离;
当每个所述最近邻IO数据与所述任一IO数据之间的距离均不大于指定距离阈值时,将所述任一IO数据划分至所述测试集,得到更新后的测试集;
当存在某个所述最近邻IO数据与所述任一IO数据之间的距离大于所述指定距离阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集。
可选的,所述划分子模块,用于:
当存在某个所述最近邻IO数据与所述任一IO数据之间的距离大于所述指定距离阈值,且所述训练集中IO数据的个数未达到所述最大个数阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集。
可选的,所述第一检测模块,用于:
获取所述当前检测时段对应的测试集;
基于所述目标阈值和所述当前检测时段结束后的所述训练集,根据所述当前检测时段对应的测试集中的IO数据对所述硬盘进行慢盘检测。
可选的,所述装置还包括:
第二检测模块,用于在确定所述硬盘为慢盘后,检测所述硬盘的IO数据中的IO值是否符合指定条件;
第二确定模块,用于当所述硬盘的IO数据中的IO值符合指定条件时,确定基础设施即服务I层导致所述硬盘成为慢盘;
第三确定模块,用于当所述硬盘的IO数据中的IO值不符合指定条件时,至少确定平台即服务P层导致所述硬盘成为慢盘。
可选的,所述装置还包括:
剔除模块,用于剔除所述训练集中的负样本IO数据。
可选的,所述训练停止条件包括所述训练过程的执行次数达到预设次数阈值和训练结果精度达到预设精度中的至少一种。
第三方面,提供了一种慢盘检测装置,包括:
输入输出组件;
处理器,用于通过接口组件与所述输入输出组件耦合,从所述输入输出组件获取指令并执行所述指令,实现如第一方面任一所述的慢盘检测方法。
可选的,所述装置还包括:
存储器;
所述处理器用于通过所述接口组件与所述存储器耦合,读取所述存储器中的指令并执行所述指令。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令被处理器执行时,实现如第一方面任一所述的慢盘检测方法。
第五方面,提供了一种芯片,所述芯片包括可编程逻辑电路,当所述芯片运行时,实现如第一方面任一所述的慢盘检测方法。
第六方面,提供了一种计算机程序产品,所述计算机程序产品中存储有计算机程序,当所述计算机程序被处理器执行时,实现如第一方面任一所述的慢盘检测方法。
本申请实施例提供的技术方案带来的有益效果包括:
本申请提供的慢盘检测方法及装置、计算机可读存储介质,根据x次训练过程所得到的x个累积分布函数确定目标阈值,由于累积分布函数是综合IO值的特征和时延值的大小确定的,减小了由于相同IO值对应的时延值的波动较大导致的慢盘检测的精确度较低的问题,提高了慢盘检测的准确性;进一步的,在确定硬盘为慢盘后,通过检测IO数据中的IO值是否符合指定条件,确定I层或P层导致硬盘成为慢盘,无需人工干预即可确定导致慢盘的原因来自I层还是P层,便于维护人员针对性地进行修复和维护,进而可以提高慢盘修复效率;另外,本申请实施例还提供了一种根据每个检测时段内硬盘的IO数据更新训练集中的IO数据,以确定每个检测时段对应的训练集的方法,与采用常规的无监督学习方式根据检测时段内的硬盘的IO数据建立训练集相比,在保证训练集中IO数据的精度的同时,减少了训练集中IO数据的数量,进而缩短了训练过程所耗费的时间,提高了慢盘检测效率。
附图说明
图1是本申请实施例提供的一种慢盘检测方法的流程图;
图2是本申请实施例提供的一种获取训练集的方法流程图;
图3是本申请实施例提供的一种将获取的硬盘的IO数据划分至训练集或对应的测试集的方法流程图;
图4是本申请实施例提供的一种累积分布曲线的示意图;
图5是本申请实施例提供的一种根据硬盘的实时IO数据对硬盘进行慢盘检测的方法流程图;
图6是本申请实施例提供的一种慢盘检测装置的结构示意图;
图7是本申请实施例提供的一种第一检测模块的结构示意图;
图8是本申请实施例提供的一种获取模块的结构示意图;
图9是本申请实施例提供的另一种慢盘检测装置的结构示意图;
图10是本申请实施例提供的又一种慢盘检测装置的结构示意图;
图11是本申请实施例提供的一种慢盘检测装置的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在云化场景下,I层的硬件或环境问题,或,P层的IO数据冲击会导致硬盘成为慢盘。由于相关技术中基于await值的慢盘检测方法,当固定阈值设定过高时,易造成慢盘的漏测,当固定阈值设定过低时,易造成慢盘的误测,因此导致慢盘检测的精确度较低。
本申请实施例提供了一种慢盘检测方法,基于硬盘的IO数据确定阈值,并根据检测时段内硬盘的IO数据对硬盘进行慢盘检测,可以解决相关技术中的问题。其中,IO数据包括IO值和时延值。本申请实施例获取硬盘的IO数据的过程包括:
每台物理主机(host)上运行有至少一台虚拟机(Virtual Machine,VM),每台虚拟机在运行过程中,通过iostat命令采集物理主机中的硬盘的初始IO数据,物理主机将该至少一台虚拟机采集的硬盘的初始IO数据进行数据合并,例如可以采用加权平均法对该至少一台虚拟机采集的硬盘的初始IO数据进行数据合并,并对该至少一台虚拟机采集的硬盘的初始IO数据进行特征提取,从初始IO数据中提取IO值和时延值,得到IO数据。可选的,可以先对物理主机上运行的所有虚拟机采集的硬盘的初始IO数据进行数据合并,再对数据合并后的IO数据进行特征提取,得到IO数据;或者,可以先分别对每台虚拟机采集的硬盘的初始IO数据进行特征提取,再对提取到的所有IO数据进行数据合并,得到IO数据。
可选的,IO值包括每秒完成读IO设备次数(R/S)、每秒完成写IO设备次数(W/S)、每秒完成读k字节数(Rkb/S)和每秒完成写k字节数(Wkb/S);时延值指平均每次设备IO读写操作的平均等待时间,也可称为await值。
图1是本申请实施例提供的一种慢盘检测方法的流程图,如图1所示,该方法包括:
在步骤101中,获取训练集,该训练集中包括硬盘的多个IO数据,每个IO数据包括IO值和时延值。
在本申请一种可能的实现方式中,从硬盘的历史IO数据中获取多个正样本IO数据,以建立训练集。其中,正样本IO数据指的是硬盘处于正常状态下的IO数据。在这种实现方式下,在不同的检测时段内训练集中的IO数据是相同的,也即是训练集中的IO数据是固定的。
在本申请另一种可能的实现方式中,根据不同的检测时段内获取的硬盘的IO数据更新训练集,则获取训练集的过程,参见图2,包括:
在步骤1011中,建立训练集。
可选的,建立的训练集为空集,或者,建立的训练集中包括硬盘的历史IO数据。示例的,训练集中的IO数据可以存储在预先设置的队列中。
在步骤1012中,对于每个检测时段,将获取的硬盘的IO数据划分至训练集或对应的测试集,每个检测时段对应一个测试集,测试集根据每个检测时段内获取的硬盘的IO数据建立。
可选的,不同检测时段的时长可以相同,也可以不同。慢盘检测过程可以是周期性的,则检测时段也可以称为检测周期;或者,慢盘检测过程也可以是被动触发的,如由人工或其他监测设备触发,例如当物理主机发生卡顿时,可以触发慢盘检测过程,以确定是否由于慢盘原因导致的物理主机卡顿。
可选的,将获取的硬盘的IO数据划分至训练集或对应的测试集的过程,参见图3,包括:
在步骤12a中,在获取硬盘的任一IO数据后,判断训练集中IO数据的个数是否达到基础个数阈值;当训练集中IO数据的个数未达到基础个数阈值时,执行步骤12f;当训练集中IO数据的个数达到基础个数阈值时,执行步骤12b。
其中,基础个数阈值也可称为最小个数阈值,通过设置训练集的基础个数阈值,使用于执行训练过程的训练集中存在足够的IO数据,以保证后续训练的可靠性。
在步骤12b中,从训练集中获取该任一IO数据的n个最近邻IO数据。
可选的,通过无监督学习算法从训练集中获取该任一IO数据的n个最近邻IO数据,例如可以通过k最近邻分类(k-Nearest Neighbor,kNN)算法或聚类算法从训练集中获取该任一IO数据的n个最近邻IO数据,本申请实施例在此不做赘述。其中,n≥2。
在步骤12c中,分别计算每个最近邻IO数据与该任一IO数据之间的距离。
在本申请实施例中,可以分别计算每个最近邻IO数据的IO值与该任一IO数据的IO值之间的距离,并将IO值之间的距离作为IO数据之间的距离。IO值可以是一个四维数据,包括R/S、W/S、Rkb/S和Wkb/S这四个数值,计算每两个IO值之间的距离可以是计算该两个IO值之间的欧式距离。
在步骤12d中,判断每个最近邻IO数据与该任一IO数据之间的距离是否大于指定距离阈值;当每个最近邻IO数据与该任一IO数据之间的距离均不大于指定距离阈值时,执行步骤12e;当存在某个最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值时,执行步骤12f。
示例的,假设指定距离阈值为R,该任一IO数据的IO值表征四维空间内的一个数据点,判断每个最近邻IO数据与该任一IO数据之间的距离是否大于指定距离阈值,也即是,检测是否存在最近邻IO数据的IO值位于指定空间外,该指定空间为以该任一IO数据的IO值为中心、R为半径所围成的空间。当不存在最近邻IO数据的IO值位于指定空间外,则确定每个最近邻IO数据与该任一IO数据之间的距离均不大于指定距离阈值;当存在某个最近邻IO数据的IO值位于指定空间外,则确定该最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值。
在步骤12e中,将该任一IO数据划分至测试集,得到更新后的测试集。
需要说明的是,当每个最近邻IO数据与该任一IO数据之间的距离均不大于指定距离阈值时,说明训练集中的IO数据足够稠密,则无需将该任一IO数据划分至训练集。
可选的,由于硬盘的IO数据是实时产生的,在一个检测时段结束后,可以将测试集中的IO数据清空,以释放存储空间,减少资源占用;在下一个检测时段开始后,将该检测时段内的IO数据划分至清空后的测试集,得到该检测时段对应的测试集。每个检测时段对应的测试集可以用于对该检测时段内的硬盘进行慢盘检测。
可选的,划分至测试集的IO数据可以存储在队列中,队列中的IO数据根据时间先后顺序依次排列。
在步骤12f中,将该任一IO数据划分至训练集,得到更新后的训练集。
可选的,当存在某个最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值,且训练集中IO数据的个数未达到最大个数阈值时,将该任一IO数据划分至训练集,得到更新后的训练集;当存在某个最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值,且训练集中IO数据的个数达到最大个数阈值时,将该任一IO数据丢弃,或者将该任一IO数据划分至测试集。
需要说明的是,通过设置训练集的最大个数阈值,可以避免训练集中IO数据的数量过多导致训练过程耗费时间过长。
在步骤1013中,获取当前检测时段结束后的训练集。
可选的,还可以获取当前检测时段结束后的测试集,该测试集可以用于对该检测时段内的硬盘进行慢盘检测。
在步骤1014中,剔除训练集中的负样本IO数据。
需要说明的是,根据每个检测时段内硬盘的IO数据更新训练集中的IO数据时,可能会将负样本IO数据划分至训练集中,影响训练结果的精度,将训练集中的负样本IO数据剔除,可以提高训练结果的精度。其中,负样本IO数据指的是慢盘的IO数据。
可选的,可以通过高斯离群点剔除法剔除训练集中的负样本IO数据,本申请实施例在此不做赘述。
需要说明的是,采用上述步骤1011至步骤1014的方式建立或更新训练集,与采用常规的无监督学习方式根据检测时段内的硬盘的IO数据建立训练集相比,在保证训练集中IO数据的精度的同时,减少了训练集中IO数据的数量,进而缩短了训练过程所耗费的时间,提高了慢盘检测效率。
在步骤102中,对训练集重复执行x次训练过程直至满足训练停止条件,x≥1。
可选的,训练停止条件包括训练过程的执行次数达到预设次数阈值和训练结果精度达到预设精度中的至少一种。
其中,训练过程包括:
S1021、从训练集获取m个IO数据,m≥2。
可选的,在每次训练过程中,可以从训练集中获取连续的m个IO数据。示例的,假设训练集中包括S个IO数据,S>m,在某次训练过程中,从训练集的第i个IO数据开始,取连续的m个IO数据;在下一次训练过程中,从训练集的第i+p个IO数据开始,取连续的m个IO数据,i≥1,p≥1,也即是,在下一次训练过程中,从第i个IO数据跳跃p个步长后,再取连续的m个IO数据。或者,每次训练过程中从训练集中获取的m个IO数据也可以是随机获取的,本申请实施例对此不做限定。
需要说明的是,不同训练过程获取的m个IO数据不完全相同。
可选的,从训练集中获取的m个IO数据可以记为集合M。
S1022、对于m个IO数据中的每个IO数据,从第一搜索空间获取与IO数据中的目标IO值距离最近的k个IO值,该第一搜索空间由训练集中除m个IO数据以外的IO数据中的IO值构成,k≥2。
示例的,训练集中包括S个IO数据,则第一搜索空间内包括S-m个IO数据的IO值,2≤k≤S-m。可选的,对于集合M中的每个IO数据,通过无监督学习算法从第一搜索空间内获取与IO数据中的目标IO值距离最近的k个IO值,例如可以通过kNN算法或聚类算法从第一搜索空间内获取与目标IO值距离最近的k个IO值,本申请实施例在此不做赘述。
示例的,将集合M中的每个IO数据对应的第一搜索空间内的k个IO数据记为一个集合,则集合M中的m个IO数据分别对应m个集合,该m个集合可以记为{N1,N2,…,Nm},其中,N1中记录有集合M中的第一个IO数据对应的k个IO数据,N2中记录有集合M中的第二个IO数据对应的k个IO数据,以此类推,Nm中记录有集合M中的第m个IO数据对应的k个IO数据。
S1023、基于目标IO值对应的目标时延值以及k个IO值对应的k个时延值,确定IO数据对应的目标统计值。
其中,目标统计值表征k个时延值中大于目标时延值的时延值个数和k个时延值中小于目标时延值的时延值个数中的一种。目标统计值的取值范围为0至k。
S1024、根据m个IO数据对应的m个目标统计值,确定m个IO数据对应的累积分布函数。
其中,m个IO数据对应的累积分布函数指m个目标统计值的累积分布函数(Cumulative Distribution Function,CDF)。每个目标统计值由集合M中的一个IO数据以及该IO数据对应的集合N确定。
在步骤103中,基于x次训练过程所得到的x个累积分布函数,确定目标阈值。
可选的,根据x个累积分布函数,确定x条累积分布曲线,该x条累积分布曲线与x个累积分布函数一一对应;计算每条累积分布曲线的包络面面积(Area Under CumulativeDistribution Function,AUCDF);基于目标特征值与硬盘的状态之间的关系,确定目标阈值,该目标特征值与累积分布曲线的包络面面积相关。
其中,目标特征值与累积分布曲线的包络面面积相关,包括:目标特征值为累积分布曲线的包络面面积的值,或者,目标特征值由对包络面面积的值进行转换后得到,本申请实施例对此不做限定。
示例的,假设目标统计值表征k个时延值中小于目标时延值的时延值个数,k的取值为50,图4是本申请实施例提供的一种累积分布曲线的示意图,如图4所示,横坐标表示目标统计值Count的取值,取值范围为0至50,纵坐标表示不同目标统计值对应的累积概率分布P(c≤Count),例如,点A表示当Count等于5时,P(c≤5)等于0.2,即m个目标统计值中目标统计值不大于5的概率为0.2。参见图4,曲线1至3表示硬盘处于正常状态下,m个目标统计值的累积分布函数对应的累积分布曲线;曲线4至6表示硬盘处于慢盘状态下,m个目标统计值的累积分布函数对应的累积分布曲线。需要说明的是,参见图4,由于硬盘处于正常状态下和处于慢盘状态下时,m个目标统计值的累积分布函数对应的累积分布曲线的分布差异较大,累积分布曲线的包络面面积的值差异较大,例如曲线1的包络面面积B1明显大于曲线4的包络面面积B2,因此可以将与累积分布曲线的包络面面积相关的数据确定为目标特征值。
进一步的,在获取目标特征值后,可以将目标特征值输入无监督学习模型,以确定目标阈值。例如可以采用一类支持向量机(One Class Support Vector Machine,OneClass SVM)模型对目标特征值进行训练,以确定用于区分慢盘的目标阈值。其中,该无监督学习模型的输入数据为目标特征值,输出数据为目标阈值,或者,输出数据也可以为慢盘标识,例如,慢盘标识可以为“0”或“1”,“0”表示该硬盘不为慢盘,“1”表示该硬盘为慢盘,当训练精度达到预设精度,例如训练结果的准确性达到99%以上时,则结束训练过程。
可选的,在获取训练集后,可以对训练集进行离线训练得到上述目标阈值。
在步骤104中,基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测。
可选的,基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测的过程,如图5所示,包括:
在步骤1041中,获取检测时段内硬盘的至少一个实时IO数据组,每个实时IO数据组包括m个实时IO数据,每个实时IO数据包括实时IO值和实时时延值。
可选的,每个实时IO数据组中的IO数据在时序上连续,则获取检测时段内硬盘的多个实时IO数据组的方式包括:获取检测时段内硬盘的多个IO数据;从该多个IO数据中,每隔p个IO数据截取m个连续的IO数据作为一个实时IO数据组,p≥1。在一种可能的实现方式中,参考步骤101,对于每个检测时段对应建立一个测试集,测试集中的IO数据可以根据时间先后顺序依次排列,则可以从测试集中获取连续的m个IO数据作为一个实时IO数据组;当需要获取检测时段内硬盘的多个实时IO数据组时,可以每跳跃p个步长,从测试集中获取连续的m个IO数据作为一个实时IO数据组。在另一种可能的实现方式中,每实时获取连续传输的m个IO数据,将该m个IO数据作为一个实时IO数据组,本申请实施例对获取实时IO数据组的方式不做限定。
可选的,每个实时IO数据组中的IO数据也可以从检测时段对应的测试集中随机获取,本申请实施例对此不做限定。
在步骤1042中,对每个实时IO数据组执行检测过程。
其中,检测过程包括:
S421、对于每个实时IO数据,从第二搜索空间获取与实时IO数据中的实时IO值距离最近的z个IO值,第二搜索空间由训练集中所有IO数据中的IO值构成,z=k。
示例的,训练集中包括S个IO数据,则第二搜索空间内包括S个IO数据的IO值。
可选的,此步骤的实现过程参考上述S1022,本申请实施例在此不做赘述。
S422、基于实时IO值对应的实时时延值以及z个IO值对应的z个时延值,确定实时IO数据对应的实时统计值。
其中,当目标统计值表征k个时延值中大于目标时延值的时延值个数,实时统计值表征z个时延值中大于实时时延值的时延值个数;当目标统计值表征k个时延值中小于目标时延值的时延值个数,实时统计值表征z个时延值中小于实时时延值的时延值个数。
S423、根据实时IO数据组中的m个实时IO数据对应的m个实时统计值,确定实时IO数据组对应的实时累积分布函数。
其中,实时IO数据组对应的累积分布函数指m个实时统计值的累积分布函数。
在步骤1043中,基于目标阈值以及至少一个实时IO数据组对应的至少一个实时累积分布函数,检测检测时段内硬盘是否为慢盘。
可选的,检测某个检测时段内硬盘是否为慢盘的过程,包括:
S431、根据至少一个实时累积分布函数,确定至少一条实时累积分布曲线。
S432、计算每条实时累积分布曲线的包络面面积。
S433、当每个实时特征值与目标阈值的关系均满足指定关系条件时,确定硬盘在检测时段内不是慢盘。
其中,实时特征值与实时累积分布曲线的包络面面积相关,且每个实时特征值分别对应一条实时累积分布曲线。
可选的,当目标特征值为累积分布曲线的包络面面积的值时,实时特征值为实时累积分布曲线的包络面面积的值;当目标特征值由对累积分布曲线的包络面面积的值转换得到,则实时特征值由对实时累积分布曲线的包络面面积的值进行相同的转换得到。
可选的,当目标统计值表征k个时延值中小于目标时延值的时延值个数,实时统计值表征z个时延值中小于实时时延值的时延值个数时,当每个实时特征值均大于目标阈值时,确定硬盘在检测时段内不是慢盘;当目标统计值表征k个时延值中大于目标时延值的时延值个数,实时统计值表征z个时延值中大于实时时延值的时延值个数,当每个实时特征值均小于目标阈值时,确定硬盘在检测时段内不是慢盘。
进一步的,当获取检测时段内硬盘的多个实时IO数据组,检测该检测时段内硬盘是否为慢盘的过程,还包括:
S434、当存在指定实时特征值与目标阈值的关系不满足指定关系条件时,检测指定实时特征值的个数是否达到数量阈值。
示例的,当目标统计值表征k个时延值中小于目标时延值的时延值个数,实时统计值表征z个时延值中小于实时时延值的时延值个数,当存在指定实时特征值小于或等于目标阈值时,统计指定实时特征值的个数。
S435、当指定实时特征值的个数达到数量阈值时,确定硬盘在检测时段内为慢盘。
示例的,假设在每个检测时段内对100个实时IO数据组进行检测,数量阈值为10,则当指定实时特征值的个数达到10时,确定硬盘在该检测时段内为慢盘;当指定实时特征值的个数未达到10时,确定硬盘在该检测时段内不为慢盘。
可选的,可以将每个检测时段内确定的至少一个实时特征值输入无监督学习模型,根据无监督学习模型输出的慢盘标识确定该硬盘是否为慢盘,本申请实施例对此不做限定。
在本申请的一个可选实施例中,当训练集中的IO数据是固定的,则不同检测时段所采用的目标阈值和训练集都是相同的,每个检测时段基于训练集和预先训练得到的目标阈值,根据该检测时段内获取的硬盘的IO数据对硬盘进行慢盘检测。
在本申请的另一个可选实施例中,当采用上述步骤1011至步骤1014获取每个检测时段对应的训练集和测试集时,上述基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测的实现过程,包括:获取当前检测时段对应的测试集;基于对当前检测时段结束后的训练集训练得到的目标阈值和当前检测时段结束后的训练集,根据当前检测时段对应的测试集中的IO数据对硬盘进行慢盘检测。需要说明的是,当训练集中的IO数据未达到最大个数阈值时,不同检测时段中的训练集可能不同,当某个检测时段对应的训练集更新时,需要对训练集重新执行训练过程,以确定新的目标阈值;当训练集中的IO数据达到最大个数阈值时,则后续检测时段中可以基于该训练集以及对该训练集训练得到的目标阈值,根据每个检测时段对应的测试集中的IO数据对硬盘进行慢盘检测。
需要说明的是,由于在不同时刻获取的硬盘的IO数据中,可能IO值相同而时延值不同,时延值的波动较大,当IO值处于正常范围内,时延值可能大于固定阈值,因此通过比较固定阈值与时延值的大小以进行慢盘检测的方法精确度较低;本申请实施例中,根据x次训练过程所得到的x个累积分布函数确定目标阈值,该累积分布函数是综合IO值的特征和时延值的大小确定的,采用本申请实施例提供的慢盘检测方法对硬盘进行慢盘检测,精确率可达100%且慢盘的召回率能够达到95%以上,极大地提高了慢盘检测的准确性。其中,慢盘的召回率指确定为慢盘的硬盘数量与实际为慢盘的硬盘数量的比值。
进一步的,由于I层的硬件故障和/或P层的IO数据冲击都会引发await时延增大进而导致慢盘,以下步骤105至步骤107提供了导致硬盘成为慢盘的原因的进一步确认过程。
在步骤105中,在确定硬盘为慢盘后,检测硬盘的IO数据中的IO值是否符合指定条件。
可选的,在确定硬盘为慢盘后,分别检测硬盘每秒完成读IO设备次数、每秒完成写IO设备次数、每秒完成读k字节数和每秒完成写k字节数是否达到对应的最低阈值。需要说明的是,本申请实施例对检测硬盘每秒完成读IO设备次数、每秒完成写IO设备次数、每秒完成读k字节数和每秒完成写k字节数是否达到对应的最低阈值的先后顺序不做限定。
在步骤106中,当硬盘的IO数据中的IO值符合指定条件时,确定I层导致硬盘成为慢盘。
可选的,当硬盘每秒完成读IO设备次数、每秒完成写IO设备次数、每秒完成读k字节数和每秒完成写k字节数均达到对应的最低阈值时,确定P层的IO数据的读写是正常的,则可以确定是I层的硬件和/或环境问题导致硬盘成为慢盘。
在步骤107中,当硬盘的IO数据中的IO值不符合指定条件时,至少确定P层导致硬盘成为慢盘。
可选的,当硬盘每秒完成读IO设备次数、每秒完成写IO设备次数、每秒完成读k字节数和每秒完成写k字节数中的至少一者未达到对应的最低阈值时,确定P层的IO数据的读写异常,至少能够确定P层导致硬盘成为慢盘。
需要说明的是,本申请实施例提供的慢盘检测方法,通过检测IO数据中的IO值是否符合指定条件,确定I层或P层导致硬盘成为慢盘,无需人工干预即可确定导致慢盘的原因来自I层还是P层,便于维护人员针对性地进行修复和维护,进而可以提高慢盘修复效率。
可选的,本申请实施例提供的慢盘检测方法还可以用于检测其他异常点问题,例如慢中央处理器(Central Processing Unit,CPU)和慢交换机等,本申请实施例对此不做限定。
需要说明的是,本申请实施例提供的慢盘检测方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
综上所述,本申请实施例提供的慢盘检测方法,根据x次训练过程所得到的x个累积分布函数确定目标阈值,由于累积分布函数是综合IO值的特征和时延值的大小确定的,减小了由于相同IO值对应的时延值的波动较大导致的慢盘检测的精确度较低的问题,提高了慢盘检测的准确性;进一步的,在确定硬盘为慢盘后,通过检测IO数据中的IO值是否符合指定条件,确定I层或P层导致硬盘成为慢盘,无需人工干预即可确定导致慢盘的原因来自I层还是P层,便于维护人员针对性地进行修复和维护,进而可以提高慢盘修复效率;另外,本申请实施例还提供了一种根据每个检测时段内硬盘的IO数据更新训练集中的IO数据,以确定每个检测时段对应的训练集的方法,与采用常规的无监督学习方式根据检测时段内的硬盘的IO数据建立训练集相比,在保证训练集中IO数据的精度的同时,减少了训练集中IO数据的数量,进而缩短了训练过程所耗费的时间,提高了慢盘检测效率。
图6是本申请实施例提供的一种慢盘检测装置的结构示意图,如图6所示,装置20包括:
获取模块201,用于获取训练集,训练集中包括硬盘的多个输入输出IO数据,每个IO数据包括IO值和时延值。
训练模块202,用于对训练集重复执行x次训练过程直至满足训练停止条件,x≥1,其中,训练过程包括:
从训练集获取m个IO数据,m≥2;对于m个IO数据中的每个IO数据,从第一搜索空间获取与IO数据中的目标IO值距离最近的k个IO值,第一搜索空间由训练集中除m个IO数据以外的IO数据中的IO值构成,k≥2;基于该目标IO值对应的目标时延值以及k个IO值对应的k个时延值,确定IO数据对应的目标统计值,目标统计值表征k个时延值中大于目标时延值的时延值个数和k个时延值中小于目标时延值的时延值个数中的一种;根据m个IO数据对应的m个目标统计值,确定m个IO数据对应的累积分布函数。
第一确定模块203,用于基于x次训练过程所得到的x个累积分布函数,确定目标阈值。
第一检测模块204,用于基于目标阈值和训练集,根据硬盘的实时IO数据对硬盘进行慢盘检测。
综上所述,本申请实施例提供的慢盘检测装置,在通过训练模块执行x次训练过程得到x个累积分布函数之后,通过第一确定模块根据该x次训练过程所得到的x个累积分布函数确定目标阈值,由于累积分布函数是综合IO值的特征和时延值的大小确定的,减小了由于相同IO值对应的时延值的波动较大导致的慢盘检测的精确度较低的问题,因此提高了慢盘检测的准确性。
可选的,确定模块,用于:
根据x个累积分布函数,确定x条累积分布曲线;计算每条累积分布曲线的包络面面积;基于目标特征值与硬盘的状态之间的关系,确定目标阈值,该目标特征值与累积分布曲线的包络面面积相关。
可选的,如图7所示,第一检测模块204,包括:
第一获取子模块2041,用于获取检测时段内硬盘的至少一个实时IO数据组,每个实时IO数据组包括m个实时IO数据,每个实时IO数据包括实时IO值和实时时延值。
第一检测子模块2042,用于对每个实时IO数据组执行检测过程,其中,检测过程包括:
对于每个实时IO数据,从第二搜索空间获取与实时IO数据中的实时IO值距离最近的z个IO值,第二搜索空间由训练集中所有IO数据中的IO值构成,基于实时IO值对应的实时时延值以及z个IO值对应的z个时延值,确定该实时IO数据对应的实时统计值,z=k;根据实时IO数据组中的m个实时IO数据对应的m个实时统计值,确定实时IO数据组对应的实时累积分布函数。
第二检测子模块2043,用于基于目标阈值以及至少一个实时IO数据组对应的至少一个实时累积分布函数,检测该检测时段内硬盘是否为慢盘。
其中,当目标统计值表征k个时延值中大于目标时延值的时延值个数,实时统计值表征z个时延值中大于实时时延值的时延值个数;当目标统计值表征k个时延值中小于目标时延值的时延值个数,实时统计值表征z个时延值中小于实时时延值的时延值个数。
可选的,第二检测子模块,用于:
根据至少一个实时累积分布函数,确定至少一条实时累积分布曲线;计算每条实时累积分布曲线的包络面面积;当每个实时特征值与目标阈值的关系均满足指定关系条件时,确定硬盘在检测时段内不是慢盘,实时特征值与实时累积分布曲线的包络面面积相关,且每个实时特征值分别对应一条实时累积分布曲线。
可选的,第一获取子模块,用于:
获取检测时段内硬盘的多个实时IO数据组。
相应的,第二检测子模块,还用于:
当存在指定实时特征值与目标阈值的关系不满足指定关系条件时,检测指定实时特征值的个数是否达到数量阈值;当指定实时特征值的个数达到数量阈值时,确定硬盘在该检测时段内为慢盘。
可选的,第一获取子模块,用于:
获取检测时段内硬盘的多个IO数据;从多个IO数据中,每隔p个IO数据截取m个连续的IO数据作为一个实时IO数据组,p≥1。
可选的,如图8所示,获取模块201,包括:
建立子模块2011,用于建立训练集。
划分子模块2012,用于对于每个检测时段,将获取的硬盘的IO数据划分至训练集或对应的测试集,每个检测时段对应一个测试集,测试集根据每个检测时段内获取的硬盘的IO数据建立。
第二获取子模块2013,用于获取当前检测时段结束后的训练集。
其中,划分子模块,用于:
在获取硬盘的任一IO数据后,当训练集中IO数据的个数未达到基础个数阈值时,将该任一IO数据划分至训练集,得到更新后的训练集;当训练集中IO数据的个数达到基础个数阈值时,从训练集中获取该任一IO数据的n个最近邻IO数据,n≥2;分别计算每个最近邻IO数据与该任一IO数据之间的距离;当每个最近邻IO数据与该任一IO数据之间的距离均不大于指定距离阈值时,将该任一IO数据划分至测试集,得到更新后的测试集;当存在某个最近邻IO数据与该任一IO数据之间的距离大于指定距离阈值时,将该任一IO数据划分至训练集,得到更新后的训练集。
可选的,划分子模块,用于:
当存在某个最近邻IO数据与任一IO数据之间的距离大于指定距离阈值,且训练集中IO数据的个数未达到最大个数阈值时,将任一IO数据划分至训练集,得到更新后的训练集。
可选的,第一检测模块,用于:
获取当前检测时段对应的测试集;基于目标阈值和当前检测时段结束后的训练集,根据当前检测时段对应的测试集中的IO数据对硬盘进行慢盘检测。
可选的,如图9所示,装置20还包括:
第二检测模块205,用于在确定硬盘为慢盘后,检测硬盘的IO数据中的IO值是否符合指定条件。
第二确定模块206,用于当硬盘的IO数据中的IO值符合指定条件时,确定基础设施即服务I层导致硬盘成为慢盘。
第三确定模块207,用于当硬盘的IO数据中的IO值不符合指定条件时,至少确定平台即服务P层导致硬盘成为慢盘。
可选的,如图10所示,装置20还包括:
剔除模块208,用于剔除训练集中的负样本IO数据。
可选的,训练停止条件包括训练过程的执行次数达到预设次数阈值和训练结果精度达到预设精度中的至少一种。
综上所述,本申请实施例提供的慢盘检测装置,在通过训练模块执行x次训练过程得到x个累积分布函数之后,通过第一确定模块根据该x次训练过程所得到的x个累积分布函数确定目标阈值,由于累积分布函数是综合IO值的特征和时延值的大小确定的,减小了由于相同IO值对应的时延值的波动较大导致的慢盘检测的精确度较低的问题,因此提高了慢盘检测的准确性。
本申请实施例提供了一种慢盘检测装置,如图11所示,该装置30包括:
输入输出组件301;
处理器302,用于通过接口组件303与输入输出组件301耦合,从输入输出组件301获取指令并执行指令,实现如方法侧实施例所述的慢盘检测方法。
可选的,装置30还包括:存储器304;处理器302用于通过接口组件303与存储器304耦合,读取存储器304中的指令并执行指令。
其中,输入输出组件301包括通信芯片和通信接口中的至少一种。
处理器302包括一个或者一个以上处理核心,处理器302通过运行计算机程序以及单元,从而执行各种功能应用以及数据处理。
存储器304可用于存储计算机程序以及单元。具体的,存储器可存储操作系统和至少一个功能所需的应用程序单元。操作系统可以是实时操作系统(Real Time eXecutive,RTX)、LINUX、UNIX、WINDOWS或OS X之类的操作系统。
输入输出组件301可以包括多个输入输出接口,输入输出接口用于与其它存储设备或网络设备进行通信。
存储器304与输入输出组件301分别通过接口组件303与处理器302连接。
本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令被处理器执行时,实现如方法侧实施例所述的慢盘检测方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (29)
1.一种慢盘检测方法,其特征在于,所述方法包括:
获取训练集,所述训练集中包括硬盘的多个输入输出IO数据,每个所述IO数据包括IO值和时延值;
对所述训练集重复执行x次训练过程直至满足训练停止条件,x≥1,其中,所述训练过程包括:
从所述训练集获取m个IO数据,m≥2,
对于所述m个IO数据中的每个IO数据,从第一搜索空间获取与所述IO数据中的目标IO值距离最近的k个IO值,所述第一搜索空间由所述训练集中除所述m个IO数据以外的IO数据中的IO值构成,k≥2,基于所述目标IO值对应的目标时延值以及所述k个IO值对应的k个时延值,确定所述IO数据对应的目标统计值,所述目标统计值表征所述k个时延值中大于所述目标时延值的时延值个数和所述k个时延值中小于所述目标时延值的时延值个数中的一种,
根据所述m个IO数据对应的m个目标统计值,确定所述m个IO数据对应的累积分布函数;
基于所述x次训练过程所得到的x个累积分布函数,确定目标阈值;
基于所述目标阈值和所述训练集,根据所述硬盘的实时IO数据对所述硬盘进行慢盘检测。
2.根据权利要求1所述的方法,其特征在于,所述基于所述x次训练过程所得到的x个累积分布函数,确定目标阈值,包括:
根据所述x个累积分布函数,确定x条累积分布曲线;
计算每条所述累积分布曲线的包络面面积;
基于目标特征值与所述硬盘的状态之间的关系,确定所述目标阈值,所述目标特征值与所述累积分布曲线的包络面面积相关。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述目标阈值和所述训练集,根据所述硬盘的实时IO数据对所述硬盘进行慢盘检测,包括:
获取检测时段内所述硬盘的至少一个实时IO数据组,每个所述实时IO数据组包括m个实时IO数据,每个所述实时IO数据包括实时IO值和实时时延值;
对每个所述实时IO数据组执行检测过程,其中,所述检测过程包括:
对于每个所述实时IO数据,从第二搜索空间获取与所述实时IO数据中的实时IO值距离最近的z个IO值,所述第二搜索空间由所述训练集中所有IO数据中的IO值构成,基于所述实时IO值对应的实时时延值以及所述z个IO值对应的z个时延值,确定所述实时IO数据对应的实时统计值,z=k,
根据所述实时IO数据组中的m个实时IO数据对应的m个实时统计值,确定所述实时IO数据组对应的实时累积分布函数;
基于所述目标阈值以及所述至少一个实时IO数据组对应的至少一个实时累积分布函数,检测所述检测时段内所述硬盘是否为慢盘;
其中,当所述目标统计值表征所述k个时延值中大于所述目标时延值的时延值个数,所述实时统计值表征所述z个时延值中大于所述实时时延值的时延值个数;当所述目标统计值表征所述k个时延值中小于所述目标时延值的时延值个数,所述实时统计值表征所述z个时延值中小于所述实时时延值的时延值个数。
4.根据权利要求3所述的方法,其特征在于,所述基于所述目标阈值以及所述至少一个实时IO数据组对应的至少一个实时累积分布函数,检测所述检测时段内所述硬盘是否为慢盘,包括:
根据所述至少一个实时累积分布函数,确定至少一条实时累积分布曲线;
计算每条所述实时累积分布曲线的包络面面积;
当每个实时特征值与所述目标阈值的关系均满足指定关系条件时,确定所述硬盘在所述检测时段内不是慢盘,所述实时特征值与所述实时累积分布曲线的包络面面积相关,且每个所述实时特征值分别对应一条所述实时累积分布曲线。
5.根据权利要求4所述的方法,其特征在于,所述获取检测时段内所述硬盘的至少一个实时IO数据组,包括:
获取所述检测时段内所述硬盘的多个实时IO数据组;
所述基于所述目标阈值以及所述至少一个实时IO数据组对应的至少一个实时累积分布函数,检测所述检测时段内所述硬盘是否为慢盘,还包括:
当存在指定实时特征值与所述目标阈值的关系不满足所述指定关系条件时,检测所述指定实时特征值的个数是否达到数量阈值;
当所述指定实时特征值的个数达到所述数量阈值时,确定所述硬盘在所述检测时段内为慢盘。
6.根据权利要求5所述的方法,其特征在于,所述获取所述检测时段内所述硬盘的多个实时IO数据组,包括:
获取所述检测时段内所述硬盘的多个IO数据;
从所述多个IO数据中,每隔p个IO数据截取m个连续的IO数据作为一个所述实时IO数据组,p≥1。
7.根据权利要求1至6任一所述的方法,其特征在于,所述获取训练集,包括:
建立训练集;
对于每个检测时段,将获取的所述硬盘的IO数据划分至所述训练集或对应的测试集,所述每个检测时段对应一个测试集,所述测试集根据所述每个检测时段内获取的所述硬盘的IO数据建立;
获取当前检测时段结束后的所述训练集。
8.根据权利要求7所述的方法,其特征在于,所述将获取的所述硬盘的IO数据划分至所述训练集或对应的测试集,包括:
在获取所述硬盘的任一IO数据后,当所述训练集中IO数据的个数未达到所述基础个数阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集;
当所述训练集中IO数据的个数达到所述基础个数阈值时,从所述训练集中获取所述任一IO数据的n个最近邻IO数据,n≥2;
分别计算每个所述最近邻IO数据与所述任一IO数据之间的距离;
当每个所述最近邻IO数据与所述任一IO数据之间的距离均不大于指定距离阈值时,将所述任一IO数据划分至所述测试集,得到更新后的测试集;
当存在某个所述最近邻IO数据与所述任一IO数据之间的距离大于所述指定距离阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集。
9.根据权利要求8所述的方法,其特征在于,所述当存在某个所述最近邻IO数据与所述任一IO数据之间的距离大于所述指定距离阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集,包括:
当存在某个所述最近邻IO数据与所述任一IO数据之间的距离大于所述指定距离阈值,且所述训练集中IO数据的个数未达到所述最大个数阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集。
10.根据权利要求7至9任一所述的方法,其特征在于,所述基于所述目标阈值和所述训练集,根据所述硬盘的实时IO数据对所述硬盘进行慢盘检测,包括:
获取所述当前检测时段对应的测试集;
基于所述目标阈值和所述当前检测时段结束后的所述训练集,根据所述当前检测时段对应的测试集中的IO数据对所述硬盘进行慢盘检测。
11.根据权利要求1至10任一所述的方法,其特征在于,所述方法还包括:
在确定所述硬盘为慢盘后,检测所述硬盘的IO数据中的IO值是否符合指定条件;
当所述硬盘的IO数据中的IO值符合指定条件时,确定基础设施即服务I层导致所述硬盘成为慢盘;
当所述硬盘的IO数据中的IO值不符合指定条件时,至少确定平台即服务P层导致所述硬盘成为慢盘。
12.根据权利要求1至11任一所述的方法,其特征在于,在所述获取训练集之后,所述方法还包括:
剔除所述训练集中的负样本IO数据。
13.根据权利要求1至12任一所述的方法,其特征在于,
所述训练停止条件包括所述训练过程的执行次数达到预设次数阈值和训练结果精度达到预设精度中的至少一种。
14.一种慢盘检测装置,其特征在于,所述装置包括:
获取模块,用于获取训练集,所述训练集中包括硬盘的多个输入输出IO数据,每个所述IO数据包括IO值和时延值;
训练模块,用于对所述训练集重复执行x次训练过程直至满足训练停止条件,x≥1,其中,所述训练过程包括:
从所述训练集获取m个IO数据,m≥2,
对于所述m个IO数据中的每个IO数据,从第一搜索空间获取与所述IO数据中的目标IO值距离最近的k个IO值,所述第一搜索空间由所述训练集中除所述m个IO数据以外的IO数据中的IO值构成,k≥2,基于所述目标IO值对应的目标时延值以及所述k个IO值对应的k个时延值,确定所述IO数据对应的目标统计值,所述目标统计值表征所述k个时延值中大于所述目标时延值的时延值个数和所述k个时延值中小于所述目标时延值的时延值个数中的一种,
根据所述m个IO数据对应的m个目标统计值,确定所述m个IO数据对应的累积分布函数;
第一确定模块,用于基于所述x次训练过程所得到的x个累积分布函数,确定目标阈值;
第一检测模块,用于基于所述目标阈值和所述训练集,根据所述硬盘的实时IO数据对所述硬盘进行慢盘检测。
15.根据权利要求14所述的装置,其特征在于,所述确定模块,用于:
根据所述x个累积分布函数,确定x条累积分布曲线;
计算每条所述累积分布曲线的包络面面积;
基于目标特征值与所述硬盘的状态之间的关系,确定所述目标阈值,所述目标特征值与所述累积分布曲线的包络面面积相关。
16.根据权利要求14或15所述的装置,其特征在于,所述第一检测模块,包括:
第一获取子模块,用于获取检测时段内所述硬盘的至少一个实时IO数据组,每个所述实时IO数据组包括m个实时IO数据,每个所述实时IO数据包括实时IO值和实时时延值;
第一检测子模块,用于对每个所述实时IO数据组执行检测过程,其中,所述检测过程包括:
对于每个所述实时IO数据,从第二搜索空间获取与所述实时IO数据中的实时IO值距离最近的z个IO值,所述第二搜索空间由所述训练集中所有IO数据中的IO值构成,基于所述实时IO值对应的实时时延值以及所述z个IO值对应的z个时延值,确定所述实时IO数据对应的实时统计值,z=k,
根据所述实时IO数据组中的m个实时IO数据对应的m个实时统计值,确定所述实时IO数据组对应的实时累积分布函数;
第二检测子模块,用于基于所述目标阈值以及所述至少一个实时IO数据组对应的至少一个实时累积分布函数,检测所述检测时段内所述硬盘是否为慢盘;
其中,当所述目标统计值表征所述k个时延值中大于所述目标时延值的时延值个数,所述实时统计值表征所述z个时延值中大于所述实时时延值的时延值个数;当所述目标统计值表征所述k个时延值中小于所述目标时延值的时延值个数,所述实时统计值表征所述z个时延值中小于所述实时时延值的时延值个数。
17.根据权利要求16所述的装置,其特征在于,所述第二检测子模块,用于:
根据所述至少一个实时累积分布函数,确定至少一条实时累积分布曲线;
计算每条所述实时累积分布曲线的包络面面积;
当每个实时特征值与所述目标阈值的关系均满足指定关系条件时,确定所述硬盘在所述检测时段内不是慢盘,所述实时特征值与所述实时累积分布曲线的包络面面积相关,且每个所述实时特征值分别对应一条所述实时累积分布曲线。
18.根据权利要求17所述的装置,其特征在于,所述第一获取子模块,用于:
获取所述检测时段内所述硬盘的多个实时IO数据组;
所述第二检测子模块,还用于:
当存在指定实时特征值与所述目标阈值的关系不满足所述指定关系条件时,检测所述指定实时特征值的个数是否达到数量阈值;
当所述指定实时特征值的个数达到所述数量阈值时,确定所述硬盘在所述检测时段内为慢盘。
19.根据权利要求18所述的装置,其特征在于,所述第一获取子模块,用于:
获取所述检测时段内所述硬盘的多个IO数据;
从所述多个IO数据中,每隔p个IO数据截取m个连续的IO数据作为一个所述实时IO数据组,p≥1。
20.根据权利要求14至19任一所述的装置,其特征在于,所述获取模块,包括:
建立子模块,用于建立训练集;
划分子模块,用于对于每个检测时段,将获取的所述硬盘的IO数据划分至所述训练集或对应的测试集,所述每个检测时段对应一个测试集,所述测试集根据所述每个检测时段内获取的所述硬盘的IO数据建立;
第二获取子模块,用于获取当前检测时段结束后的所述训练集。
21.根据权利要求20所述的装置,其特征在于,所述划分子模块,用于:
在获取所述硬盘的任一IO数据后,当所述训练集中IO数据的个数未达到所述基础个数阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集;
当所述训练集中IO数据的个数达到所述基础个数阈值时,从所述训练集中获取所述任一IO数据的n个最近邻IO数据,n≥2;
分别计算每个所述最近邻IO数据与所述任一IO数据之间的距离;
当每个所述最近邻IO数据与所述任一IO数据之间的距离均不大于指定距离阈值时,将所述任一IO数据划分至所述测试集,得到更新后的测试集;
当存在某个所述最近邻IO数据与所述任一IO数据之间的距离大于所述指定距离阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集。
22.根据权利要求21所述的装置,其特征在于,所述划分子模块,用于:
当存在某个所述最近邻IO数据与所述任一IO数据之间的距离大于所述指定距离阈值,且所述训练集中IO数据的个数未达到所述最大个数阈值时,将所述任一IO数据划分至所述训练集,得到更新后的训练集。
23.根据权利要求20至22任一所述的装置,其特征在于,所述第一检测模块,用于:
获取所述当前检测时段对应的测试集;
基于所述目标阈值和所述当前检测时段结束后的所述训练集,根据所述当前检测时段对应的测试集中的IO数据对所述硬盘进行慢盘检测。
24.根据权利要求14至23任一所述的装置,其特征在于,所述装置还包括:
第二检测模块,用于在确定所述硬盘为慢盘后,检测所述硬盘的IO数据中的IO值是否符合指定条件;
第二确定模块,用于当所述硬盘的IO数据中的IO值符合指定条件时,确定基础设施即服务I层导致所述硬盘成为慢盘;
第三确定模块,用于当所述硬盘的IO数据中的IO值不符合指定条件时,至少确定平台即服务P层导致所述硬盘成为慢盘。
25.根据权利要求14至24任一所述的装置,其特征在于,所述装置还包括:
剔除模块,用于剔除所述训练集中的负样本IO数据。
26.根据权利要求14至25任一所述的装置,其特征在于,
所述训练停止条件包括所述训练过程的执行次数达到预设次数阈值和训练结果精度达到预设精度中的至少一种。
27.一种慢盘检测装置,其特征在于,包括:
输入输出组件;
处理器,用于通过接口组件与所述输入输出组件耦合,从所述输入输出组件获取指令并执行所述指令,实现如权利要求1至13任一所述的慢盘检测方法。
28.根据权利要求27所述的装置,其特征在于,所述装置还包括:
存储器;
所述处理器用于通过所述接口组件与所述存储器耦合,读取所述存储器中的指令并执行所述指令。
29.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令被处理器执行时,实现如权利要求1至13任一所述的慢盘检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810980255.7A CN110865896B (zh) | 2018-08-27 | 2018-08-27 | 慢盘检测方法及装置、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810980255.7A CN110865896B (zh) | 2018-08-27 | 2018-08-27 | 慢盘检测方法及装置、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110865896A true CN110865896A (zh) | 2020-03-06 |
CN110865896B CN110865896B (zh) | 2021-03-23 |
Family
ID=69650973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810980255.7A Active CN110865896B (zh) | 2018-08-27 | 2018-08-27 | 慢盘检测方法及装置、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110865896B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109407984A (zh) * | 2018-10-11 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种存储系统性能监测方法、装置和设备 |
CN112416639A (zh) * | 2020-11-16 | 2021-02-26 | 新华三技术有限公司成都分公司 | 一种慢盘检测方法、装置、设备及存储介质 |
CN118260144A (zh) * | 2024-05-31 | 2024-06-28 | 济南浪潮数据技术有限公司 | 一种硬盘测试方法、设备、存储介质以及计算机程序产品 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407052A (zh) * | 2015-07-31 | 2017-02-15 | 华为技术有限公司 | 一种检测磁盘的方法及装置 |
CN106407051A (zh) * | 2015-07-31 | 2017-02-15 | 华为技术有限公司 | 一种检测慢盘的方法及装置 |
US20170149673A1 (en) * | 2015-11-19 | 2017-05-25 | Viasat, Inc. | Enhancing capacity of a direct communication link |
CN106897178A (zh) * | 2017-02-21 | 2017-06-27 | 曲阜师范大学 | 一种基于极限学习机的慢盘检测方法及系统 |
CN107636621A (zh) * | 2015-05-26 | 2018-01-26 | 微软技术许可有限责任公司 | 检测数据中心中的异常资源使用 |
CN107832202A (zh) * | 2017-11-06 | 2018-03-23 | 郑州云海信息技术有限公司 | 一种检测硬盘的方法、装置及计算机可读存储介质 |
-
2018
- 2018-08-27 CN CN201810980255.7A patent/CN110865896B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107636621A (zh) * | 2015-05-26 | 2018-01-26 | 微软技术许可有限责任公司 | 检测数据中心中的异常资源使用 |
CN106407052A (zh) * | 2015-07-31 | 2017-02-15 | 华为技术有限公司 | 一种检测磁盘的方法及装置 |
CN106407051A (zh) * | 2015-07-31 | 2017-02-15 | 华为技术有限公司 | 一种检测慢盘的方法及装置 |
EP3318975A1 (en) * | 2015-07-31 | 2018-05-09 | Huawei Technologies Co., Ltd. | Method and device for detecting slow disk |
US20180157438A1 (en) * | 2015-07-31 | 2018-06-07 | Huawei Technologies Co., Ltd. | Slow-disk detection method and apparatus |
US20170149673A1 (en) * | 2015-11-19 | 2017-05-25 | Viasat, Inc. | Enhancing capacity of a direct communication link |
CN106897178A (zh) * | 2017-02-21 | 2017-06-27 | 曲阜师范大学 | 一种基于极限学习机的慢盘检测方法及系统 |
CN107832202A (zh) * | 2017-11-06 | 2018-03-23 | 郑州云海信息技术有限公司 | 一种检测硬盘的方法、装置及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
WENZHAO ZHANG: "Exploring memory hierarchy and network topology for runtime AMR data sharing across scientific applications", 《2016 IEEE INTERNATIONAL CONFERENCE ON BIG DATA (BIG DATA)》 * |
胡明德: "磁盘阵列可靠性研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109407984A (zh) * | 2018-10-11 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种存储系统性能监测方法、装置和设备 |
CN109407984B (zh) * | 2018-10-11 | 2021-12-17 | 郑州云海信息技术有限公司 | 一种存储系统性能监测方法、装置和设备 |
CN112416639A (zh) * | 2020-11-16 | 2021-02-26 | 新华三技术有限公司成都分公司 | 一种慢盘检测方法、装置、设备及存储介质 |
CN118260144A (zh) * | 2024-05-31 | 2024-06-28 | 济南浪潮数据技术有限公司 | 一种硬盘测试方法、设备、存储介质以及计算机程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN110865896B (zh) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110865896B (zh) | 慢盘检测方法及装置、计算机可读存储介质 | |
US10855791B2 (en) | Clustered storage system path quiescence analysis | |
WO2017012392A1 (zh) | 一种磁盘检测的方法和装置 | |
US9454433B2 (en) | Adaptive rebuild scheduling scheme | |
US9513835B2 (en) | Impact-based migration scheduling from a first tier at a source to a second tier at a destination | |
US11030038B2 (en) | Fault prediction and detection using time-based distributed data | |
WO2019196199A1 (zh) | 一种磁盘坏道的处理方法、装置及计算机存储介质 | |
CN110737924B (zh) | 一种数据保护的方法和设备 | |
US11734103B2 (en) | Behavior-driven die management on solid-state drives | |
CN115269108A (zh) | 一种数据处理方法、装置及设备 | |
US20210390062A1 (en) | Management method of cache files in storage space and recording device for storing cache files | |
WO2024139333A1 (zh) | 存储集群运行状态的预测方法及装置 | |
US10725710B2 (en) | Hierarchical storage device, hierarchical storage control device, computer-readable recording medium having hierarchical storage control program recorded thereon, and hierarchical storage control method | |
CN102546652B (zh) | 一种服务器负载平衡系统及方法 | |
US11809733B2 (en) | Systems and methods for object migration in storage devices | |
CN110781950A (zh) | 一种报文处理方法及装置 | |
US20220253570A1 (en) | Performance impact detection using queuing curve analysis | |
US11561839B2 (en) | Allocation of resources for a plurality of hosts | |
CN114741218A (zh) | 操作系统的异常指标提取方法、装置、设备、系统及介质 | |
CN107273198B (zh) | 一种ssd控制芯片的中断控制方法、装置及ssd设备 | |
CN111324668A (zh) | 数据库数据同步处理方法、装置及存储介质 | |
CN111930781B (zh) | 对缓存数据库的数据请求的处理方法和装置 | |
CN111177022B (zh) | 一种特征提取方法、装置、设备及存储介质 | |
CN114115719B (zh) | 基于io模式识别的io批量处理方法、装置及存储介质 | |
US20230069336A1 (en) | Method of optimizing schedule for storage resource, server, and computer readable storage medium applying method |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |