CN112000543A - 一种存储***的时延性能检测方法、装置及设备 - Google Patents

一种存储***的时延性能检测方法、装置及设备 Download PDF

Info

Publication number
CN112000543A
CN112000543A CN202010745416.1A CN202010745416A CN112000543A CN 112000543 A CN112000543 A CN 112000543A CN 202010745416 A CN202010745416 A CN 202010745416A CN 112000543 A CN112000543 A CN 112000543A
Authority
CN
China
Prior art keywords
time delay
request
delay
layer
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.)
Granted
Application number
CN202010745416.1A
Other languages
English (en)
Other versions
CN112000543B (zh
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.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data 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 Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN202010745416.1A priority Critical patent/CN112000543B/zh
Publication of CN112000543A publication Critical patent/CN112000543A/zh
Application granted granted Critical
Publication of CN112000543B publication Critical patent/CN112000543B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种存储***的时延性能检测方法,能够全面监测存储***中IO请求栈的各个层,得到IO请求在每层的时延;然后根据基准时延模型中同类型IO请求在整个IO请求路径上的平均时延,筛选出时延离群点;最终根据基准时延模型中同类型IO请求在每层的平均时延,确定IO请求栈中导致所述时延离群点的时延瓶颈层。实现了检测并分析存储***的时延瓶颈的目的,且整个检测过程覆盖度高,可靠性高。此外,本申请还提供了一种存储***的时延性能检测装置及设备,其技术效果与上述方法的技术效果相对应。

Description

一种存储***的时延性能检测方法、装置及设备
技术领域
本申请涉及存储技术领域,特别涉及一种存储***的时延性能检测方法、装置及设备。
背景技术
时延是存储***中非常重要的性能指标,在存储***业务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请求在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请求栈中导致所述时延离群点的时延瓶颈层。实现了检测并分析存储***的时延瓶颈的目的,且整个检测过程覆盖度高,可靠性高。
此外,本申请还提供了一种存储***的时延性能检测装置及设备,其技术效果与上述方法的技术效果相对应,这里不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的一种存储***的时延性能检测方法实施例一的实现流程图;
图2为本申请所提供的一种存储***的时延性能检测方法实施例二的实现流程图;
图3为本申请所提供的一种存储***的时延性能检测方法实施例二中S205的细化流程图;
图4为本申请所提供的一种存储***的时延性能检测方法应用实施例中基准时延模型的构建过程示意图;
图5为本申请所提供的一种存储***的时延性能检测方法应用实施例中时延离群点筛选过程示意图;
图6为本申请所提供的一种存储***的时延性能检测方法应用实施例中时延瓶颈分析过程示意图;
图7为本申请所提供的一种存储***的时延性能检测装置实施例的功能框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
存储***性能中时延是重要指标,但是对时延的检测分析一直缺乏高效的方案。针对该问题,本申请提供了一种存储***的时延性能检测方法、装置及设备,能够监测IO请求在IO请求栈的各个层的时延,进而筛选时延离群点,确定导致时延离群的时延瓶颈,整个检测过程覆盖度高,可靠性高,检测效率高。
下面对本申请提供的一种存储***的时延性能检测方法实施例一进行介绍,参见图1,实施例一包括:
S101、获取基准时延模型,其中所述基准时延模型用于描述同一类型的IO请求在IO请求栈的每个目标层的平均时延,以及同一类型的IO请求在整个IO请求路径上的平均时延;
S102、监测目标类型的IO请求,记录该IO请求在整个IO请求路径上的全局时延,并记录该IO请求在IO请求栈的每个目标层的局部时延;
S103、根据所述基准时延模型,判断所述全局时延是否为时延离群点;若所述全局时延为时延离群点,则进入S104,否则不做处理;
S104、根据所述基准时延模型和所述局部时延,确定所述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请求的全局延时均超过时延预警线时,本实施例判定这些超过时延预警线的全局时延为时延离群点。
在检测出时延离群点之后,分析导致时延离群的时延瓶颈。具体的,首先根据基准时延模型中记录的目标类型的IO请求在各个层的平均时延,然后根据平均时延和相应的局部时延之间的大小关系,判断当前层是否为时延瓶颈层。具体可以包括以下步骤:根据所述基准时延模型,确定所述目标类型的IO请求在每个目标层的平均时延;根据所述平均时延和所述局部时延的大小关系,计算得到时延匹配率;确定时延匹配率不在预设范围的目标层,以作为时延瓶颈层。
本实施例所提供一种存储***的时延性能检测方法,能够全面监测存储***中IO请求栈的各个目标层,得到IO请求在每个目标层的时延;然后根据基准时延模型中同类型IO请求在整个IO请求路径上的平均时延,筛选出时延离群点;最终根据基准时延模型中同类型IO请求在每层的平均时延,确定IO请求栈中导致所述时延离群点的时延瓶颈层。实现了检测并分析存储***的时延瓶颈的目的,且整个检测过程覆盖度高,可靠性高。
下面开始详细介绍本申请提供的一种存储***的时延性能检测方法实施例二,实施例二基于前述实施例一实现,并在实施例一的基础上进行了一定程度上的拓展。
参见图2,实施例二具体包括:
S201、在存储***的IO请求栈的每一层设置监控点;
本实施例中,IO请求栈的层包括:应用程序层、***调用层、虚拟文件***层、文件***层、块设备接口层、驱动程序层、磁盘。
S202、在所述监控点设置事件追踪器,以监测IO请求并记录日志信息;
其中,所述日志信息包括开始时间戳、结束时间戳、类型信息,所述类型信息进一步包括操作类型、操作结果、操作大小。
S203、根据所述日志信息构建基准时延模型;
其中所述基准时延模型用于描述同一类型的IO请求在IO请求栈的每个目标层的平均时延,以及同一类型的IO请求在整个IO请求路径上的平均时延,还用于描述包括两个以上层的非完整IO请求路径上的平均时延。
所述同一类型的IO请求是指满足以下任意一项或多项条件的IO请求:操作类型相同、操作结果相同、操作大小落入同一数据范围。
S304、监测目标类型的IO请求,记录该IO请求在整个IO请求路径上的全局时延,并记录该IO请求在IO请求栈的每个层的局部时延;
S205、根据所述基准时延模型,判断所述全局时延是否为时延离群点;若所述全局时延为时延离群点,则进入S206;
S206、根据所述基准时延模型和所述局部时延,采用二分查找法对整个IO请求路径进行查找分析,确定所述IO请求栈中的时延瓶颈层。
如图3所示,上述S205具体包括:
S301、根据所述基准时延模型,确定所述目标类型的IO请求在整个IO请求路径上的目标平均时延;
S302、根据所述目标平均时延,计算出所述目标类型的IO请求的时延预警线;
S303、分别判断IO请求集合中各个IO请求的全局时延是否超出所述时延预警线,得到超出所述时延预警线的全局时延的数量,其中所述IO请求集合中各个IO请求的类型均为目标类型;
S304、若所述超出所述时延预警线的全局时延的数量达到预设阈值,则判定各个超出所述时延预警线的全局时延为时延离群点。
综上,本实施例包括基准时延模型构建、时延离群点查找和时延分析三个过程。在构建基准时延模型时,首先在存储***的IO请求路径中,选择合适的监控点,在每个监控点中设置事件追踪器,记录并获取捕获IO的信息,以作为日志信息。然后对日志信息,以IO请求的操作类型、操作数据大小、操作结果为划分依据,计算IO栈中不同操作类型、不同操作数据大小、不同操作结果的在每层操作的平均时延和任意两层的平均时延,从而构建基准时延模型。
在时延离群点查找过程中,对于目标类型的IO请求,比对其全路径时延的分布规律,如果存在连续几个的全局时延超出时延预警线,则认为这些全局时延为时延离群点,否则忽略。
在时延分析过程中,对于IO请求的时延离群点,首先根据事件追踪器记录的日志信息,对离群点IO的整个请求过程进行复原,通过比较每个层的平均时延和局部时延,确定时延瓶颈层。具体的,按照二分查找的方法,首先以磁盘为首要时延分析点,将IO请求流程分为请求和响应两个阶段,折半比对各个层次和指定路径的时延,依次类推,从而快速定位出性能瓶颈点。
下面以实际应用为例,对本申请的存储***的时延性能检测方法进行介绍。
如图4所示,时延模型构建过程包括:
根据***架构和IO流程,根据IO请求路径,在存储***的IO请求栈中每层设置一个监控点。
事件追踪器对每个监控点进行个IO请求日志记录,记录的日志信息包括:IO操作类型、磁盘ID、磁盘偏移量、IO操作大小、IO请求开始时间戳、IO请求结束时间戳、IO操作结果以及其它附加信息,如应用程序名称、文件名、指令附加信息等。事件追踪器记录的日志信息需要单独存储。
基准时延模型定期读取事件追踪器记录的日志信息,将从IO请求到达到IO请求离开作为一次完整的时延数据,对于这些时延数据按照操作类型(读、写、写回等)、操作数据大小(500B,4KB,10KB,50KB等)、操作结果(正常、异常)统计分析出每个层的平均时延。然后,在得到各个层的平均时延的基础上,进一步计算任意两个层之间的平均时延,以及整个IO请求路径上的平均时延。
最终,基准时延模型包含各不同操作类型、不同操作大小、不同操作结果的IO请求在每个层的平均时延(以下称为单层平均时延)、在整个IO请求路径上的平均时延(以下称为全路径平均时延)、包括两个以上层的非完整IO请求路径上的平均时延(以下称为部分路径平均时延)。
其中,全路径平均时延用来作为筛选时延离群点的依据,单层平均时延和部分路径平均时延作为时延瓶颈分析的依据。
如图5所示,时延瓶颈离群点查找过程按照以下方式展开:
全路径平均时延反映的是:从应用程序端发送请求开始到接收到请求结果为止的时延。将全路径平均时延和基准时延模型中同操作类型、同操作结果(正常,失败)、同操作数据量大小的全路径平均时延相比较,如果有连续7个点都超出预警线,则这7个点被成为时延离群点,可以选择中间任何一个或多个进行时延瓶颈分析。如果连续超出预警线的点不够7个,则认为是偶发性时延,忽略即可。
其中,可以分别设置上预警线和下预警线,作为一种具体的实施方式,预警线取值可以按照以下方式进行:上预警线=平均时延+平均时延*60%,下预警线=平均时延–平均时延*60%。
如图6所示,时延瓶颈分析过程按照以下步骤展开:
对于离群时延点,首先从事件追踪器中检索出完整的日志信息,按照时间戳记录,复原IO的整个请求流程,得出各个层处理用时,以及在任意非完整路径上的用时。接下来,按照二分查找算法,比对各个层和路径的平均时延,查找时延瓶颈点:
首先以磁盘为分析对象,比对磁盘处理过程的实际时延和时延模型给出的平均时延,计算其延时匹配率:(实际/平均-1)*100%。如果匹配率在-60%~60%之间,说明磁盘时延正常,不在此范围,说明磁盘就是时延瓶颈点。
对于上一步骤匹配率正常的IO,接下来按照应用程序下发到数据落盘以及返回结果给应用程序这个过程,将请求分为两个阶段:请求阶段和响应阶段。其中,请求阶段指应用程序下发请求到磁盘的过程,响应阶段指磁盘返回结果到应用程序接收到结果的过程。通过之前步骤得到的请求阶段用时和响应阶段用时,比对时延模型,计算匹配率,找出异常的阶段。
接下来,按照如图6所示的路径树,寻找各个路径或者层次的匹配率,匹配率不在-60%~60%之间的点,就为时延瓶颈点。
也就是说,在时延瓶颈分析过程中,为提升效率,本实施例没有采取逐层对比分析的方式,而是通过二分查找法对完整的IO请求路径进行分析。首先,确定完整IO请求路径的中点,即磁盘,然后分析磁盘的时延,判断磁盘是否为时延瓶颈层;若是,得出时延分析结果,结束流程;若不是,则分别分析从应用程序层到磁盘的路径上的延时以及从磁盘到应用程序的路径上的时延,确定存在时延瓶颈的路径;假设存在时延瓶颈的路径为从应用程序层到磁盘的路径,则进一步确定该路径的中点,即文件***层,然后分析文件***层是否为时延瓶颈层;若是,得出时延分析结果,结束流程;若不是,则分别分析从应用程序层到文件***层的路径上的延时以及从文件***到磁盘的路径上的时延,依次类推,按照如图6所示的路径分别判断各个路径分段的时延。
可见,本实施例所提供一种存储***的时延性能检测方法,至少包括以下优点:
优点1,时延分析监控点涵盖整个IO栈的各个层级,监控方向和覆盖度很全面。
优点2,基准时延模型的构建来源于真实的IO请求统计计算,其数据跟贴合实际存储的业务,更得出的数据更加准确可靠。
优点3,时延瓶颈分析过程中,通过二分查找方法,比对指定路径和层次的时延匹配率,算法更加高效便捷。提高了整个***的异常的可操作性。
下面对本申请实施例提供的一种存储***的时延性能检测装置进行介绍,下文描述的一种存储***的时延性能检测装置与上文描述的一种存储***的时延性能检测方法可相互对应参照。
如图7所示,本实施例的存储***的时延性能检测装置,包括:
模型获取模块701:用于获取基准时延模型,其中所述基准时延模型用于描述同一类型的IO请求在IO请求栈的每个目标层的平均时延,以及同一类型的IO请求在整个IO请求路径上的平均时延;
IO请求监测模块702:用于监测目标类型的IO请求,记录该IO请求在整个IO请求路径上的全局时延,并记录该IO请求在IO请求栈的每个目标层的局部时延;
时延离群点检测模块703:用于根据所述基准时延模型,判断所述全局时延是否为时延离群点;
时延瓶颈层分析模块704:用于在所述全局时延为时延离群点时,根据所述基准时延模型和所述局部时延,确定所述IO请求栈中的时延瓶颈层。
本实施例的存储***的时延性能检测装置用于实现前述的存储***的时延性能检测方法,因此该装置中的具体实施方式可见前文中的存储***的时延性能检测方法的实施例部分,例如,模型获取模块701、IO请求监测模块702、时延离群点检测模块703、时延瓶颈层分析模块704,分别用于实现上述存储***的时延性能检测方法中步骤S101,S102,S103,S104。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例的存储***的时延性能检测装置用于实现前述的存储***的时延性能检测方法,因此其作用与上述方法的作用相对应,这里不再赘述。
此外,本申请还提供了一种存储***的时延性能检测设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上所述的存储***的时延性能检测方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种存储***的时延性能检测方法,其特征在于,包括:
获取基准时延模型,其中所述基准时延模型用于描述同一类型的IO请求在IO请求栈的每个目标层的平均时延,以及同一类型的IO请求在整个IO请求路径上的平均时延;
监测目标类型的IO请求,记录该IO请求在整个IO请求路径上的全局时延,并记录该IO请求在IO请求栈的每个目标层的局部时延;
根据所述基准时延模型,判断所述全局时延是否为时延离群点;
若所述全局时延为时延离群点,则根据所述基准时延模型和所述局部时延,确定所述IO请求栈中的时延瓶颈层。
2.如权利要求1所述的方法,其特征在于,在所述获取基准时延模型之前,还包括:
在存储***的IO请求栈的目标层设置监控点;
在所述监控点设置事件追踪器,以监测IO请求并记录日志信息,其中所述日志信息包括开始时间戳、结束时间戳、类型信息;
根据所述日志信息构建基准时延模型。
3.如权利要求2所述的方法,其特征在于,所述在存储***的IO请求栈的目标层设置监控点,包括:
在存储***的IO请求栈的每一层设置监控点,其中所述IO请求栈的层包括:应用程序层、***调用层、虚拟文件***层、文件***层、块设备接口层、驱动程序层、磁盘。
4.如权利要求1所述的方法,其特征在于,所述根据所述基准时延模型,判断所述全局时延是否为时延离群点,包括:
根据所述基准时延模型,确定所述目标类型的IO请求在整个IO请求路径上的目标平均时延;
根据所述目标平均时延,确定所述目标类型的IO请求的时延预警线;
判断所述全局时延是否超出所述时延预警线;
若超出,则判定所述全局时延为时延离群点。
5.如权利要求4所述的方法,其特征在于,所述判断所述全局时延是否超出所述时延预警线;若超出,则判定所述全局时延为时延离群点,包括:
分别判断IO请求集合中各个IO请求的全局时延是否超出所述时延预警线,得到超出所述时延预警线的全局时延的数量,其中所述IO请求集合中各个IO请求的类型均为目标类型;
若所述超出所述时延预警线的全局时延的数量达到预设阈值,则判定各个超出所述时延预警线的全局时延为时延离群点。
6.如权利要求1所述的方法,其特征在于,所述同一类型的IO请求是指满足以下任意一项或多项条件的IO请求:操作类型相同、操作结果相同、操作大小落入同一数据范围。
7.如权利要求1-6任意一项所述的方法,其特征在于,所述基准时延模型还用于描述包括两个以上目标层的非完整IO请求路径上的平均时延;
相应的,所述根据所述基准时延模型和所述局部时延,确定所述IO请求栈中的时延瓶颈层,包括:
根据所述基准时延模型和所述局部时延,采用二分查找法对整个IO请求路径进行查找分析,确定所述IO请求栈中的时延瓶颈层。
8.如权利要求1所述的方法,其特征在于,所述根据所述基准时延模型和所述局部时延,确定所述IO请求栈中的时延瓶颈层,包括:
根据所述基准时延模型,确定所述目标类型的IO请求在每个目标层的平均时延;
根据所述平均时延和所述局部时延的大小关系,计算得到时延匹配率;
确定时延匹配率不在预设范围的目标层,以作为时延瓶颈层。
9.一种存储***的时延性能检测装置,其特征在于,包括:
模型获取模块:用于获取基准时延模型,其中所述基准时延模型用于描述同一类型的IO请求在IO请求栈的每个目标层的平均时延,以及同一类型的IO请求在整个IO请求路径上的平均时延;
IO请求监测模块:用于监测目标类型的IO请求,记录该IO请求在整个IO请求路径上的全局时延,并记录该IO请求在IO请求栈的每个目标层的局部时延;
时延离群点检测模块:用于根据所述基准时延模型,判断所述全局时延是否为时延离群点;
时延瓶颈层分析模块:用于在所述全局时延为时延离群点时,根据所述基准时延模型和所述局部时延,确定所述IO请求栈中的时延瓶颈层。
10.一种存储***的时延性能检测设备,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如权利要求1-8任意一项所述的存储***的时延性能检测方法的步骤。
CN202010745416.1A 2020-07-29 2020-07-29 一种存储***的时延性能检测方法、装置及设备 Active CN112000543B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010745416.1A CN112000543B (zh) 2020-07-29 2020-07-29 一种存储***的时延性能检测方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010745416.1A CN112000543B (zh) 2020-07-29 2020-07-29 一种存储***的时延性能检测方法、装置及设备

Publications (2)

Publication Number Publication Date
CN112000543A true CN112000543A (zh) 2020-11-27
CN112000543B CN112000543B (zh) 2023-03-31

Family

ID=73462523

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010745416.1A Active CN112000543B (zh) 2020-07-29 2020-07-29 一种存储***的时延性能检测方法、装置及设备

Country Status (1)

Country Link
CN (1) CN112000543B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023123956A1 (zh) * 2021-12-31 2023-07-06 郑州云海信息技术有限公司 一种io全生命周期时延监测方法及相关装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108519863A (zh) * 2018-04-12 2018-09-11 郑州云海信息技术有限公司 一种存储***的io管理方法及装置
CN109614213A (zh) * 2018-12-06 2019-04-12 优信拍(北京)信息科技有限公司 一种车辆信息审核方法及装置
CN109656789A (zh) * 2017-10-12 2019-04-19 阿里巴巴集团控股有限公司 Io性能检测方法及***
CN109859035A (zh) * 2019-02-02 2019-06-07 中国银行股份有限公司 一种应用产品功能测试的数据处理方法、装置及***
CN109992481A (zh) * 2019-04-11 2019-07-09 苏州浪潮智能科技有限公司 一种用于分布式块存储的性能分析工具、方法及存储介质
US10346054B1 (en) * 2017-07-13 2019-07-09 EMC IP Holding Company LLC Policy driven IO scheduler resilient to storage subsystem performance
CN110673798A (zh) * 2019-09-20 2020-01-10 苏州浪潮智能科技有限公司 一种存储***及其io落盘方法和装置
CN110750413A (zh) * 2019-09-06 2020-02-04 深圳平安通信科技有限公司 多机房温度报警方法、装置及存储介质
CN111190541A (zh) * 2019-12-26 2020-05-22 天津中科曙光存储科技有限公司 存储***的流控方法以及计算机可读存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10346054B1 (en) * 2017-07-13 2019-07-09 EMC IP Holding Company LLC Policy driven IO scheduler resilient to storage subsystem performance
CN109656789A (zh) * 2017-10-12 2019-04-19 阿里巴巴集团控股有限公司 Io性能检测方法及***
CN108519863A (zh) * 2018-04-12 2018-09-11 郑州云海信息技术有限公司 一种存储***的io管理方法及装置
CN109614213A (zh) * 2018-12-06 2019-04-12 优信拍(北京)信息科技有限公司 一种车辆信息审核方法及装置
CN109859035A (zh) * 2019-02-02 2019-06-07 中国银行股份有限公司 一种应用产品功能测试的数据处理方法、装置及***
CN109992481A (zh) * 2019-04-11 2019-07-09 苏州浪潮智能科技有限公司 一种用于分布式块存储的性能分析工具、方法及存储介质
CN110750413A (zh) * 2019-09-06 2020-02-04 深圳平安通信科技有限公司 多机房温度报警方法、装置及存储介质
CN110673798A (zh) * 2019-09-20 2020-01-10 苏州浪潮智能科技有限公司 一种存储***及其io落盘方法和装置
CN111190541A (zh) * 2019-12-26 2020-05-22 天津中科曙光存储科技有限公司 存储***的流控方法以及计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IRFAN AHMAD ET AL.: "vIC: Interrupt Coalescing for Virtual Machine Storage Device IO" *
曾瀞瑶 等: "高通量计算在大规模人群队列基因组数据解析应用中的挑战" *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023123956A1 (zh) * 2021-12-31 2023-07-06 郑州云海信息技术有限公司 一种io全生命周期时延监测方法及相关装置

Also Published As

Publication number Publication date
CN112000543B (zh) 2023-03-31

Similar Documents

Publication Publication Date Title
US9672085B2 (en) Adaptive fault diagnosis
CN102099795B (zh) 运用管理装置、运用管理方法和运用管理程序
US8078913B2 (en) Automated identification of performance crisis
US20160217378A1 (en) Identifying anomalous behavior of a monitored entity
CN111045894B (zh) 数据库异常检测方法、装置、计算机设备和存储介质
CN105955876B (zh) 一种数据监控处理方法以及装置
CN114443441B (zh) 一种存储***管理方法、装置、设备及可读存储介质
CN112000543B (zh) 一种存储***的时延性能检测方法、装置及设备
CN111090593A (zh) 确定崩溃归属的方法、装置、电子设备及存储介质
KR102158100B1 (ko) 이상 감지를 이용한 모니터링 자동화 방법 및 장치
CN110837529B (zh) 大数据分析监察方法、装置、服务器及可读存储介质
JP2015035160A (ja) 監視データ記憶装置、監視データ記憶方法およびプログラム
JP2020525944A (ja) バス監視システム、方法および装置
CN110838940A (zh) 地下电缆巡检任务配置方法和装置
CN107643877A (zh) 磁盘故障检测方法以及装置
CN114048085B (zh) 一种磁盘故障分析方法、装置、设备及可读存储介质
CN114298533A (zh) 性能指标处理方法、装置、设备和存储介质
CN115189961A (zh) 一种故障识别方法、装置、设备及存储介质
JP6627258B2 (ja) システムモデル生成支援装置、システムモデル生成支援方法、及び、プログラム
CN111506422B (zh) 事件分析方法及***
KR101329976B1 (ko) 리포트 생성 방법 및 시스템
CN112860469A (zh) 一种卡顿日志信息收集方法、装置、设备及存储介质
CN110019233B (zh) 数据存储方法及***
JP2001273172A (ja) コンピュータ稼働データ記録システム及びそのシステムに用いる記録媒体
CN113312197A (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
GR01 Patent grant
GR01 Patent grant