CN108121643A - 窗口偏差分析仪 - Google Patents

窗口偏差分析仪 Download PDF

Info

Publication number
CN108121643A
CN108121643A CN201710915946.4A CN201710915946A CN108121643A CN 108121643 A CN108121643 A CN 108121643A CN 201710915946 A CN201710915946 A CN 201710915946A CN 108121643 A CN108121643 A CN 108121643A
Authority
CN
China
Prior art keywords
increment
user
data sample
tolerance limit
value
Prior art date
Application number
CN201710915946.4A
Other languages
English (en)
Inventor
安东尼·瓦洛内
Original Assignee
谷歌有限责任公司
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
Priority to US15/361,565 priority Critical patent/US10157116B2/en
Priority to US15/361,565 priority
Application filed by 谷歌有限责任公司 filed Critical 谷歌有限责任公司
Publication of CN108121643A publication Critical patent/CN108121643A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Abstract

本公开涉及窗口偏差分析仪。一种方法(600)包括:接收从开始时间(204)到结束时间(208)的时间范围内的数据样本(202);确定历史时间窗口(210)内的数据样本的均值/中值;以及确定最近时间窗口(220)内的数据样本的均值/中值。所述方法还包括:基于最近时间窗口内的数据样本的均值/中值与历史时间窗口内的数据样本的均值/中值之间的差值来确定数据样本增量。所述方法还包括:确定数据样本增量是否超过增量容限;以及当数据样本增量超过增量容限时,确定性能衰退。所述方法还包括:将衰退警报(402)传输到用户装置(110)。用户装置被配置为向与该用户装置相关联的用户(10)通知性能衰退。

Description

窗口偏差分析仪

技术领域

[0001] 本公开涉及确定远程系统的性能衰退。

背景技术

[0002] 分布式系统(例如环境)通常包括许多松散稱合的计算机,其中的每一'个计算机 通常包括计算资源(例如一个或多个计算机处理器)和/或存储资源(例如存储器、闪速存储 器和/或磁盘)。分布式存储系统可在存储资源上覆盖存储抽象(例如密钥/值库或文件系 统)。此外,在所述计算机中的一个或多个计算机上运行的服务器进程可将其能力输出到在 其他计算机上运行的客户端进程。所述客户端进程导致在计算资源和/或存储资源上的负 载。分布式系统通常需要进行大量的监控和管理,以提供预期的性能和可靠性。

发明内容

[0003] 当分布式系统仍可运行,但分布式系统的可用容量降级和/或降低时,分布式系统 可能经历性能衰退。创建用于在分布式系统上执行的软件应用程序或服务的开发人员在开 发周期内通常缺乏识别和纠正任何阶段处的性能衰退的工具。因此,开发人员经常在整合 代码的违规部分很久之后才发现性能衰退,由此给开发人员留下艰巨的返回作业任务来跟 踪性能衰退。此项任务是困难且昂贵的,且可能几乎不可能跟踪性能衰退的位置或原因。本 公开提供了用于识别性能衰退的系统和方法。

[0004] 本公开的一个方面提供了一种用于确定性能衰退的方法。所述方法包括:在数据 处理硬件处接收从开始时间到结束时间的时间范围内的数据样本,并且通过数据处理硬件 确定在历史时间窗口内的数据样本的均值/中值,所述历史时间窗口从开始时间延伸到在 开始时间与结束时间之间的中间时间。所述方法还包括:通过数据处理硬件确定最近时间 窗口内的数据样本的均值/中值,所述最近时间窗口从中间时间延伸到结束时间;通过数据 处理硬件基于最近时间窗口内的数据样本的均值/中值与历史时间窗口内的数据样本的均 值/中值之间的差值来确定数据样本增量;以及确定数据样本增量是否超过增量容限。当数 据样本增量超过增量容限时,所述方法包括:通过数据处理硬件确定性能衰退,并将衰退警 报从数据处理硬件传输到与该数据处理硬件通信的用户装置。用户装置被配置为响应于接 收到衰退警报而向与该用户装置相关联的用户通知性能衰退。

[0005] 本公开的实施方案可以包括以下可选特征中的一个或多个。在一些实施方案中, 所述方法包括:在数据处理硬件处从用户装置接收容限配置。所述容限配置可以识别增量 容限类型,并且包括针对所识别的容限类型的用户限定的容限约束。所述方法还可以包括: 通过数据处理硬件基于用户限定的容限约束以及历史时间窗口内的数据样本的均值/中值 来确定所识别的容限类型的增量容限。所识别的容限类型可以包括基于均值的增量容限, 并且用户限定的容限约束可以包括常数项、均值系数或标准偏差系数中的至少一个。所识 别的容限类型还可以包括基于中值的增量容限,并且用户限定的容限约束可以包括常数 项、中值系数或中值绝对偏差系数中的至少一个。接收到的容限配置还可以指示数据样本 增量的方向性偏好,所述方向性偏好包括忽略增加偏好或忽略减少偏好中的一个。

[0006] 在一些实例中,当数据样本增量的方向性偏好包括忽略增加偏好且当数据样本增 量超过增量容限时,所述方法包括:通过数据处理硬件确定数据样本增量是大于零还是小 于零。当数据样本增量大于零时,所述方法可以包括:通过数据处理硬件确定不存在性能衰 退。当数据样本增量小于零时,所述方''法可"以包1括:确定丨生能衰退,并将^衰退警报从数据处 理硬件传输到用户装置。

[0007] 当数据样本增量的方向性偏好包括忽略减少偏好且当数据样本增量超过增量容 限时,所述方法包括:通过数据处理硬件确定数据样本增量是大于零还是小于'零。当数据样 本增量大于零时,所述方法可以包括:确定性能衰退,并将衰退警报从数据处理硬件传输到 用户装置。当数据样本增量小于零时,所述方法可以包括:通过数据处理硬件确定不存在性 能衰退。每个接收到的数据样本可以包括在数据处理硬件上执行的服务从与该数据处理硬 件通信的存储器硬件检索具有指定容量的数据文件所用的持续时间。

[0008] 在一些实例中,所述方法包括:在数据处理硬件处从用户装置接收用于在该数据 处理硬件上执行的服务的更新,并通过数据处理硬件将在开始时间与结束时间之间的中间 时间设定为等于当从用户装置接收到服务更新时的时间。响应于从数据处理硬件接收到衰 退警报,用户装置可以被配置为使衰退通知显示在用户装置上执行的图形用户界面上。衰 退通知可以向与用户装置相关联的用户通知性能衰退。响应于从数据处理硬件接收到衰退 警报,用户装置可以被配置为控制用户装置的一个或多个扬声器以产生与警报信号相关联 的音频信号,所述音频信号向与用户装置相关联的用户通知性能衰退。历史时间窗口和最 近时间窗口可以包括不同的时间,并且大小可以大体上相同。

[0009] 本公开的另一方面提供了一种用于确定性能衰退的系统。所述系统包括分布式系 统的数据处理硬件以及与所述数据处理硬件通信的存储器硬件。存储器硬件存储指令,当 在数据处理硬件上执行时,所述指令致使数据处理硬件执行操作。这些操作包括:接收从开 始时间到结束时间的时间范围内的数据样本;确定在历史时间窗口内的数据样本的均值/ 中值,历史时间窗口从开始时间延伸到在开始时间与结束时间之间的中间时间;以及确定 在最近时间窗口内的数据样本的均值/中值,最近时间窗口从中间时间延伸到结束时间。这 些操作还包括:基于最近时间窗口内的数据样本的均值/中值与历史时间窗口内的数据样 本的均值/中值之间的差值来确定数据样本增量,并确定数据样本增量是否超过增量容限。 当数据样本增量超过增量容限时,这些操作包括:确定性能衰退,并将衰退警报传输到与数 据处理硬件通信的用户装置。用户装置被配置为响应于接收到衰退警报而向与用户装置相 关联的用户通知性能衰退。

