CN115098314A - 慢盘检测方法、装置、电子设备和可读存储介质 - Google Patents

慢盘检测方法、装置、电子设备和可读存储介质 Download PDF

Info

Publication number
CN115098314A
CN115098314A CN202210844268.8A CN202210844268A CN115098314A CN 115098314 A CN115098314 A CN 115098314A CN 202210844268 A CN202210844268 A CN 202210844268A CN 115098314 A CN115098314 A CN 115098314A
Authority
CN
China
Prior art keywords
disk
disks
slow
delay data
region model
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
Application number
CN202210844268.8A
Other languages
English (en)
Inventor
张伟益
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Unisinsight Technology Co Ltd
Original Assignee
Chongqing Unisinsight Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chongqing Unisinsight Technology Co Ltd filed Critical Chongqing Unisinsight Technology Co Ltd
Priority to CN202210844268.8A priority Critical patent/CN115098314A/zh
Publication of CN115098314A publication Critical patent/CN115098314A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test 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

本申请提供一种慢盘检测方法、装置、电子设备和可读存储介质,在采集待检测磁盘在采样周期内的多个IO延时数据后,计算多个IO延时数据的均值,并将均值带入到预先得到的拒绝域模型中,而该拒绝域模型为预先基于集群中多个正常磁盘的IO延时数据所构建得到。通过检测带入均值后拒绝域模型是否满足预设要求,在满足预设要求时,判定待检测磁盘为慢盘。本方案,预先基于集群中正常磁盘的IO延时数据以构建拒绝域模型,以用于进行慢盘的检测。判断的依据是符合集群的实际应用场景的,避免了现有技术中通过经验值设置参数进行判断所存在的不适应于实际应用场景的缺陷。

Description

慢盘检测方法、装置、电子设备和可读存储介质
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种慢盘检测方法、装置、电子设备和可读存储介质。
背景技术
在分布式集群中,利用磁盘作为数据存储单元,实现数据的写入和/或读取。磁盘由于退化或环境问题,可能导致其数据的输入输出(IO,Input/Output)响应时间变长,即IO延时增长,从而成为慢盘。若磁盘成为慢盘,由于其较长的输入输出响应市场,将导致集群整体的读写响应变慢,因此,有必要及时检测出集群中的慢盘,进而采取一定的应对策略。
在现有的慢盘检测技术中,一般是采用监听一定时长内,磁盘出现超时响应的次数,在次数大于一定阈值时即判定为慢盘。或者也有根据节点的实际负载动态调整响应时间和次数以提高慢盘判断的准确度的方式。但是,现有技术中的检测方式均需设置大量的参数,而这些参数都是经验值,缺乏科学的理论依据,可能并不适应于实际的应用场景,导致检测判断准确度较低。
发明内容
本申请的目的包括,例如,提供了一种慢盘检测方法、装置、电子设备和可读存储介质,其能够依据实际应用场景进行慢盘检测,提高检测科学性。
本申请的实施例可以这样实现:
第一方面,本申请提供一种慢盘检测方法,应用于包括多个节点的分布式集群中的任一节点,各所述节点包括多个磁盘,所述方法包括:
采集待检测磁盘在采样周期内的多个IO延时数据;
计算所述多个IO延时数据的均值,并将所述均值带入到预先得到的拒绝域模型,所述拒绝域模型为预先基于所述分布式集群中多个正常磁盘的IO延时数据所构建得到;
检测带入所述均值后所述拒绝域模型是否满足预设要求,若满足预设要求,则判定所述待检测磁盘为慢盘。
在可选的实施方式中,所述方法还包括预先得到所述拒绝域模型的步骤,该步骤包括:
采集所述分布式集群中多个正常磁盘的IO延时数据;
基于正态分布理论,并根据所述多个正常磁盘的IO延时数据构建得到在设定误判率下的拒绝域模型。
在可选的实施方式中,所述基于正态分布理论,并根据所述多个正常磁盘的IO延时数据构建得到在设定误判率下的拒绝域模型的步骤,包括:
计算所述多个正常磁盘的IO延时数据的整体均值和整体标准差;
基于正态分布理论,并根据所述整体均值和整体标准差构建得到在设定误判率下的拒绝域模型。
在可选的实施方式中,所述根据所述整体均值和整体标准差构建得到在设定误判率下的拒绝域模型的步骤,包括:
根据所述整体均值和整体标准差构建得到在设定误判率下的初步拒绝域模型;
在所述初步拒绝域模型中加入修正指数;
分别将每个正常磁盘的IO延时数据带入至添加有修正指数的初步拒绝域模型中获得所述修正指数的值,以得到带有修正指数的拒绝域模型,其中,所述拒绝域模型在每个正常磁盘的IO延时数据带入时均满足预设要求。
在可选的实施方式中,所述分别将每个正常磁盘的IO延时数据带入至添加有修正指数的初步拒绝域模型中获得所述修正指数的值的步骤,包括:
针对每个正常磁盘,将所述正常磁盘的多个IO延时数据划分为多组,每组IO延时数据的数量为设定数量;
分别将每组IO延时数据带入至添加有修正指数的初步拒绝域模型中以获得所述修正指数的值。
在可选的实施方式中,所述方法还包括:
针对判定为慢盘的磁盘,根据所述磁盘被判定为慢盘的次数,对所述磁盘执行处理操作。
在可选的实施方式中,所述根据所述磁盘被判定为慢盘的次数,对所述磁盘执行处理操作的步骤,包括:
若所述磁盘为第一次被判定为慢盘,则降低所述磁盘的读写流量;
若所述磁盘并非第一次被判定为慢盘,则根据当前分布式集群中被判定为慢盘的数量以及所述分布式集群的纠删配比中允许同时故障的磁盘的数量,对所述磁盘执行处理操作。
在可选的实施方式中,所述根据当前分布式集群中被判定为慢盘的数量以及所述分布式集群的纠删配比中允许同时故障的磁盘的数量,对所述磁盘执行处理操作的步骤,包括:
若当前分布式集群中被判定为慢盘的数量小于或等于所述分布式集群的纠删配比中允许同时故障的磁盘的数量,则关闭所述磁盘的读写流量,并将所述磁盘上的数据恢复至所述分布式集群中的其他磁盘上;
若当前分布式集群中判定为慢盘的数量大于所述分布式集群的纠删配比中允许同时故障的磁盘的数量,则关闭所述磁盘的写入流量。
第二方面,本申请提供一种慢盘检测装置,应用于包括多个节点的分布式集群中的任一节点,各所述节点包括多个磁盘,所述装置包括:
采集模块,用于采集待检测磁盘在采样周期内的多个IO延时数据;
计算模块,用于计算所述多个IO延时数据的均值,并将所述均值带入到预先得到的拒绝域模型,所述拒绝域模型为预先基于所述分布式集群中多个正常磁盘的IO延时数据所构建得到;
判定模块,用于检测带入所述均值后所述拒绝域模型是否满足预设要求,若满足预设要求,则判定所述待检测磁盘为慢盘。
第三方面,本申请提供一种电子设备,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当电子设备运行时,处理器执行所述机器可执行指令,以执行前述实施方式中任意一项所述的方法步骤。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有机器可执行指令,所述机器可执行指令被执行时实现前述实施方式中任意一项所述的方法步骤。
本申请实施例的有益效果包括,例如:
本申请提供一种慢盘检测方法、装置、电子设备和可读存储介质,在采集待检测磁盘在采样周期内的多个IO延时数据后,计算多个IO延时数据的均值,并将均值带入到预先得到的拒绝域模型中,而该拒绝域模型为预先基于集群中多个正常磁盘的IO延时数据所构建得到。通过检测带入均值后拒绝域模型是否满足预设要求,在满足预设要求时,判定待检测磁盘为慢盘。本方案,预先基于集群中正常磁盘的IO延时数据以构建拒绝域模型,以用于进行慢盘的检测。判断的依据是符合集群的实际应用场景的,避免了现有技术中通过经验值设置参数进行判断所存在的不适应于实际应用场景的缺陷。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的分布式集群的架构示意图;
图2为本申请实施例提供的慢盘检测方法的流程图;
图3为本申请提供的慢盘检测方法中,构建方法的流程图;
图4为图3中步骤S201包含的子步骤的流程图;
图5为图4中步骤S2012包含的子步骤的流程图;
图6为本申请实施例提供的慢盘检测方法的另一流程图;
图7为本申请实施例提供的电子设备的结构框图;
图8为本申请实施例提供的慢盘检测装置的功能模块框图。
图标:110-存储介质;120-处理器;130-慢盘检测装置;131-采集模块;132-计算模块;133-判定模块;140-通信接口。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。
请参阅图1,为本申请实施例提供的分布式集群的架构示意图,该分布式集群中包括多个节点,多个节点中包括数据节点和管理节点。本实施例中,各所述节点可以是计算机、服务器等设备。其中,各个数据节点包括多个磁盘,磁盘可用于实现数据存储。
管理节点可以包括主管理节点和多个备管理节点,主管理节点可将数据、信息同步至备管理节点,以实现数据、信息的备用。
请参阅图2,为本申请实施例提供的慢盘检测方法的流程图,该慢盘检测方法有关的流程所定义的方法步骤可以由上述分布式集群中的任一节点予以实现。下面将对图2所示的具体流程进行详细阐述。
S101,采集待检测磁盘在采样周期内的多个IO延时数据。
S102,计算所述多个IO延时数据的均值,并将所述均值带入到预先得到的拒绝域模型,所述拒绝域模型为预先基于所述分布式集群中多个正常磁盘的IO延时数据所构建得到。
S103,检测带入所述均值后所述拒绝域模型是否满足预设要求,若满足预设要求,则执行以下步骤S104,若不满足预设要求,则执行以下步骤S105。
S104,判定所述待检测磁盘为慢盘。
S105,判定所述待检测磁盘为正常磁盘。
本实施例中,待检测磁盘可为分布式集群中的任意磁盘,其中,每个节点上可具有一个采样模块,采样模块可为节点上的每块磁盘分配一个唯一的DISK-ID标识。采样周期的时长可根据需求进行设定,采样模块可记录每个DISK-ID的磁盘在采样周期内的采样数据,即IO延时数据。其中,IO延时数据可理解为向磁盘进行数据写入或数据读取所需的时长数据。
而考虑到每个节点可能具有大量的磁盘,为了提高采样效率,采样模块可为节点上的每个磁盘分配一个采样线程,如此,每个采样线程均独立运行,并且每个采样线程可并行运行,相互之间不会存在影响。
针对待检测磁盘,则在采样周期内将采样获得待检测磁盘的多个IO延时数据,为了避免采用单个IO延时数据进行检测可能存在突变带来的误差,因此,可计算待检测磁盘的多个IO延时数据的均值,利用均值进行检测判断。
本实施例中,预先还基于分布式集群中多个正常磁盘的IO延时数据构建得到拒绝域模型,该拒绝域模型由于基于正常磁盘的IO延时数据所构建得到,因此,可以体现出正常磁盘的IO延时数据的特性。也就是说,在对拒绝域模型进行一些形式上的变换后,也可以用于检测出并非正常磁盘的磁盘,也即,慢盘。
因此,本实施例中,可以将待检测磁盘的多个IO延时数据的均值带入到拒绝域模型中以检测待检测磁盘是否为慢盘。
本实施例中,若带入均值后拒绝域模型满足预设要求,可以确定待检测磁盘为慢盘。其中,所述的预设要求可以是例如,若拒绝域模型为一不等式形式,则带入均值后拒绝域模型的不等式可成立,也即,待检测磁盘的均值落入了拒绝域模型所限定的拒绝域中。此时,可判定待检测磁盘为慢盘。
而若带入均值后拒绝域模型不满足预设要求,例如带入均值后拒绝域模型的不等式不成立,即待检测磁盘的均值未落入拒绝域模型所限定的拒绝域中,此时,可判定待检测磁盘为正常磁盘。
本实施例中,通过预先基于正常磁盘的IO延时数据构建拒绝域模型,构建的拒绝域模型可以体现出真实场景下磁盘的IO延时情况。利用构建的拒绝域模型进行慢盘的检测,判断的依据是符合集群的实际应用场景的。可以避免现有技术中通过经验值设置参数进行判断所存在的不适应于实际应用场景的缺陷。
以下首先对预先构建拒绝域模型的过程进行介绍。请参阅图3,本实施例中,通过以下方式预先构建拒绝域模型:
S201,采集所述分布式集群中多个正常磁盘的IO延时数据。
S202,基于正态分布理论,并根据所述多个正常磁盘的IO延时数据构建得到在设定误判率下的拒绝域模型。
本实施例中,基于一种统计推断中的假设检验理论进行拒绝域模型的构建。它可以在总体的分布函数完全未知或只知其形式,但不知其参数的情况下,为了推断总体的某些未知特性,提出某些关于总体的假设。例如,提出总体服从泊松分布的假设,又如,对于正态分布总体提出数学期望等于某个设定值的假设等。然后根据样本对所提出的假设作出是接受,还是拒绝的决策。
具体地,本实施例中,前期预先采集多个正常磁盘的IO延时数据作为样本数据。以获取正常磁盘的IO延时数据的正态分布的参数值。本实施例中,可在采样周期内,对每个正常磁盘完成多次IO延时采样。
本实施例中,基于正态分布理论,可以基于正常磁盘的IO延时数据并在设定误判率下构建拒绝域模型。例如,设定误判率设置为0.01时,可以通过查找正态分布表,找到对应的正态分布z0.01对应的值。
从而可以构建假设可允许将正常磁盘误判为慢盘的误判率在1%的情况下的拒绝域模型。利用该拒绝域模型不仅可以用于检测出磁盘中的慢盘,还可以给出该检测动作的误判率。
请参阅图4,在一种实现方式中,本实施例可以通过以下方式构建得到拒绝域模型:
S2011,计算所述多个正常磁盘的IO延时数据的整体均值和整体标准差。
S2012,基于正态分布理论,并根据所述整体均值和整体标准差构建得到在设定误判率下的拒绝域模型。
本实施例中,在采集到多个正常磁盘的多个IO延时数据的情况下,可以计算出采集到的所有IO延时数据的整体标准差σ和整体均值μ0
基于得到的整体标准差、整体均值以及设定误判率,可以构建如下所示的拒绝域模型:
Figure BDA0003751717100000091
其中,σ表示整体标准差,μ0表示整体均值,
Figure BDA0003751717100000092
为未知的参数,表示带入到拒绝域模型中的数据,n表示
Figure BDA0003751717100000094
所基于的数据的数量,z设定误判率表示设定误判率(例如设定误判率可为0.01,或其他设定值)下的正态分布值,可通过查找正态分布表得到。
基于上述构建的拒绝域模型,则在得到待检测磁盘的IO延时数据的均值后,可以将均值带入到拒绝域模型中的
Figure BDA0003751717100000093
并将拒绝域模型中的n设置为待检测磁盘的均值所利用的IO延时数据的数量。计算带入之后,拒绝域模型是否满足其不等式形式,若满足,则可以判定待检测磁盘为慢盘。否则,可以判定待检测磁盘为正常磁盘。
本实施例中,考虑到上述在构建拒绝域模型时采用的样本数据的规模较大,在较大规模的样本数据的情况下计算得到的均值其抖动是较小的。然而在实际进行检测时,所采样的待检测磁盘的IO延时数据的数量较少。较少数量的IO延时数据可能存在较大的抖动,因此,上述形式的拒绝域模型可能并不完全适用于实际检测过程。
基于上述考虑,本实施例中,可以通过对上述形式的拒绝域模型进行修正的方式以克服上述缺陷。具体地,请参阅图5,上述步骤S2012可以包括以下子步骤。
S20121,根据所述整体均值和整体标准差构建得到在设定误判率下的初步拒绝域模型。
S20122,在所述初步拒绝域模型中加入修正指数。
S20123,分别将每个正常磁盘的IO延时数据带入至添加有修正指数的初步拒绝域模型中获得所述修正指数的值,以得到带有修正指数的拒绝域模型,其中,所述拒绝域模型在每个正常磁盘的IO延时数据带入时均满足预设要求。
本实施例中,在一种可能的实现方式下,可以将上述直接基于整体均值和整体标准差构建的拒绝域模型作为初步拒绝域模型。
在初步拒绝域模型的基础上,可加入修正指数,如下所示:
Figure BDA0003751717100000101
其中,修正指数δ为未知参数,需要确定出修正指数的值,才可得到可用于检测的拒绝域模型。
在本实施例中,预先已采样到多个正常磁盘中每个磁盘的多个IO延时数据。可以按照正常磁盘进行分组,计算每个正常磁盘的多个IO延时数据的均值,如此,则可以得到多个均值。将该多个均值分别带入到上述添加有修正指数的初步拒绝域模型中。
或者,也可以针对每个正常磁盘,将正常磁盘的多个IO延时数据划分为多组,其中,每组IO延时数据的数量为设定数量,例如100个、200个等不限。分别将每组IO延时数据带入至添加有修正指数的初步拒绝域模型中以获得修正指数的值。具体地,计算出每组的IO延时数据的均值,得到多个均值。将该多个均值分别带入至添加有修正指数的初步拒绝域模型中以获得修正指数的值。
将每个均值分别带入到上述添加有修正指数的拒绝域模型中,并且将模型中的n设置为每次带入的均值所基于的IO延时数据的数量。如此,则可以得到多个不等式形式。其中,对修正指数取值,将修正指数取值为得到的拒绝域模型在每个正常磁盘的IO延时数据带入时均满足预设要求,也即,上述不等式形式均成立时的最小值。
也就是说,分别将多个均值带入到上述模型中,则可以得到多个不等式形式。修正指数最终的取值,可以使得所有不等式成立,并且,在满足所有不等式均成立的情况下,修正指数的值为可取的最小值。
如此,则可以将修正指数的值确定下来,进而则可以得到带有修正指数的最终的拒绝域模型。
在这种情形下,在得到待检测磁盘的IO延时数据的均值后,则可以将均值带入到上述具有修正指数的拒绝域模型中,进而通过检测拒绝域模型是否满足其不等式形式,在满足的情况下,则可以判定待检测磁盘为慢盘,否则可以判定待检测磁盘为正常磁盘。
本实施例中,通过以上方式可以对任意待检测磁盘进行检测以判定其是否为慢盘。而对于检测出的慢盘需要采取一定的处理措施,从而保障避免对集群整体造成影响。本实施例中,请参阅图6,本实施例所提供的慢盘检测方法还可包括以下步骤:
S106,针对判定为慢盘的磁盘,根据所述磁盘被判定为慢盘的次数,对所述磁盘执行处理操作。
本实施例中,磁盘被判定为慢盘的次数可以体现出磁盘当前的性能情况,例如若磁盘第一次被判定为慢盘,则可能磁盘仅是由于一些客观原因导致读写速度减慢,而若磁盘被多次判定为慢盘,则可能确实磁盘自身出现老化等导致磁盘读写速度减慢。因此,基于磁盘被判定为慢盘的次数,可以对应性地对磁盘执行处理操作。
本实施例中,若磁盘为第一次被判定为慢盘,则降低磁盘的读写流量。其中,降低磁盘的读写流量可以是将磁盘的读写流量降低为原本的一半,或者是基于需求适应性的在原本的读写流量的基础上降低一定值等,本实施例对此不作具体限定。
此外,若磁盘并非第一次被判定为慢盘,则根据当前分布式集群中被判定为慢盘的数量以及分布式集群的纠删配比中允许同时故障的磁盘的数量,对磁盘执行处理操作。
本实施例中,针对并非第一次被判定为慢盘的磁盘,还需结合分布式集群中当前整体所存在的慢盘的情况,以及集群的纠删配比来相应地执行处理。
若当前分布式集群中被判定为慢盘的数量小于或等于分布式集群中纠删配比中允许同时故障的磁盘的数量,则关闭磁盘的读写流量,并将磁盘上的数据恢复至分布式集群中的其他磁盘上。
若当前分布式集群中判定为慢盘的数量大于分布式集群的纠删配比中允许同时故障的磁盘的数量,则关闭磁盘的写入流量。
本实施例中,假设分布式集群的纠删配比为N+M,其中,M表示允许同时故障的磁盘的数量。如果某个磁盘并非第一次被判定为慢盘,且当前总的慢盘数量小于或等于M,则可以将该磁盘的读写流量关闭,也完全屏蔽该磁盘的读写IO,所谓的进行踢盘操作。
而在完全屏蔽某个磁盘的读写IO的情况下,为了避免由于磁盘中的数据无法读取而影响运行,因此,需要将磁盘中的数据恢复迁移至其他磁盘上。其中,迁移至其他磁盘上的操作,可以是如迁移至当前负载占比较低的磁盘,或离该慢盘距离较近的磁盘等不限。
如果某个磁盘并非第一次被判定为慢盘,且当前总的慢盘的数量大于M,则可以对该磁盘作为写入屏蔽的操作,即只允许进行读操作,不允许写操作。
本实施例中,通过预先基于正常磁盘的IO延时数据进行作为样本进行拒绝域模型的构建,并基于拒绝域模型实现实时的慢盘监测功能,并且,结合慢盘自身的情况以及集群整体的情况对慢盘作为处理。可在最大可能的检测出慢盘的情况下,同时给出正常磁盘被误判为慢盘的概率,且相应地作为处理以优化集群运行性能。
本实施例提供的慢盘检测方法,摒弃了现有方式中所采用的经验参数调试方式,改用参数修正后的假设检验方法,使得慢盘检测过程更具备理论依据和便捷性,慢盘检测的结论也更具说服力。同时给出一套完整的适用于分布式纠删系统的检测架构,具备算法的实际落地能力。
为了进一步地对本实施例所提供的检测方法进行说明,以下将结合具体实例对方案进行进一步介绍。
在前期进行拒绝域模型的构建中,假设分布式集群包括16个节点,每个数据节点上具有40张磁盘。预先采集所有磁盘的IO延时数据,例如在采样周期内每个磁盘可连续采样1000000次。
计算得到采样到的所有IO延时数据的整体均值μ0、整体标准差σ。假设μ0=15ms,σ=5ms。
针对每个数据节点的每张磁盘,可将磁盘上连续采样的1000000个IO延时数据进行分组,例如可按100个数据作为一组,分为10000组。对于每组数据可计算其均值
Figure BDA0003751717100000131
并将所有均值带入到添加有修正指数的初步拒绝域模型中。其中,设定误判率可为0.01,即拒绝域模型的显著性水平α=0.01,因此通过查询正态分布表可得z0.01=2.325。
将上述数值带入到如下所示的模型中:
Figure BDA0003751717100000141
带入数值并转换后可得到如下形式:
Figure BDA0003751717100000142
取最小的修正指数δ使得所有不等式均成立,假设最大
Figure BDA0003751717100000143
则δ=4.8375。
基于上述得到的拒绝域模型则可以实现各个磁盘是否为慢盘的检测。
例如,针对A盘,可对A盘进行采样,获得的IO延时数据可记为[T1,T2…Tn],基于采样的IO延时数据计算出均值,假设为
Figure BDA0003751717100000144
将均值带入到拒绝域模型中,
Figure BDA0003751717100000145
不等式成立,则判定A盘为慢盘,且正常磁盘被误判为慢盘的概率为1%。
可将A盘的DISK-ID发送给管理模块,若A盘第一次被判定并标记为慢盘,则对A盘采取流量减半的策略,A盘所在的节点可基于该策略将A盘的读写流量减少为原本的一半。例如,将原本的读写流量从10MB/S下降到5MB/S,系统继续运行。
此外,针对B盘,B盘是否为慢盘的检测方式与上述相同。若B盘是第二次判定为慢盘,表明之前已执行过流量减半的测量,读写流量从10MB/S降低到5MB/S。此种情形下,可查询当前分布式集群的纠删配比,假设为8+2,也即被允许同时故障的磁盘的数量为2。假设B盘为当前分布式集群中唯一的慢盘,即当前分布式集群中慢盘的数量大于2,此时可以作为踢盘策略。
B盘所在的节点可停止B盘的读写IO,并触发将B盘上的数据恢复至其他磁盘上。
针对C盘,C盘是否为慢盘的判定方式与上述相同。若发现C盘是第二次被标记为慢盘,表明已执行过减半策略,读写IO限速从10MB/S降低到5MB/S。
同样地,若分布式集群的纠删比假设为8+2,即允许同时故障的磁盘数量为2。假设C盘为当前分布式集群的第3张慢盘,即总的慢盘数量大于2。由于集群已经无法满足纠删可靠性,因此可以作为屏蔽写的策略。
C盘所在的节点可停止C盘的写IO,指允许读IO,以满足系统的读数据的需求。
请参阅图7,为本申请实施例提供的电子设备的示例性组件示意图,该电子设备可以上述分布式集群中的任一节点。该电子设备可包括存储介质110、处理器120、慢盘检测装置130及通信接口140。本实施例中,存储介质110与处理器120均位于电子设备中且二者分离设置。然而,应当理解的是,存储介质110也可以是独立于电子设备之外,且可以由处理器120通过总线接口来访问。可替换地,存储介质110也可以集成到处理器120中,例如,可以是高速缓存和/或通用寄存器。
慢盘检测装置130可以理解为上述电子设备,或电子设备的处理器120,也可以理解为独立于上述电子设备或处理器120之外的在电子设备控制下实现上述慢盘检测方法的软件功能模块。
如图8所示,上述慢盘检测装置130可以包括采集模块131、计算模块132和判定模块133。下面分别对该慢盘检测装置130的各个功能模块的功能进行详细阐述。
采集模块131,用于采集待检测磁盘在采样周期内的多个IO延时数据;
可以理解,该采集模块131可以用于执行上述步骤S101,关于该采集模块131的详细实现方式可以参照上述对步骤S101有关的内容。
计算模块132,用于计算所述多个IO延时数据的均值,并将所述均值带入到预先得到的拒绝域模型,所述拒绝域模型为预先基于所述分布式集群中多个正常磁盘的IO延时数据所构建得到;
可以理解,该计算模块132可以用于执行上述步骤S102,关于该计算模块132的详细实现方式可以参照上述对步骤S102有关的内容。
判定模块133,用于检测带入所述均值后所述拒绝域模型是否满足预设要求,若满足预设要求,则判定所述待检测磁盘为慢盘。
可以理解,该判定模块133可以用于执行上述步骤S103至S105,关于该判定模块133的详细实现方式可以参照上述对步骤S103至S105有关的内容。
在一种可能的实施方式中,所述慢盘检测装置130还包括构建模块,该构建模块可以用于:
采集所述分布式集群中多个正常磁盘的IO延时数据;
基于正态分布理论,并根据所述多个正常磁盘的IO延时数据构建得到在设定误判率下的拒绝域模型。
在一种可能的实施方式中,上述构建模块可以用于:
计算所述多个正常磁盘的IO延时数据的整体均值和整体标准差;
基于正态分布理论,并根据所述整体均值和整体标准差构建得到在设定误判率下的拒绝域模型。
在一种可能的实施方式中,上述构建模块可以用于:
根据所述整体均值和整体标准差构建得到在设定误判率下的初步拒绝域模型;
在所述初步拒绝域模型中加入修正指数;
分别将每个正常磁盘的IO延时数据带入至添加有修正指数的初步拒绝域模型中获得所述修正指数的值,以得到带有修正指数的拒绝域模型,其中,所述拒绝域模型在每个正常磁盘的IO延时数据带入时均满足预设要求。
在一种可能的实施方式中,上述构建模块可以用于:
针对每个正常磁盘,将所述正常磁盘的多个IO延时数据划分为多组,每组IO延时数据的数量为设定数量;
分别将每组IO延时数据带入至添加有修正指数的初步拒绝域模型中以获得所述修正指数的值。
在一种可能的实施方式中,所述慢盘检测装置130还包括执行模块,该执行模块可以用于:
针对判定为慢盘的磁盘,根据所述磁盘被判定为慢盘的次数,对所述磁盘执行处理操作。
在一种可能的实施方式中,上述执行模块可以用于:
若所述磁盘为第一次被判定为慢盘,则降低所述磁盘的读写流量;
若所述磁盘并非第一次被判定为慢盘,则根据当前分布式集群中被判定为慢盘的数量以及所述分布式集群的纠删配比中允许同时故障的磁盘的数量,对所述磁盘执行处理操作。
在一种可能的实施方式中,上述执行模块可以用于:
若当前分布式集群中被判定为慢盘的数量小于或等于所述分布式集群的纠删配比中允许同时故障的磁盘的数量,则关闭所述磁盘的读写流量,并将所述磁盘上的数据恢复至所述分布式集群中的其他磁盘上;
若当前分布式集群中判定为慢盘的数量大于所述分布式集群的纠删配比中允许同时故障的磁盘的数量,则关闭所述磁盘的写入流量。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
进一步地,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有机器可执行指令,机器可执行指令被执行时实现上述实施例提供的慢盘检测方法。
具体地,该计算机可读存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该计算机可读存储介质上的计算机程序被运行时,能够执行上述慢盘检测方法。关于计算机可读存储介质中的及其可执行指令被运行时,所涉及的过程,可以参照上述方法实施例中的相关说明,这里不再详述。
综上所述,本申请实施例提供的慢盘检测方法、装置、电子设备和可读存储介质,在采集待检测磁盘在采样周期内的多个IO延时数据后,计算多个IO延时数据的均值,并将均值带入到预先得到的拒绝域模型中,而该拒绝域模型为预先基于集群中多个正常磁盘的IO延时数据所构建得到。通过检测带入均值后拒绝域模型是否满足预设要求,在满足预设要求时,判定待检测磁盘为慢盘。本方案,预先基于集群中正常磁盘的IO延时数据以构建拒绝域模型,以用于进行慢盘的检测。判断的依据是符合集群的实际应用场景的,避免了现有技术中通过经验值设置参数进行判断所存在的不适应于实际应用场景的缺陷。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (11)