[0010] 在一些实施方案中,这些操作包括:从用户装置接收容限配置,并基于用户限定的 容限约束以及历史时间窗口内的数据样本的均值/中值来确定所识别的容限类型的增量容 限。容限配置可以识别增量容限类型,并且包括针对所识别的容限类型的用户限定的容限 约束。所识别的容限类型可以包括基于均值的增量容限,并且用户限定的容限约束可以包 括常数项、均值系数或标准偏差系数中的至少一个。所识别的容限类型还可以包括基于中 值的增量容限,并且用户限定的容限约束可以包括常数项、中值系数或中值绝对偏差系数 中的至少一个。所接收到的容限配置还可以指示数据样本增量的方向性偏好,所述方向性 偏好包括忽略增加偏好或忽略减少偏好中的一个。

[0011] 这些操作还可以包括:当数据样本增量的方向性偏好包括忽略增加偏好且当数据 样本增量超过增量容限时,确定数据样本增量是大于零还是小于零。当数据样本增量小于 零时,这些操作可以包括:确定性能衰退,并将衰退警报从数据处理硬件传输到用户装置。 当数据样本增量的方向性偏好包括忽略减少偏好且当数据样本增量超过增量容限时,这些 操作可以包括:通过数据处理硬件确定数据样本增量是大于零还是小于零。当数据样本增 量大于零时,这些操作可以包括:确定性能衰退,并将衰退警报从数据处理硬件传输到用户 装置。当数据样本增量小于零时,这些操作可以包括:确定不存在性能衰退。每个接收到的 数据样本可以包括在数据处理硬件上执行的服务从与该数据处理硬件通信的存储器硬件 检索具有指定容量的数据文件所用的持续时间。

[0012] 在一些实施方案中,这些操作包括:从用户装置接收用于在数据处理硬件上执行 的服务的更新,并将在开始时间与结束时间之间的中间时间设定为等于当从用户装置接收 到服务更新时的时间。响应于从数据处理硬件接收到衰退警报,用户装置可以被配置为使 衰退通知显示在用户装置上执行的图形用户界面上。衰退通知可以向与用户装置相关联的 用户通知性能衰退。响应于从数据处理硬件接收到衰退警报,用户装置可以被配置为控制 用户装置的一个或多个扬声器以产生与警报信号相关联的音频信号。所述音频信号可以向 与用户装置相关联的用户通知性能衰退。历史时间窗口和最近时间窗口可以包括不同的大 小。另外或替代地,历史时间窗口和最近时间窗口可以包括大体上相同的大小。

[0013] 在附图和下面的描述中阐述了本公开的一个或多个实施方案的细节。其他方面、 特征和优点将从描述和附图以及权利要求中变得显而易见。

附图说明

[0014] 图1是用于响应于确定性能衰退而传输衰退警报的示例系统的示意图。

[0015] 图2是从开始时间延伸到中间时间的历史时间窗口内的以及从中间时间延伸到结 束时间的最近时间窗口内的数据样本的示例曲线图的示意图。

[0016] 图3A和图3B示出了用户装置向窗口偏差分析仪传输容限配置以确定增量容限的 示意图。

[0017] 图4A示出了当数据样本增量超过增量容限时窗口偏差分析仪向用户装置传输衰 退警报的示意图。

[0018] 图4B示出了当数据样本增量与方向性偏好相关联时窗口偏差分析仪确定不存在 性能衰退的示意图。

[0019] 图5示出了窗口偏差分析仪响应于确定性能衰退而向用户装置传输衰退警报的示 意图。

[0020] 图6是响应于确定性能衰退而传输衰退警报的实例方法的流程图。

[0021] 图7是执行窗口偏差分析仪的示例计算装置的示意图。

[0022] 各图中的相似附图标记表示相似元件。

具体实施方式

[0023] 窗口偏差分析仪可以针对最近时间窗口中的数据样本分析历史时间窗口内的数 据样本,以便在存在噪声的情况下检测分布式系统上的性能衰退。窗口偏差分析仪可以依 赖于具有由用户限定的值的容限约束来确定容限,当被最近数据样本与历史数据样本的变 化幅度超过时,所述容限致使窗口偏差分析仪检测性能衰退。窗口偏差分析仪可以向用户 (例如开发人员)传输衰退警报,以通知用户检测到的性能衰退。因此,窗口偏差分析伩可以 自动检测性能衰退并通知用户,使得在将与性能衰退相关联的代码的部分完全整合到在分 布式系统上执行的服务/应用程序之前,用户能够纠正性能衰退。

[0024] 参考图1和图2,在一些实施方案中,系统100包括与用户10相关联的用户装置110, 用户10可以经由网络130与远程系统140通信。远程系统140可以是具有可扩展/弹性资源 142的分布式系统(例如云环境)。资源142包括计算资源144和/或存储资源146。远程系统 140可以包括分布式存储系统,其具有用于在其上存储数据文件205的可扩展/弹性非暂时 性数据库150。在一些实例中,远程系统140执行管理对数据库150和存储其上的数据文件 205的访问的一个或多个服务170。所述服务170可以在数据处理硬件700 (图7)上执行。

[0025] 在一些实施方案中,数据处理硬件700执行窗口偏差分析仪(WDA) 160,所述窗口偏 差分析仪160针对曲线图200上的最近时间窗口 220内的数据样本202分析曲线图200上的历 史时间窗口 210内的数据样本202JDA 160可以从用户装置110接收容限配置300,以供WDA 160在确定增量容限时使用。增量容限可以包括与基于均值的增量容限TMean或基于中值的 增量容限TMedian*的一个或基于一些其他度量的增量容限对应的容限类型302 (图3A和3B)。 [0026] 在一些实施方案中,当最近时间窗口220内的数据样本202的均值或中值以超过对 应的基于均值的增量容限Tm_或基于中值的增量容限TMedianW幅度从历史时间窗口 210的 数据样本202的对应的均值或中值偏离时,WDA 160确定远程系统140上的性能衰退。因此, 增量容限可以限定允许分别在历史时间窗口 210和最近时间窗口 220内的数据样本202之间 的一些偏差的阈值。图1示出当WDA 160确定出性能衰退时,WDA 160向用户装置110传输衰 退警报402。用户装置110被配置为响应于接收到衰退警报402而通知用户10性能衰退。在一 些实例中,用户装置110使衰退通知450 (图4A)在装置110上执行的图形用户界面(GUI) 112 上显示,其通知用户10性能衰退。另外或可替代地,用户装置110可以控制一个或多个扬声 器114以产生与衰退警报402相关联的音频信号452 (图4A),从而通知用户10性能衰退。