1.一种慢盘检测方法,其特征在于,应用于包括多个节点的分布式集群中的任一节点,各所述节点包括多个磁盘,所述方法包括:
采集待检测磁盘在采样周期内的多个IO延时数据;
计算所述多个IO延时数据的均值,并将所述均值带入到预先得到的拒绝域模型,所述拒绝域模型为预先基于所述分布式集群中多个正常磁盘的IO延时数据所构建得到;
检测带入所述均值后所述拒绝域模型是否满足预设要求,若满足预设要求,则判定所述待检测磁盘为慢盘。
2.根据权利要求1所述的慢盘检测方法,其特征在于,所述方法还包括预先得到所述拒绝域模型的步骤,该步骤包括:
采集所述分布式集群中多个正常磁盘的IO延时数据;
基于正态分布理论,并根据所述多个正常磁盘的IO延时数据构建得到在设定误判率下的拒绝域模型。
3.根据权利要求2所述的慢盘检测方法,其特征在于,所述基于正态分布理论,并根据所述多个正常磁盘的IO延时数据构建得到在设定误判率下的拒绝域模型的步骤,包括:
计算所述多个正常磁盘的IO延时数据的整体均值和整体标准差;
基于正态分布理论,并根据所述整体均值和整体标准差构建得到在设定误判率下的拒绝域模型。
4.根据权利要求3所述的慢盘检测方法,其特征在于,所述根据所述整体均值和整体标准差构建得到在设定误判率下的拒绝域模型的步骤,包括:
根据所述整体均值和整体标准差构建得到在设定误判率下的初步拒绝域模型;
在所述初步拒绝域模型中加入修正指数;
分别将每个正常磁盘的IO延时数据带入至添加有修正指数的初步拒绝域模型中获得所述修正指数的值,以得到带有修正指数的拒绝域模型,其中,所述拒绝域模型在每个正常磁盘的IO延时数据带入时均满足预设要求。
5.根据权利要求4所述的慢盘检测方法,其特征在于,所述分别将每个正常磁盘的IO延时数据带入至添加有修正指数的初步拒绝域模型中获得所述修正指数的值的步骤,包括:
针对每个正常磁盘,将所述正常磁盘的多个IO延时数据划分为多组,每组IO延时数据的数量为设定数量;
分别将每组IO延时数据带入至添加有修正指数的初步拒绝域模型中以获得所述修正指数的值。
6.根据权利要求1-5任意一项所述的慢盘检测方法,其特征在于,所述方法还包括:
针对判定为慢盘的磁盘,根据所述磁盘被判定为慢盘的次数,对所述磁盘执行处理操作。
7.根据权利要求6所述的慢盘检测方法,其特征在于,所述根据所述磁盘被判定为慢盘的次数,对所述磁盘执行处理操作的步骤,包括:
若所述磁盘为第一次被判定为慢盘,则降低所述磁盘的读写流量;
若所述磁盘并非第一次被判定为慢盘,则根据当前分布式集群中被判定为慢盘的数量以及所述分布式集群的纠删配比中允许同时故障的磁盘的数量,对所述磁盘执行处理操作。
8.根据权利要求7所述的慢盘检测方法,其特征在于,所述根据当前分布式集群中被判定为慢盘的数量以及所述分布式集群的纠删配比中允许同时故障的磁盘的数量,对所述磁盘执行处理操作的步骤,包括:
若当前分布式集群中被判定为慢盘的数量小于或等于所述分布式集群的纠删配比中允许同时故障的磁盘的数量,则关闭所述磁盘的读写流量,并将所述磁盘上的数据恢复至所述分布式集群中的其他磁盘上;
若当前分布式集群中判定为慢盘的数量大于所述分布式集群的纠删配比中允许同时故障的磁盘的数量,则关闭所述磁盘的写入流量。
9.一种慢盘检测装置,其特征在于,应用于包括多个节点的分布式集群中的任一节点,各所述节点包括多个磁盘,所述装置包括:
采集模块,用于采集待检测磁盘在采样周期内的多个IO延时数据;
计算模块,用于计算所述多个IO延时数据的均值,并将所述均值带入到预先得到的拒绝域模型,所述拒绝域模型为预先基于所述分布式集群中多个正常磁盘的IO延时数据所构建得到;
判定模块,用于检测带入所述均值后所述拒绝域模型是否满足预设要求,若满足预设要求,则判定所述待检测磁盘为慢盘。
10.一种电子设备,其特征在于,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当电子设备运行时,处理器执行所述机器可执行指令,以执行权利要求1-8中任意一项所述的方法步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可执行指令,所述机器可执行指令被执行时实现权利要求1-8中任意一项所述的方法步骤。
CN202210844268.8A 2022-07-18 2022-07-18 慢盘检测方法、装置、电子设备和可读存储介质 Pending CN115098314A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210844268.8A CN115098314A (zh) 2022-07-18 2022-07-18 慢盘检测方法、装置、电子设备和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210844268.8A CN115098314A (zh) 2022-07-18 2022-07-18 慢盘检测方法、装置、电子设备和可读存储介质

Publications (1)

Publication Number Publication Date
CN115098314A true CN115098314A (zh) 2022-09-23

Family

ID=83298169

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210844268.8A Pending CN115098314A (zh) 2022-07-18 2022-07-18 慢盘检测方法、装置、电子设备和可读存储介质

Country Status (1)

Country Link
CN (1) CN115098314A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117806890A (zh) * 2024-02-28 2024-04-02 四川省华存智谷科技有限责任公司 一种基于分布式存储的慢盘检测处理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117806890A (zh) * 2024-02-28 2024-04-02 四川省华存智谷科技有限责任公司 一种基于分布式存储的慢盘检测处理方法
CN117806890B (zh) * 2024-02-28 2024-05-03 四川省华存智谷科技有限责任公司 一种基于分布式存储的慢盘检测处理方法

Similar Documents

Publication Publication Date Title
CN110413227B (zh) 一种硬盘设备的剩余使用寿命在线预测方法和系统
US9218570B2 (en) Determining an anomalous state of a system at a future point in time
CN110289994B (zh) 一种集群容量调整方法及装置
WO2017162086A1 (zh) 任务调度方法和装置
CN113360270B (zh) 一种数据清洗任务处理方法及装置
WO2021185182A1 (zh) 一种异常检测的方法及装置
CN115098314A (zh) 慢盘检测方法、装置、电子设备和可读存储介质
Qiu et al. Enhancing reliability and response times via replication in computing clusters
CN114095032B (zh) 基于Flink和RVR的数据流压缩方法、边缘计算系统及存储介质
WO2020220437A1 (zh) 一种基于AdaBoost-Elman的虚拟机软件老化预测方法
CN110602207A (zh) 基于离网预测推送信息的方法、装置、服务器和存储介质
CN111858108A (zh) 一种硬盘故障预测方法、装置、电子设备和存储介质
CN115509853A (zh) 一种集群数据异常检测方法及电子设备
CN112395179B (zh) 一种模型训练方法、磁盘预测方法、装置及电子设备
CN114398235A (zh) 基于融合学习和假设检验的内存回收趋势预警装置及方法
CN113094249A (zh) 一种节点异常检测方法、装置及介质
CN112199153A (zh) 一种虚拟网络功能vnf实例部署方法及装置
CN112446490A (zh) 一种网络训练的数据集缓存方法、装置、设备及存储介质
CN112817948B (zh) 数据检测的方法、装置、可读存储介质以及电子设备
CN114238243B (zh) 一种用于流程发现的局部日志采样方法
Saeedizade et al. I/O Burst Prediction for HPC Clusters using Darshan Logs
CN110750432B (zh) 分布式存储系统的io性能分析方法、系统及相关组件
US8780471B2 (en) Linking errors to particular tapes or particular tape drives
CN115982622B (zh) 核反应堆冷却剂系统运行瞬态快速识别方法、装置及系统
CN115396319B (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