[0027]图2示出了在从开始时间204到结束时间208的时间范围内由WDA 160接收到的数 据样本202的曲线图200。竖直y轴表示数据202的指定度量,水平x轴表示从左到右增加的时 间。因此,每个数据样本202包括对应的时间戳203 (图1)和数据202的指定度量的对应值。在 一些实例中,指定度量与WDA 160 (和/或服务170)在远程系统140上执行性能测试时测得的 一个或多个性能度量相关联。例如,每个数据样本可以与不同的性能度量的集合相关联,当 单独使用时,所述不同的性能度量彼此之间不可比较。在一个实例中,每个数据样本202的 指定度量对应于服务170从数据库150检索1〇〇兆字节(M®的数据文件205所用的持续时间。 在另一实例中,每个数据样本202的指定度量对应于服务170执行处理(例如算法)的持续时 间。在一些实施方案中,结束时间208对应于当前时间。

[0028] 历史时间窗口 210从开始时间204延伸到在开始时间204和结束时间208之间的中 间时间206。最近时间窗口 220从中间时间206延伸到结束时间2〇8。因此,每个数据样本202 按时间排序并且位于历史时间窗口210或最近时间窗口220中的一个时间窗口内,使得历史 时间窗口 210内的每个数据样本202相比最近时间窗口 220内的数据样本202与更早的时间 (例如,更小的时间戳203)相关联。在一些实例中,历史时间窗口 21〇表示如下时间范围,该 时间范围作为衡量被认为是正常的一组数据样本202的基准。在这些实例中,最近时间窗口 220可以或可以不在历史时间窗口 210结束时立即开始连续。图2的曲线图200示出了历史时 间窗口 210比最近时间窗口 220跨越更长的时间范围。当然,最近时间窗口 220可以在对应的 性能测试继续在WDA 160或服务17〇上执行的同时增加。因此,历史时间窗口 210和最近时间 窗口 220可以包括大体上相同或不同的大小。

[0029] 参考图1和图2,在一些实施方案中,WDA 160确定历史时间窗口 21〇内的数据样本 202的历史均值,并确定最近时间窗口 220内的数据样本202的最近均值。此后,WDA 160基于 最近时间窗口 220内的数据样本2〇2的最近均值与历史时间窗口 210内的数据样本2〇2的历 史均值之间的差值来确定数据样本增量,且然后部分地基于从用户装置110接收到的容限 配置300确定数据样本增量的绝对值是否超过基于均值的增量容限Tm^。当数据样本增量 的绝对值超过Tm_时,WDA 160可以确定性能衰退,并将衰退警告402传输到用户装置110以 通知用户10性能衰退。WDA 160可以根据以下公式计算基于均值的性能衰退:

[0030] RIP= (abs (RMean-HMean) ) >TMean (1A)

[0031] 其中RIP是性能衰退,最近时间窗口 22〇内的数据样本2〇2的最近均值,HMean 是历史时间窗口 210内的数据样本202的均值。用户装置110或与用户装置110相关联的用户 10可以采取适当的行动来消除远程系统140上的性能衰退。

[0032] 在另外的实施方案中,WDA 160确定历史时间窗口 210内的数据样本2〇2的历史中 值,并确定最近时间窗口 220内的数据样本202的最近中值。在这些实施方案中,WDA 160基 于最近时间窗口 220内的数据样本202的最近中值与历史时间窗口 210内的数据样本202的 历史中值之间的差值来确定数据样本增量,且然后部分地基于从用户装置11〇接收到的容 限配置300确定数据样本增量是否超过基于中值的增量容限TMedian。在某些情况下,当数据 样本增量的绝对值超过Tifedian时,WDA 160可以确定性能衰退,并将衰退警告402传输到用户 装置110以通知用户10性能衰退。WDA 160可以根据以下公式计算基于中值的性能衰退:

[0033] RIP= (abs (RMedian-HMedian)) >TMedian (IB)

[0034] 其中,RMedian是最近时间窗口 220内的数据样本202的最近中值,且池此抓是历史时 间窗口 210内的数据样本202的中值。虽然WDA 160可以分别基于历史时间窗口210和最近时 间窗口 220内的数据样本202的均值/中值来确定数据样本增量,但是WDA 160可以确定其他 度量,例如但不限于标准偏差和/或用于确定两个时间窗口 210与220之间是否存在偏差的 与数据样本202相关联的指定度量的百分位数。

[0035] 参考图3A和3B,在一些实施方案中,WDA 160从用户装置110接收容限配置300、 300a-b,其识别增量容限类型302以及用于确定容限类型302所指定的增量容限的一个或多 个容限约束304。容限约束304可以由与用户装置110相关联的用户10限定,以定制WDA 160 确定性能衰退所需的分别在历史时间窗口 210和最近时间窗口 220内的数据样本202之间的 偏差量要多大。例如,容限约束304可以限定最小容限、来自历史时间窗口 210中的数据样本 202的允许变化百分比、并且/或者考虑历史时间窗口 210内的噪声。WDA 160可以基于所述 一个或多个容限约束304和历史时间窗口 210内的数据样本202的均值/中值来确定所识别 的容限类型302的增量容限(例如,TMean*TMedian)。如本文所使用,术语‘历史数据样本202’ 可以用于指代图1和2的曲线图200的历史时间窗口 210内的数据样本202。

[0036] 图3A示出了 WDA 160接收容限配置300a,容限配置300a识别作为基于均值的增量 容限iwa增量容限类型3〇2以及包括常数项Ct、均值系数CMe5an和标准偏差系数CstdB的用 户限定的容限约束304。当WDA 160从用户装置110接收到该容限配置300a时,WDA 160确定 历史数据样本202的历史均值(HMean),确定历史数据样本202的历史标准偏差,并且根据以 下公式确定基于均值的增量容限TMean:

[0037] TMean = CT+ (CMean X HlMean) + (CstdDev X HstdDev) (2A)

[0038] 其中HstdDev是历史数据样本202的历史标准偏差,即,曲线图200的历史时间窗口 210内的数据样本202的标准偏差。

[0039]常数项CT在公式2A内用作固定项,而与CMe5an相关联的第二项和与CStdDev相关联的第 三项可以随历史数据样本202的值而变化。在一些情况下,均值系数〇11_和标准偏差系数 CstdDev中的每一个被设为零,而常数项Ct被设为非零整数。这里,常数项Ct限定基于均值的增 量容限TMe;an的固定容限。当历史数据样本202为相对无噪声时,在公式2A中仅使用Ct来确定 基于均值的增量容限可以是有用的。另一方面,当均值系数0^„和/或标准偏差系数CstdDev 也被设为非零整数时,CT与公式2A的基于均值的增量容限1^„的最小容限相关。当历史数据 样本202与较低的幅度相关联时,CT的值可以限定增量容限。例如,如果延迟操作的典型度 量值为10毫秒(ms),则此延迟的百分之五十(50%)增长可能无法证实性能衰退。因此,将常 数项Ct设为5ms会防止WDA 160确定性能衰退,而不管其他的用户限定约束304 (例如,Cm_ 和/或CStdIfev)被设为什么以供公式2A在计算基于均值的增量容限TMean时使用。图3A示出Ct设 为五⑸。

[0040] 均值系数Cifem可用于基于与历史时间窗口 210内的数据样本202的历史均值恤^的 百分比偏差来设定容限。例如,将均值系数CMean设定为等于0.05的值要求在WDA 160可以证 实性能衰退之前最近时间窗口 220内的数据样本202的最近均值Rifem从历史时间窗口 210内 的数据样本202的历史均值HM_偏离百分之五(5%)以上,S卩,假设CT和CstdDev的值被设为零。 在一些情况下,当历史数据样本202相对无噪声时,常数项CT和标准偏差系数CstdDev可设为 零,而均值系数〇«_可设为非零整数(例如0.05)可以被设为从历史时间窗口210内的 数据样本202的历史均值ftfean变化/偏差的可接受变化/偏差的任意百分比。图3A示出CMean被 设为等于0.05的值。

[0041] 在一些实施方案中,用户限定的约束304包括被设定为非零整数的标准偏差系数 CstdDev,以增加与关于历史时间窗口 210内的数据样本202的历史均值Hlfem的噪声相关联的 容限的量。通常,当常数项CT和/或均值系数CM_也被设为非零整数时,标准偏差系数CstdDev 被设为非零整数。除非保证WDA 160接收到的历史数据样本202具有噪声,否则不推荐在公 式2A中仅使用标准偏差系数CstdDev,这是因为HstdDev可能接近零,且因此对于最近数据样本 202从历史数据样本202的微小变化/偏差变得过于敏感。由于标准偏差的两倍(twice)是用 于限定正态分布中的误差幅度的典型度量,因此标准偏差系数CstdDev可以被设为等于二 (2.0)的推荐值。因此,历史时间窗口 210内的大约百分之九十五(95%)的数据样本202将落 在等于Un/减2 •0乘以HstdDev的范围中。图3A示出CstdDev设为2 • 0。在其他实例中,标准偏 差系数CStd[tev可以包括在从1.0至2.0的范围内的值。

[0042] 图3B示出了 WDA 160接收容限配置300b,其识别作为基于中值的增量容限TMed—的 增量容限类型302以及包括常数项Ct、中值系数Clfedian或中值绝对偏差系数Cmad中的至少一 个的用户限定的容限约束304。当WDA 160从用户装置110接收到容限配置3〇〇b时,WDA 160 确定历史数据样本202的历史中值(ftfedian),确定历史数据样本2〇2的中值绝对偏差,并且根 据以下公式确定基于中值的增量容限Tifedian:

[0043] TMedian = Ct+ (ClUedian X Bfedian) + (CMAD X HmAD) (2B)

[0044] 其中Hmad是历史数据样本202的中值绝对偏差,即,曲线图200的历史时间窗口210 内的数据样本202的中值绝对偏差。

[0045] 与公式2A—样,常数项Ct在公式2B内用作固定项,而与CMedian相关联的第二项和与 Cmad相关联的第三项可以随历史数据样本202的值而变化。在一些情况下,当用户限定的容 限约束304包括设为零的中值系数CMedian和中值绝对偏差系数CMAD,而常数项CT被设为非零 整数时,常数项CT可用作基于中值的增量容限Tlfedian的固定容限。在其他情况下,当用户限 定的容限约束304包括也被设为非零整数的中值系数CMe3dia4P/或中值绝对偏差系数Cmad时, 常数项CT与公式2B的基于中值的增量容限TMedian的最小容限相关联。图3B示出常数项CT被设 为零⑼。

[0046] 中值系数CMedian可用于基于与历史时间窗口 210内的数据样本202的历史中值 ftfedlan的百分比偏差来设定容限。例如,将中值系数CMedian设为等于0.03的值要求在WDA 16〇 可以证实性能衰退之前,最近时间窗口 220内的数据样本2〇2的最近中值RMedian与历史时间 窗口 210内的数据样本202的历史中值HMedian偏离百分之五(3 %)以上,即,假设Ct和Cmad的值 设为零。在某些情况下,当历史数据样本202相对无噪声时,用户限定的容限约束304包括设 为零的常数项Ct和中值绝对偏差系数Cmad以及设为非零整数(例如〇.〇3)的中值系数CMedian。 与公式2A的CMean—样,用户10可以经由容限配置300的用户限定的容限约束304将CMedian设 为从历史时间窗口 210内的数据样本202的历史中值HMedian的可接受变化的任意百分比。图 3B示出Qfedian被设为等于〇 . 03的值。

[0047] 在一些实施方案中,用户限定的约束304包括中值绝对偏差系数Cmad,该中值绝对 偏差系数CMAD设为非零整数,以增加与关于历史时间窗口 21〇内的数据样本2〇2的历史中值 H!fedian的噪声相关联的容限的量。与标准偏差一样,中值绝对偏差类似地提供针对数据202 的分布的变化性测量。然而,中值绝对偏差侧重于中值,并且与标准偏差相比通常提供更可 靠的变化性测量。通常,当常数项Ct和/或中值系数Otedian也被设为非零整数时,中值绝对偏 差系数Cmad被设为非零整数,以用作关于历史中值Hifcdian的误差幅度。除非保证WDA 160接收 的历史数据样本202具有噪声,否则在公式2B中独自地使用中值绝对偏差系数Cmad是不被推 荐的,这是因为Hmad可能接近于零,且因此对最近数据样本2〇2中的微小变化/偏差变得过于 敏感。由于历史时间窗口 210内的所有数据样本202中的一半通常落入可接受噪声水平内, 所以可以将中值绝对偏差系数Cmad设为等于一(1.〇)的推荐值。因此,历史时间窗口21〇内的 数据样本202的约百分之五十(50%)将落入等于ftiediar^P/减1.0乘以Hmad的范围中。图3B示 出Cmad设为1.0。较大的时间窗口受噪声影响较小。因此,在一些实例中,当最近时间窗口 220 的时间范围足够大以至不受噪声影响时,Cmad设为〇.〇。

[0048]参考图4A,在一些实施方案中,WDA 160响应于确定出数据样本增量超过增量容限 而传输衰退警报402。例如,当接收到的容限配置3〇〇指示基于均值的增量容限TMean时, WDA160基于最近时间窗口 220内的数据样本202的最近均值1^^与历史时间窗口 210内的数 据样本202的历史均值Hm_之间的差值来确定基于均值的数据样本增量。此后,WDA 160使 用公式1A来确定数据样本增量是否超过基于均值的增量容限TMean。当数据样本增量(例如, abs (RMean-HMean))超过TMean时,WDA 160确定性能衰退,并随后向用户装置110发送衰退警报 402。衰退警报402指示由ffDA 160确定的性能衰退。在一些实例中,衰退警报402是发送到用 户装置110的电子邮件或文本消息。

[0049] 在一些实例中,响应于从用户装置110接收到衰退警报402,WDA160向与用户装置 110相关联的用户10提供衰退通知450。衰退通知450基于由性能测试返回的数据样本202通 知用户10远程系统140上的性能衰退。在一些实施方案中,用户装置110通过在用户装置110 上执行的GUI 112上显示衰退通知450来提供衰退通知450。另外或可替代地,用户装置110 可以控制一个或多个扬声器114以产生与衰退通知450相关联的音频信号452。也就是说,音 频信号452包括特殊的衰退通知音频信号452,以在用户10需要或不必视觉地观看在GUI 112上的衰退通知450的情况下通知用户1〇远程系统140上的性能衰退。因此,在用户装置 110处接收到的衰退警报402可以促使用户装置110在GUI II2上显示可视的衰退通知450 和/或促使用户装置110控制扬声器114以输出衰退通知音频信号452。

[0050] 在一些情况下,导致最近数据样本202的均值/中值从历史数据样本2〇2的均值/中 值增加或减少的性能测试是期望的,而增加或减少中的另一者可与性能衰退相关联。例如, 当数据样本增量(例如,Rifean-HMean)大于零且因此与从历史数据样本2〇2增加相关联时,WDA 160可以确定不存在性能衰退。相反,当数据样本增量超过增量容限,但小于零并因此与从 历史数据样本202减少相关联时,WDA160可以确定性能衰退。

[0051] 参考图4B,在一些实施方案中,WDA 16〇还从用户装置110接收容限配置3〇0,该容 限配置300除了指示增量容限类型302和一个或多个用户限定的容限约束3〇4之外,还指示 数据样本增量的方向性偏好306。方向性偏好3〇6指定忽略_增加偏好、忽略_减少偏好或根 本没有方向性偏好中的一个。方向性偏好3〇6可以由用户1〇限定,以指示WDA 160在最近数 据样本202的均值/中值在正方向(增加)或负方向(减少)中的一个方向上从历史数据样本 202的均值/中值偏离/变化时确定不存在性能衰退。

[0052] 忽略_减少偏好指示WDA 160对从历史数据样本2〇2减少的最近数据样本202确定 不存在性能衰退,即使偏差的幅度(例如,数据样本增量)超过增量容限(例如,TMeu或 TMedian)。然而,当方向性偏好306包括忽略_减少偏好时,如果最近数据样本202以超过增量 容限的幅度从历史数据样本202增加,则WDA 160仍将确定性能衰退(例如,经由公式1A或公 式 1B)。

[0053] 另一方面,忽略_增加偏好指示WDA 160对从历史数据样本202增加的最近数据样 本202确定不存在性能衰退,即使偏差的幅度(例如,数据样本增量)超过增量容限(例如, TMeanSTMedian)。然而,当方向性偏好306包括忽略_增加偏好时,如果最近数据样本202以超 过增量容限的幅度从历史数据样本202减少,则WDA 16〇仍将确定性能衰退(例如,经由公式 1A或公式1B)。图4B示出方向性偏好306指定忽略_增加偏好。因此,当WDA 160确定数据样本 增量(例如,(Rjfean-fttean)或(RMedian-Hlfcdian))大于零时,WDA 确定不存在性能衰退,尽管数 据样本增量超过了增量容限(例如,TM_STMedian)。因此,WDA ie〇不会向用户装置110传输 衰退警报402。另一方面,如果方向性偏好306替代地指定“无偏好”或忽略j咸少,包括大于 零且超过增量容限的值的相同的数据样本增量将致使WDA 160确定性能衰退,并向用户装 置110传输衰退警报402。

[0054] 图5示出了服务170通过测量从非暂时性数据库15〇检索指定容量的数据文件2〇5 的持续时间并向WDA ie〇报告数据样本202来执行性能测试的示意图500,数据样本202每个 指示与该数据样本202相关联的持续时间和时间戳203。例如,服务170可以提供对从数据库 150检索指定容量的数据文件205的持续时间进行测量的性能测试请求502。在一些实例中, 指定容量包括100MB数据文件205。在其他配置中,性能测试与在服务170上执行的进程的微 基准相关联,其测量服务170执行所述进程的持续时间或测量与执行所述进程相关联的某 些其他度量。服务170可以连续地执行性能测试。

[0055] WDA 160可以绘制(例如,通过图1和2的曲线图200)与在从开始时间204到与当前 时间相关联的结束时间208的时间范围内的每个接收到的数据样本202相关联的持续时间 的值以及时间戳203。时间范围可以在执行性能测试期间随着结束时间208的增加而动态地 增加。在执行性能测试的同时,图5示出了服务170接收来自用户装置110的服务更新504,其 被配置为更新服务170上的版本和/或软件代码。同时,WDA 160设定等于服务170上的服务 更新504的时间戳的中间时间206。在一些实例中,WDA160将服务更新504之前接收到的数据 样本202分布到历史时间窗口 210中(图2),并将服务更新504之后接收到的数据样本202分 布到最近时间窗口 220中(图2)。这里,历史时间窗口 210在开始时间204与中间时间206之间 延伸,而最近时间窗口 220在中间时间206与结束时间208之间延伸。WDA160可以确定历史时 间窗口 210内的数据样本202的均值/中值,并确定最近时间窗口 220内的数据样本202的均 值/中值。

[0056] 在一些实施方案中,WDA 160通过基于最近时间窗口 220内的数据样本202的均值/ 中值与历史时间窗口 210内的数据样本202的均值/中值之间的差值确定数据样本增量来对 服务170上的服务更新504进行基准测试。此后,WDA ie〇基于历史数据样本202的均值/中值 和用户限定的容限约束304 (图3A和3B)来确定数据样本增量是否超过增量容限(例如,TMean 或TMedian)。上文参考图3A和3B描述了增量容限的确定。当数据样本增量大于增量容限时, WDA 160确定性能衰退并向用户装置110发送衰退警报402。因此,WDA 160基于最近数据样 本202的均值/中值从历史数据样本202的均值/中值的变化的幅度来确定服务更新504导致 服务170的性能退化。例如,在服务更新504之后服务170从数据库150检索具有指定容量的 数据文件205的持续时间可能比服务更新504之前的持续时间长。

[0057] 图6提供了确定系统140的性能衰退的方法600的实例操作布置。在方框602处,方 法600包括在数据处理硬件700 (图7)上执行的窗口偏差分析仪(WDA) 160处接收在从开始时 间204到结束时间208的时间范围内的数据样本2〇2,并且在方框6〇4处,通过WDA 16〇确定在 历史时间窗口 210内的数据样本202的均值/中值,所述历史时间窗口 210从开始时间204延 伸到在开始时间204和结束时间208之间的中间时间206。方法600还包括:在方框606处,通 过WDA 160确定在中间时间206与结束时间208之间延伸的最近时间窗口 220内的数据样本 202的均值/中值,并且在方框608处,通过WDA 160基于(例如,最近时间窗口220内的)最近 数据样本202的均值/中值与(例如,历史时间窗口210内的)历史数据样本202的均值/中值 之间的差值来确定数据样本增量(例如,(Rlfean_Hnfean)或(Rjfedian_Hjfedian))。

[0058] 在方框610处,方法600包括通过WDA 160确定数据样本增量是否超过增量容限,例 如使用公式1A或公式1B。在一些实例中,WDA160接收指示容限类型302以及与该容限类型相 关联的一个或多个容限约束304的容限配置300 (图3A和3B)。容限类型302可以包括基于历 史时间窗口 210内的数据样本202的历史均值(Hlfean)以及包括常数项Ct、均值系数CMean或标 准偏差系数Cstdlfev中的至少一个的容限约束304的基于均值的增量容限Tlfean (图3A)。在其他 情况下,容限类型302包括基于历史时间窗口210内的数据样本202的历史中值(HMedian)以及 包括常数项Ct、中值系数CMedian或中值绝对偏差系数CMAD中的至少一个的容限约束304的基 于中值的增量容限TMedian(图⑽。

[0059] 在方框612处,方法600包括当数据样本增量超过增量容限时确定系统140上的性 能衰退,所述方法600。在方框614处,方法600包括将衰退警报402 (图4A)从数据处理硬件 700传输到与用户10相关联的用户装置110。用户装置110与数据处理硬件700通信。例如,数 据处理硬件700可以通过网络130将衰退警报402传输到用户装置110。用户装置11〇被配置 为响应于接收到衰退警报402而通知用户10性能衰退。例如,用户装置110可使衰退通知450 (图4A)显示在用户装置110上执行的图形用户界面(GUI) 112上。另外或可替代地,用户装置 110可以控制用户装置110的一个或多个扬声器114以产生与衰退警报402相关联的音频信 号 452。

[0060] 在一些实施方案中,方法600包括在数据处理硬件700处从用户装置110接收容限 配置300。容限配置300可以识别增量容限类型302并且包括针对所识别的容限类型的用户 限定的容限约束304。方法600还可以包括通过数据处理硬件700基于用户限定的容限约束 304和历史事件窗口 210内的数据样本202的均值/中值来确定所识别的容限类型的增量容 限Indian。所识别的容限类型可以包括基于均值的增量容限Tim并且用户限定的容限约束 304可以包括常数项CT、均值系数C(feanS标准偏差系数CstdDev中的至少一个。此外,方法6〇〇可 以包括使用公式2A计算基于均值的增量容限Tm_。所识别的容限类型还可以包括基于中值 的增量容限TMedian,并且用户限定的容限约束3〇4可以包括常数项CT、中值系数CMedian或中值 绝对偏差系数Cmad中的至少一个。在这种情况下,方法600可以包括使用公式2B计算基于中 值的增量容限TMedian。接收到的容限配置300还可以指示数据样本增量的方向性偏好306,方 向性偏好306包括忽略增加偏好或忽略减少偏好中的一个。

[0061] 在一些实例中,当数据样本增量的方向性偏好306包括忽略增加偏好时,并且当数 据样本增量超过增量容限时,方法600包括通过数据处理硬件700确定数据样本增量是大于 零还是小于零。当数据样本增量大于零时,方法600可以包括通过数据处理硬件700确定不 存在性能衰退。当数据样本增量小于零时,方法600可以包括确定性能衰退并将衰退警报 402从数据处理硬件700传输到用户装置11〇。

[0062] 当数据样本增量的方向性偏好3〇6包括忽略减少偏好时,并且当数据样本增量超 过增量容限时,方法600可以包括通过数据处理硬件7〇〇确定数据样本增量是大于零还是小 于零。当数据样本增量大于零时,方法600可以包括确定性能衰退并将衰退警报402从数据 处理硬件700传输到用户装置11〇。当数据样本增量小于零时,方法600可以包括通过数据处 理硬件700确定不存在性能衰退。每个接收到的数据样本202可以包括在数据处理硬件700 上执行的从与该数据处理硬件700通信的存储器硬件中检索具有指定容量的数据文件205 的服务的持续时间。

[0063] 在一些实例中,方法600包括在数据处理硬件7〇〇处从用户装置11〇接收用于在数 据处理硬件700上执行的服务的更新,并且通过数据处理硬件700将在开始时间204和结束 时间208之间的中间时间206设定为等于当从用户装置接收到该用于服务的更新的时 间。响应于从数据处理硬件7〇〇接收到衰退警报402,用户装置110可以被配置为使衰退通知 450显示在用户装置110上执行的图形用户界面112上。衰退通知450可以通知与用户装置 110相关联的用户10性能衰退。响应于接收到来自数据处理硬件700的衰退警报402,用户装 置110可以被配置为控制用户装置110的一个或多个扬声器114以产生与警报信号相关联的 音频信号452,所述音频信号452通知与用户装置110相关联的用户10性能衰退。历史时间窗 口 210和最近时间窗口 220可以包括不同的时间,并且大小可以基本相同。

[0064]图7是可以用于实现本文献中描述的系统和方法的数据处理硬件(例如,计算装 置)700的实例的示意图。数据处理硬件700旨在表示各种形式的数字计算机,例如笔记本电 脑、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他合适的计算机。这里 所示的部件、其连接和关系以及其功能仅仅是示例性的,并不旨在限制本文献中描述和/或 要求保护的发明的实施方案。

[0065] 数据处理硬件700包括处理器750、存储器720、存储装置730、连接到存储器720和 高速扩展端口 750的高速接口 /控制器740、以及连接到低速总线770和存储装置730的低速 接口 /控制器760。部件710、720、730、740、750和760中的每一个使用各种总线互连,并且可 以安装在公共主板上或以其他方式适当地安装。处理器710能够处理用于在计算装置700内 执行的指令,包括存储在存储器720中或存储装置730上的指令,以在外部输入/输出装置 (例如联接到高速接口740的显示器780)上显示GUI的图形信息。在其他实施方案中,可以适 当地使用多个处理器和/或多个总线以及多个存储器和多种类型的存储器。此外,可以连接 多个数据处理硬件装置700,其中每个装置提供必要操作的一部分(例如,作为服务器组、一 组刀片服务器或多处理器系统)。

[0066] 存储器720 (例如,存储器硬件)包括在数据处理硬件700内非暂时性地存储信息的 硬件。存储器720可以是计算机可读介质、易失性存储器单元或非易失性存储器单元。非暂 时性存储器720可以是用于以暂时或永久基础存储程序(例如,指令序列)或数据(例如,程 序状态信息)以供数据处理硬件700使用的物理装置。非易失性存储器存储器的实例包括但 不限于闪速存储器和只读存储器(ROM) /可编程只读存储器(PROM) /可擦除可编程只读存储 器(EPROM) /电可擦除可编程只读存储器(EEPR0M)(例如,通常用于固件,例如引导程序)以 及磁盘或磁带。易失性存储器的实例包括但不限于随机存取存储器(RAM)、动态随机存取存 储器(DRAM)、静态随机存取存储器(SRAM)、相变存储器(PCM)。

[0067] 存储装置730能够为数据处理硬件7〇0提供大容量存储。在一些实施方案中,存储 装置730是计算机可读介质。在各种不同的实施方案中,存储装置730可以是软盘装置、硬盘 装置、光盘装置、或磁带装置、闪速存储器或其他类似的固态存储装置,或者是装置阵列,其 包括呈存储区域网络或其他配置的装置。在另外的实施方案中,计算机程序产品有形地实 现为信息载体。计算机程序产品包括指令,当被执行时,所述指令执行一个或多个方法,例 如上述的方法。信息载体是计算机或机器可读介质,例如存储器720、存储装置730或处理器 710上的存储器。

[0068] 高速控制器740管理计算装置700的带宽密集的操作,而低速控制器760管理较低 带宽密集的操作。这种职责分配仅是示例性的。在一些实施方案中,高速控制器740联接到 存储器720、显示器780 (例如,通过图形处理器或加速器)、以及可接受各种扩展卡(未示出) 的高速扩展端口 750。在一些实施方案中,低速控制器760联接到存储装置730和低速扩展端 口770。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口770 可以联接到一个或多个输入/输出装置,诸如键盘、指示装置、扫描仪等,或着例如通过网络 适配器联接到诸如交换机或路由器等的网络装置。

[0069] 数据处理硬件700可以用多种不同的形式来实现,如图所示。例如,其可以实施为 标准服务器或在一组此类服务器上实施多次、实施为膝上型计算机或实施为机架式服务器 系统的一部分。

[0070] 在一些实施方案中,实现窗口偏差分析仪(WDA) 160和服务170的数据处理硬件700 与用于实现存储数据文件205的数据库150的存储器720中的存储器硬件通信。处理器710执 行WDA 160和服务170。例如,服务170可以在数据库150上执行性能测试,并且WDA160可以接 收数据的样本202,所述数据的样本202每个包括与性能测试相关联的指定度量(例如,持续 时间)以及与对应的数据样本202相关联的时间戳203OWDA 160可以基于时间戳203将数据 样本202分布到历史时间窗口 210和最近时间窗口 220中,并且确定最近时间窗口 220中的数 据样本是否从历史时间窗口210中的数据样本202偏离。如果偏差的幅度大(例如,大于增量 容限),则WDA 160可以确定性能衰退,并将衰退警报402发送到与WDA 160通信的用户装置 110。

[0071] 软件应用程序(S卩,软件资源110s)可以指代使计算装置执行任务的计算机软件。 在一些实例中,软件应用程序可以被称为“应用程序”、“app”或“程序”。应用程序的实例包 括但不限于移动应用程序、系统诊断应用程序、系统管理应用程序、系统维护应用程序、文 字处理应用程序、电子表格应用程序、消息传递应用程序、媒体流应用程序、社交网络应用 程序以及游戏应用程序。

[0072] 存储器硬件llOhm可以是用于在暂时或永久的基础上存储程序(例如,指令序列) 或数据(例如,程序状态信息)以供计算装置U〇hc使用的物理装置。非暂时性存储器llOhm 可以是易失性和/或非易失性可寻址半导体存储器。非易失性存储器的实例包括但不限于 闪速存储器和只读存储器(ROM) /可编程只读存储器(PR〇M) /可擦除可编程只读存储器 (EPR0M) /电可擦除可编程只读存储器(EEPR0M)(例如,通常用于固件,例如引导程序)。易失 性存储器的实例包括但不限于随机存取存储器(_)、动态随机存取存储器(DRAM)、静态随 机存取存储器(SRAM)、相变存储器(PCM)以及磁盘或磁带。

[0073] 本文描述的系统和技术的各种实施方案能够在数字电子和/或光学电路、集成电 路、特别设计的ASIC (专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各 种实施方案能够包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实 施方案,所述可编程系统包括至少一个可编程处理器、至少一个输入装置和至少一个输出 装置,所述可编程处理器可以是专用目的或通用目的的,所述可编程处理器被联接到存储 系统以从该存储系统接收数据和指令以及向该存储系统传输数据和指令。

[0074] 这些计算机程序(也称为程序、软件、软件应用程序或代码)包括用于可编程处理 器的机器指令,并且能够用高级程序和/或面向对象的编程语言和/或用汇编语言/机器语 言实现。如本文所使用,术语“机器可读介质”和“计算机可读介质”是指用于向可编程处理 器提供机器指令和/或数据的任何计算机程序产品、非暂时计算机可读介质、设备和/或装 置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括接收机器指令作为机器可读信 号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数 据的任何信号。 L J在本说明书中描述的过程和逻辑流程能够由执行一个或多个计算机程序的一个 或多T可编程处理器执行,以通过对输入数据进行操作并产生输出来执行功能。所述过程 和逻辑流程还能够由专用逻辑电路(例如,FPGA (现场可编程门阵列)或ASIC (专用集成电 路))来执行。适用于执行计算机程序的处理器包括例如通用和专用的微处理器,以及任何 类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存 储器或这两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指 令和数据的一个或多个存储器装置。通常,计算机还将包括可操作地联接到用于存储数据 的一个或多个大容量存储装置(例如,磁盘、磁光盘或光盘),以从所述大容量存储装置接收 数据或传输数据到所述大容量存储装置或者从所述大容量存储装置接收数据和传输数据 到所述大容量存储装置。然而,计算机不需要具有这样的装置。适于存储计算机程序指令和 数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,例如包括半 导体存储器装置,例如EPROM、EEPROM和闪速存储器件;磁盘,例如内部硬盘或可移动盘;磁 光盘;以及CD ROM和DVD-ROM盘。处理器和存储器能够由专用逻辑电路补充或并入其中。 [0076]为了提供与用户的交互,本公开的一个或多个方面能够在计算机上实现,所述计 算机具有用于向用户显示信息的显示装置,例如CRT (阴极射线管)、LCD (液晶显示器)显示 屏或触摸屏,且任选地具有用户能够通过其向计算机提供输入的键盘和定向装置,例如鼠 标或轨迹球。还能够使用其他类型的装置来提供与用户的交互,例如,提供给用户的反馈能 够是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且能够以任何形式接收 来自用户的输入,包括声音、语音或触觉输入。此外,计算机能够通过向用户所使用的装置 发送文档以及从其接收文档来与用户进行交互;例如,通过响应于从用户的客户端装置上 的网络浏览器接收到的请求,将网页发送到该网络浏览器。

[0077]已经描述了许多实施方式。然而,应当理解,可以在不脱离本公开的精神和范围的 情况下进行各种改性。因此,其他实施方式在在所附权利要求的范围内。

Claims (30)

1. 一种方法,包括: 、,、 在数据处理硬件处接收从开始时间到结束时间的时间范围内的数据样本; 通过所述数据处理硬件确定历史时间窗口内的所述数据样本的均值和中值中的二个, 所述历史时间窗口从所述开始时间延伸到在所述开始时间与所述结束时间之间的中间时 间; 通过所述数据处理硬件确定最近时间窗口内的所述数据样本的均值和中值中的一个, 所述最近时间窗口从所述中间时间延伸到所述结束时间; 通过所述数据处理硬件基于所述最近时间窗口内的所述数据样本的均值和中值中的 一个与所述历史时间窗口内的所述数据样本的均值和中值中的所述一个之间的差值来确 定数据样本增量; 确定所述数据样本增量是否超过增量容限;以及 当所述数据样本增量超过所述增量容限时: 通过所述数据处理硬件确定性能衰退;并且 将衰退警报从所述数据处理硬件传输到与所述数据处理硬件通信的用户装置,所述用 户装置被配置为响应于接收到所述衰退警报而向与所述用户装置相关联的用户通知所述 性能衰退。
2. 根据权利要求1所述的方法,进一步包括: 在所述数据处理硬件处从所述用户装置接收容限配置,所述容限配置识别增量容限类 型并且包括针对所识别的容限类型的用户限定的容限约束;以及 通过所述数据处理硬件基于所述用户限定的容限约束以及所述历史时间窗口内的所 述数据样本的均值和中值中的所述一个来确定所识别的容限类型的所述增量容限。
3. 根据权利要求2所述的方法,其中,所识别的容限类型包括基于均值的增量容限,并 且所述用户限定的容限约束包括常数项、均值系数和标准偏差系数中的至少一个。
4. 根据权利要求3所述的方法,其中,所述基于均值的增量容限计算如下: TMean = Cl+ (CMean X HMean) + (CstdDev X HstdDev) 其中,1^_是所述基于均值的增量容限,Ct是所述常数项,Cm_是所述均值系数,HMean是 所述历史数据样本的均值,CstdDev是标准偏差系数,以及HstdDev是所述历史数据样本的标准 偏差。
5. 根据权利要求2所述的方法,其中,所识别的容限类型包括基于中值的增量容限,并 且所述用户限定的容限约束包括常数项、中值系数和中值绝对偏差系数中的至少一个。
6. 根据权利要求5所述的方法,其中,所述基于中值的增量容限计算如下: TMean = CT+ (CMedian X HMedian) + (CmAD X H|WAd) 其中,Tlfedia^所述基于中值的增量容限,CT是常数项,Otedian是所述中值系数,1心是 所述历史数据样本的中值,Cmad是所述中值绝对偏差系数,Hmad是所述历史数据样本的中值 绝对偏差。
7. 根据权利要求2所述的方法,其中,所接收到的容限配置进一步指示所述数据样本增 量的方向性偏好,所述数据样本增量的所述方向性偏好包括忽略增加偏好或忽略减少偏好 中的一个。
8. 根据权利要求7所述的方法,进一步包括:当所述数据样本增量的所述方向性偏好包 括所述忽略增加偏好且当所述数据样本増量超过所述增量容限时: 通过所述数据处理硬件确定所述数据样本增量是大于零还是小于零; 当所述数据样本增量大于零时,通过所述数据处理硬件确定不存在性能哀退;以及 当所述数据样本增量小于零时: 确定所述性能衰退;并且 将所述衰退警报从所述数据处理硬件传输到所述用户装置。
9. 根据权利要求7所述的方法,进一步包括:当所述数据样本增量的所述方向性偏好包 括所述忽略减少偏好且当所述数据样本增量超过所述增量容限时: 通过所述数据处理硬件确定所述数据样本增量是大于零还是小于零; 当所述数据样本增量大于零时: 确定所述性能衰退;并且 将所述衰退警报从所述数据处理硬件传输到所述用户装置;以及 当所述数据样本增量小于零时,通过所述数据处理硬件确定不存在性能衰退。
10. 根据权利要求1所述的方法,其中,每个接收到的数据样本包括在所述数据处理硬 件上执行的服务从与所述数据处理硬件通信的存储器硬件检索具有指定容量的数据文件 所用的持续时间。
11. 根据权利要求1所述的方法,进一步包括: 一 在所述数据处理硬件处从所述用户装置接收用于在所述数据处理硬件上执行的服务 的更新;以及 通过所述数据处理硬件将在所述开始时间与所述结束时间之间的所述中间时间设定 为等于当从所述用户装置接收到用于所述服务的所述更新时的时间。
12. 根据权利要求1所述的方法,其中,响应于从所述数据处理硬件接收到所述衰退警 报,所述用户装置被配置为渲染衰退通知以显示在所述用户装置上执行的图形用户界面 上,所述衰退通知向与所述用户装置相关联的所述用户通知所述性能衰退。
13. 根据权利要求1所述的方法,其中,响应于从所述数据处理硬件接收到所述衰退警 报,所述用户装置被配置为控制所述用户装置的一个或多个扬声器以产生与所述衰退警报 相关联的音频信号,所述音频信号向与所述用户装置相关联的所述用户通知所述性能衰 退。
14. 根据权利要求1所述的方法,其中,所述历史时间窗口和所述最近时间窗口包括不 同的大小。
15. 根据权利要求1所述的方法,其中,所述历史时间窗口和所述最近时间窗口包括大 体上相同的大小。
16. —种系统,包括: 分布式系统的数据处理硬件; 与所述数据处理硬件通信的存储器硬件,所述存储器硬件存储指令,所述指令当在所 述数据处理硬件上执行时使得所述数据处理硬件执行操作,所述操作包括: 接收从开始时间到结束时间的时间范围内的数据样本; 确定历史时间窗口内的所述数据样本的均值和中值中的一个,所述历史时间窗口从所 述开始时间延伸到在所述开始时间与所述结束时间之间的中间时间; 确定最近时间窗口内的所述数据样本的均值和中值中的一个,所述最近时间窗口从所 述中间时间延伸到所述结束时间; 基于所述最近时间窗口内的所述数据样本的均值和中值中的所述一个与所述^ 史时 间窗口内的所述数据样本的均值和中值中的所述一个之间的差值来确定数据样本增量; 确定所述数据样本增量是否超过增量容限;以及 当所述数据样本增量超过所述增量容限时: 确定^性能果!退;并且 将衰退警报传输到与所述数据处理硬件通信的用户装置,所述用户装置被配置为响应 于接收到所述衰退警报而向与所述用户装置相关联的用户通知所述性能衰退。
17. 根据权利要求16所述的系统,其中,所述操作进一步包括: 从所述用户装置接收容限配置,所述容限配置识别增量容限类型并且包括针对所识别 的容限类型的用户限定的容限约束;以及 基于所述用户限定的容限约束以及所述历史时间窗口内的所述数据样本的均值和中 值中的所述一个来确定所识别的容限类型的所述增量容限。
18. 根据权利要求17所述的系统,其中,所识别的容限类型包括基于均值的增量容限, 并且所述用户限定的容限约束包括常数项、均值系数和标准偏差系数中的至少一个。
19. 根据权利要求18所述的系统,其中,所述基于均值的增量容限计算如下: TMean — Ct+ (ClWean X Hftlean) + (CstdDev 父 HstdDev) 其中,TMear^所述基于均值的增量容限,Ct是所述常数项,CMean是所述均值系数,:^咖是 所述历史数据样本的均值,CstdDev是标准偏差系数,HstdDev是所述历史数据样本的标准偏差。
20. 根据权利要求17所述的系统,其中,所识别的容限类型包括基于中值的增量容限, 并且所述用户限定的容限约束包括常数项、中值系数和中值绝对偏差系数中的至少一个。
21. 根据权利要求20所述的系统,其中,所述基于中值的增量容限计算如下: TMean = Ct+ (CMedian X HMedian) + (CmAD X HmAd) 其中,了^^^是所述基于中值的增量容限,CT是所述常数项,Cfcdian是所述中值系数, 恤^^是所述历史数据样本的中值,cmad是所述中值绝对偏差系数,以及Hmad是所述历史数据 样本的中值绝对偏差。
22. 根据权利要求17所述的系统,其中,所接收到的容限配置进一步指示所述数据样本 增量的方向性偏好,所述数据样本增量的所述方向性偏好包括忽略增加偏好或忽略减少偏 好中的一个。
23. 根据权利要求22所述的系统,其中,所述操作进一步包括:当所述数据样本增量的 所述方向性偏好包括所述忽略增加偏好且当所述数据样本增量超过所述增量容限时: 确定所述数据样本增量是大于零还是小于零; 当所述数据样本增量大于零时,确定不存在性能衰退;以及 当所述数据样本增量小于零时: 确定所述性能衰退;并且 将所述衰退警报从所述数据处理硬件传输到所述用户装置。
24. 根据权利要求22所述的系统,进一步包括:当所述数据样本增量的所述方向性偏好 包括所述忽略减少偏好且当所述数据样本增量超过所述增量容限时: 确定所述数据样本增量是大于零还是小于零; 当所述数据样本增量大于零时: 确定所述性能衰退;并且 将所述衰退警报从所述数据处理硬件传输到所述用户装置;以及 当所述数据样本增量小于零时,确定不存在性能衰退。
25. 根据权利要求I6所述的系统,其中,每个接收到的数据样本包括在所述数据处理硬 件上执行的服务从与所述数据处理硬件通信的存储器硬件检索具有指定容量的数据文件 所用的持续时间。
26. 根据权利要求16所述的系统,其中,所述操作进一步包括: 从所述用户装置接收用于在所述数据处理硬件上执行的服务的更新;以及 将在所述开始时间与所述结束时间之间的所述中间时间设定为等于当从所述用户装 置接收到用于所述服务的所述更新时的时间。
27. 根据权利要求16所述的系统,其中,响应于从所述数据处理硬件接收到所述衰退警 报,所述用户装置被配置为渲染衰退通知以显示在所述用户装置上执行的图形用户界面 上,所述衰退通知向与所述用户装置相关联的所述用户通知所述性能衰退。
28. 根据权利要求16所述的系统,其中,响应于从所述数据处理硬件接收到所述衰退警 报,所述用户装置被配置为控制所述用户装置的一个或多个扬声器以产生与所述衰退警报 相关联的音频信号,所述音频信号向与所述用户装置相关联的所述用户通知所述性能衰 退。
29. 根据权利要求16所述的系统,其中,所述历史时间窗口和所述最近时间窗口包括不 同的大小。
30.根据权利要求16所述的系统,其中,所述历史时间窗口和所述最近时间窗口包括大 体上相同的大小。
CN201710915946.4A 2016-11-28 2017-09-30 窗口偏差分析仪 CN108121643A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/361,565 US10157116B2 (en) 2016-11-28 2016-11-28 Window deviation analyzer
US15/361,565 2016-11-28

Publications (1)

Publication Number Publication Date
CN108121643A true CN108121643A (zh) 2018-06-05

Family

ID=60022185

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710915946.4A CN108121643A (zh) 2016-11-28 2017-09-30 窗口偏差分析仪

Country Status (4)

Country Link
US (1) US10157116B2 (zh)
CN (1) CN108121643A (zh)
DE (1) DE202017105807U1 (zh)
WO (1) WO2018097877A1 (zh)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7437446B2 (en) 2002-09-30 2008-10-14 Electronic Data Systems Corporation Reporting of abnormal computer resource utilization data
US20060130044A1 (en) 2004-12-01 2006-06-15 Alberto Avritzer System and method for triggering software rejuvenation using a customer affecting performance metric
US7577875B2 (en) 2005-09-14 2009-08-18 Microsoft Corporation Statistical analysis of sampled profile data in the identification of significant software test performance regressions
US7620523B2 (en) * 2007-04-30 2009-11-17 Integrien Corporation Nonparametric method for determination of anomalous event states in complex systems exhibiting non-stationarity
US7506312B1 (en) * 2008-01-31 2009-03-17 International Business Machines Corporation Method and system for automatically determining risk areas to retest
US20090217282A1 (en) 2008-02-26 2009-08-27 Vikram Rai Predicting cpu availability for short to medium time frames on time shared systems
CA2760050A1 (en) * 2008-05-13 2009-11-19 Thomas Jefferson University Guanylyl cyclase c qrt-pcr
US8682631B2 (en) * 2009-09-03 2014-03-25 Henry Chung-herng Chang Specifications-driven platform for analog, mixed-signal, and radio frequency verification
US9176759B1 (en) 2011-03-16 2015-11-03 Google Inc. Monitoring and automatically managing applications
US10554077B2 (en) * 2011-12-13 2020-02-04 Schneider Electric USA, Inc. Automated monitoring for changes in energy consumption patterns
JP5848597B2 (ja) 2011-12-21 2016-01-27 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Cmdbを利用したソフトウェア構成値の最適化方法、装置、システムおよびプログラム
US20140325480A1 (en) * 2013-04-29 2014-10-30 SuccessFactors Software Regression Testing That Considers Historical Pass/Fail Events
US9400732B2 (en) 2014-05-20 2016-07-26 Red Hat Israel, Ltd. Performance regression testing in presence of noise
US9645916B2 (en) 2014-05-30 2017-05-09 Apple Inc. Performance testing for blocks of code
US9613197B2 (en) * 2014-11-10 2017-04-04 Wipro Limited Biometric user authentication system and a method therefor

Also Published As

Publication number Publication date
DE202017105807U1 (de) 2018-03-06
US20180150373A1 (en) 2018-05-31
WO2018097877A1 (en) 2018-05-31
US10157116B2 (en) 2018-12-18

Similar Documents

Publication Publication Date Title
US10511485B2 (en) Dynamic virtual network topology discovery engine
AU2014259538B2 (en) Network node failure predictive system
US9497072B2 (en) Identifying alarms for a root cause of a problem in a data processing system
US20160147585A1 (en) Performance anomaly diagnosis
US9158650B2 (en) Mobile application performance management
CN103403686B (zh) 用于根本原因分析的系统和方法
US10360126B2 (en) Response-time baselining and performance testing capability within a software product
US8667334B2 (en) Problem isolation in a virtual environment
US20150294256A1 (en) Scenario modeling and visualization
US20180027002A1 (en) Outlier detection in enterprise threat detection
US20160162346A1 (en) Root cause analysis for service degradation in computer networks
US20150288557A1 (en) Help desk ticket tracking integration with root cause analysis
US7340649B2 (en) System and method for determining fault isolation in an enterprise computing system
US8751623B2 (en) Reduction of alerts in information technology systems
US8407176B2 (en) Data processing method for controlling a network
CN1755644B (zh) 基于程序执行不稳定性状态为软件程序提供自定义产品支持的方法、系统和设备
US10216560B2 (en) Integration based anomaly detection service
US20200195509A1 (en) Policy implementation and management
US8407080B2 (en) Managing and monitoring continuous improvement in information technology services
US20180324199A1 (en) Systems and methods for anomaly detection
WO2014078466A2 (en) Application-level anomaly detection
US9633552B2 (en) Methods, systems, and devices for managing, reprioritizing, and suppressing initiated alarms
US9921877B2 (en) Intelligent auto-scaling
WO2014113586A1 (en) Generating notifications based on user behavior
US10055275B2 (en) Apparatus and method of leveraging semi-supervised machine learning principals to perform root cause analysis and derivation for remediation of issues in a computer environment

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