CN110990236A - 一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法 - Google Patents

一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法 Download PDF

Info

Publication number
CN110990236A
CN110990236A CN201910949267.8A CN201910949267A CN110990236A CN 110990236 A CN110990236 A CN 110990236A CN 201910949267 A CN201910949267 A CN 201910949267A CN 110990236 A CN110990236 A CN 110990236A
Authority
CN
China
Prior art keywords
performance
hmrf
performance problem
model
equation
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
CN201910949267.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.)
Shandong University of Science and Technology
Original Assignee
Shandong University of Science and Technology
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 Shandong University of Science and Technology filed Critical Shandong University of Science and Technology
Priority to CN201910949267.8A priority Critical patent/CN110990236A/zh
Publication of CN110990236A publication Critical patent/CN110990236A/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/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/3452Performance evaluation by statistical analysis
    • 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/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法,研究基于隐马尔科夫随机场HMRF的SaaS软件性能问题识别模型,利用HMRF构建性能问题的最大后验概率MAP估计模型;建立MAP估计和HNN能量的关系,并提供一个更新规则以保证收敛;设计基于期望最大EM的算法获得估计模型的最优参数,基于观察数据在EM框架中递归估计模型参数。本发明的有益效果在于:系统开销小,能够准确识别出性能问题,确实能够协助运维管理人员恢复SaaS软件的服务能力。

Description

一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法
技术领域
本发明属于性能分析技术领域,具体涉及针对面向服务软件运行 时产生的性能问题提出了一种基于隐马尔科夫随机场(HMRF)的识 别方法。
背景技术
SaaS软件将软件以服务的方式提供给用户使用,服务质量(QoS) 无疑是决定用户满意度的决定性因素。性能作为SaaS软件的一种重 要服务质量属性,直接影响了用户的体验。在云计算所提供的可动态 伸缩的运行环境中,如果SaaS软件响应各种服务请求,特别是响应 来自租户的服务请求的平均时间过长,软件服务没有满足服务水平目 标(ServiceLevel Objective,SLO),并丧失可用性时,可称服务出现 了性能问题。当服务出现性能问题时,往往会引发用户不满,严重者 会造成用户流失,使得服务商的业务受损。
因此,在SaaS软件运行过程中,需要运维管理人员能及时、无 遗漏、准确地发现性能问题,并找到其出现的原因,以采取相应的措 施保障系统能够及时将失效服务还原到可用状态,并持续提供高性能 的服务。这种情况下,通过相应的设施不间断地监控并实时地识别与 诊断性能问题,成为实现这种需求的必要条件。
SaaS软件的运行日志是在软件运行时,记录软件自身及其运行 支撑环境的状态、事件、过程或变化踪迹,记录用户的使用行为、发 生的事件、交互的消息等方面信息的数据。软件运行日志被广泛应用 于软件系统管理的各种任务,如软件失效分析、环境分析、用户使用 行为分析等。而当SaaS软件出现性能问题时,被日志记录着的性能 状态信息常常是能够用于分析问题根本原因的重要手段。
然而,利用运行日志识别SaaS软件性能问题,仍然面临着挑战:
(1)SaaS软件及其环境记录的日志中,用于识别性能问题的信 息严重不足。SaaS软件性能问题可能来源于软件本身的缺陷,也可 能来源于运行环境的资源不足,还可能来源于用户的爆炸性的突发请 求,甚至来源于软件所依赖的第三方服务。为了识别性能问题,需要 获取软件和环境各方面信息来综合判断。目前,真实的软件环境中能 够提供的信息常常会有欠缺,影响了性能问题识别的及时性和准确性。
(2)现有的性能问题分析方法在及时性和准确性方面常常难以 达到SaaS软件的要求。传统的基于日志进行性能问题识别和诊断的 方法,一般是依靠运维管理人员从大量且复杂的日志中抽出与性能问 题相关的信息,根据经验对相关日志进行分析,发现系统的运行瓶颈, 并对性能问题进行检测、诊断、定位。然而,由于SaaS软件部署在 云平台环境里,各层次间的应用软件或服务交互频繁,从而导致系统 中各个组件产生海量的日志数据,并且很多是充斥着噪音的多维数据, 这不仅加大了传统方式对SaaS软件性能问题进行识别的难度,而且 降低了识别的及时性和准确性。
为解决上述问题,本发明将针对SaaS软件及其所处云计算环境 的特点,结合对性能问题进行识别和诊断的特定需求,研究一种基于 运行日志分析以自动识别SaaS软件性能问题的方法。该方法是面向 运维管理人员的黑盒式在线性能分析方法,它不需要了解系统代码、 结构和开发情况,就能对运行性能进行管理,及时发现并诊断性能问 题,持续保障SaaS软件的服务质量。
发明内容
本发明的目的在于提供一种基于隐马尔科夫随机场的SaaS软件 性能问题识别方法,本发明以面向服务的SaaS软件为研究目标,构 建了SaaS软件性能问题识别模型,将HMRF算法引入面向服务的软 件性能问题识别问题之中,具体内容包括:1)研究基于隐马尔科夫 随机场HMRF的SaaS软件性能问题识别(二分类)模型,利用HMRF 构建性能问题的最大后验概率MAP估计模型;2)研究SaaS软件性 能问题识别模型的智能求解算法,考虑使用Hopfield神经网络HNN 获得MAP估计,建立MAP估计和HNN能量的关系,并提供一个更 新规则以保证收敛;3)设计基于期望最大EM的算法获得估计模型 的最优参数,基于观察数据在EM框架中递归估计模型参数。基于上 述过程,实现性能问题识别算法,对系统当前的状态做出判断,以达 到帮助运维管理人员及时准确地发现性能问题的目的。本发明的有益 效果在于:提出的方法1)系统开销小,2)能够准确识别出性能问 题,3)确实能够协助运维管理人员恢复SaaS软件的服务能力,4) 对比其它方法,能够更好地识别系统的性能问题。
为实现本发明所述目的采用的技术方案是:基于隐马尔科夫随机 场的SaaS软件性能问题识别方法,包括以下步骤:
步骤1:SaaS软件性能问题识别问题形式化
使St={0,1}表示系统t时刻的SLO({compliance,violation})性 能状态,
Figure BDA0002225040000000041
表示t时刻n个收集的性能指标向量, 其中,mi是第i个指标。在SaaS软件复杂的运行环境下,软件出现性 能问题往往是不可观测的,但是可以通过系统特征参数(低级指标, 比如CPU、内存)来推断当前系统的性能状态。这和隐马尔科夫模 型(HiddenMarkovModel,HMM)的隐藏状态一致,将系统的SLO状 态S={0,1}可以表示为HMM的隐藏状态。此外,为了合理地推断隐 藏状态,有必要分析其引起的可观测系统特征参数的变化,将系统的 可观测变量
Figure BDA0002225040000000042
可以表示为HMM的可观测参数。
步骤2:针对第1步对SaaS软件性能问题识别问题的形式化, 设计基于隐马尔科夫随机场的SaaS软件性能问题识别方法 HMRF-PII
(1)通过HMRF构建MAP估计模型。
利用HMRF构建MAP估计模型的过程如下:
1)定义先验势函数
Figure BDA0002225040000000045
以得到
Figure BDA0002225040000000046
L表示
Figure BDA0002225040000000047
的HMRF模型,根据Hammersley-Clifford定理,
Figure BDA0002225040000000048
的先验 概率可以表示为Gibbs分布
Figure BDA0002225040000000043
其中,Z2是正态常数,
Figure BDA0002225040000000049
表示总体势函数,是所有邻域系统
Figure BDA0002225040000000044
上势
Figure BDA0002225040000000051
的总和,
Figure BDA0002225040000000052
是标签配置
Figure BDA00022250400000000523
在邻域系统
Figure BDA0002225040000000053
上的势函数。每个 邻域系统
Figure BDA0002225040000000054
内的每一对相邻记录倾向于分到同一个性能问题类簇。 由此,
Figure BDA0002225040000000055
可以定义为
Figure BDA0002225040000000056
其中,变量
Figure BDA0002225040000000057
表示指示函数
Figure BDA0002225040000000058
wp为邻域 系统
Figure BDA0002225040000000059
中总邻域约束违反的正态权重,对于没有分到同一类簇的相 邻记录给予更多的权重。
2)导出似然概率函数
Figure BDA00022250400000000524
似然函数
Figure BDA00022250400000000525
建模可观测随机场的条件独立性,具有 Gaussian分布
Figure BDA00022250400000000510
每个类可以由其均值向量μl和方差
Figure BDA00022250400000000511
表示。 根据HMRF模型的特征,
Figure BDA00022250400000000512
χ的条件概率可以表示为
Figure BDA00022250400000000513
在公式(3)中,
Figure BDA00022250400000000514
分别表示性能问题类和正常类的方 差。同样地,μl∈{μvc}分别表示性能问题类和正常类的均值。这 里,考虑把
Figure BDA00022250400000000515
作为和概率密度函数(Probability Density Function,PDF)相关联的参数向量。
3)
Figure BDA00022250400000000516
Figure BDA00022250400000000517
相乘,得到后验概率
Figure BDA00022250400000000518
Figure BDA00022250400000000519
不能确定地从x获得,而是估计得到。一种估计
Figure BDA00022250400000000520
的方式是,基 于统计的MAP准则。这种情况的目标是,有一个估计规则产生
Figure BDA00022250400000000521
使下面的后验概率分布
Figure BDA00022250400000000522
最大。考虑HMRF的先验概率(1)和条件概率(3),可以从公式(4)推导 出
Figure BDA0002225040000000061
其中,
Figure BDA0002225040000000062
是常数。通过最小化公式(5),优化并得到
Figure BDA0002225040000000063
(2)通过HNN获得MAP估计。
把性能问题识别问题看作MAP估计问题,利用Hopfield神经网 络(HopfieldNeural Network,HNN)对其进行求解,只需建立公式(5) 与HNN能量之间的关系,并提供更新规则以保证收敛。把公式(5) 中的团势函数
Figure BDA0002225040000000064
视为
Figure BDA0002225040000000065
其中,
Figure BDA0002225040000000066
Figure BDA0002225040000000067
分别表示第s个和第q个神经元的输出,
Figure BDA0002225040000000068
是它们之间 的连接权重,取决于
Figure BDA0002225040000000069
连接强度的取值为
Figure BDA00022250400000000610
其中,wp是和团势函数关联的参数,也是HMRF模型参数。
把公式(7)代入公式(6),得到
Figure BDA00022250400000000611
考虑Potts模型,即Ising模型的泛化,将公式(1)重写为
Figure BDA00022250400000000612
为了用HNN实现HMRF模型,将x解释为网络的初始化(把每 个指标当作是一个神经元)。同样地,可以将μl理解为网络的现状。 因此,可以重写公式(5)为
Figure BDA0002225040000000071
现在问题就变成最小化公式(10)。建立公式(10)和HNN的能量函 数E之间的关系,并提供更新规则以达到E的最小值。为了用HNN实 现公式(10),它的能量函数E可以描述为
Figure BDA0002225040000000072
其中,最后一项是能量损失项,在高增益限制下,可以将其排除,因 此公式(11)可以写成
Figure BDA0002225040000000073
通过适当的系数调整,公式(10)可以等价于最小化E(vt)。
(3)通过EM估计模型参数。
设计基于期望最大(Expectation Maximum,EM)的算法1。在 EM框架中,对HMRF模型参数进行递归估计,以从一组性能指标数 据中得到HRMF模型的最优参数。在HMRF-MAP框架中,x是可观 测数据,
Figure BDA0002225040000000074
是需要估计的不可观测数据。为了估计
Figure BDA0002225040000000075
可观测数据x用 HMRF建模。算法1的目的是基于可观测数据x估计
Figure BDA0002225040000000076
算法从时刻0处最初的任意参数θ0开始,在时刻t处使用参数θt估计性能指标数据的标签。
Figure BDA0002225040000000081
步骤3:根据第2步,对HMRF-PII算法进行完整描述
通过对性能问题识别模型的构建、求解以及参数估计等关键部分 的分析和设计,对性能问题识别算法进行完整的描述。
步骤4:对第3步得到的HMRF-PII算法进行实验验证
(1)评估发明的SaaS软件性能问题识别方法1)是否引入了大 量的系统开销。2)能否准确地识别出性能问题。3)能否帮助运维管 理人员及时做出回应并采取相应的措施以恢复服务能力。
(2)将基于HMRF的性能问题识别方法与基于其它5种常用分 类算法,包括朴素贝叶斯分类器(Naive Bayes,NB)、支持向量机 (Support Vector Machine,SVM)、近邻分类器(KNeighbors Classifier, KNC)、最近质心分类器(Nearest Centroid,NC)以及逻辑回归(Logistic Regression,LR)的性能问题识别方法进行比较。
附图说明
附图1性能问题识别方法框架;
附图2性能问题识别方法的步骤;
附图3性能问题识别方法的系统开销;
附图4HMRF-PII算法的MAP输出;
附图5HMRF-PII方法和人工排查方法的系统响应时间对比。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合定义 /表示/公式及实施示例对本发明作进一步的详细描述。
一、定义SaaS软件性能问题
SaaS软件的性能可以使用一些关键性能指标KPIs来度量,它与 满足用户偏好的服务质量水平有关。KPI可以通过跟踪服务器端用户 请求或测量客户端端到端的响应时间来计算。对于每个KPI,定义一 个服务水平目标(Service Level Objective,SLO)阈值来检查系统是否 健康。SLOs是服务水平协议(Service Level Agreement,SLA)的特定 可度量特征,如响应时间、吞吐量、频率、可用性或质量。这些SLOs 一起用于定义提供者和用户之间的预期服务,并根据服务的紧急程度、 资源和预算而有所不同。SLOs提供了一种定量的方法来定义用户可 以期望从提供者那里得到的服务水平。
通常持续监控在线服务的性能以检查它是否偏离了预定义的服 务水平目标SLO。SLO合规(SLO compliance)表示KPI正常,系统 在相应的时间段内没有性能问题;SLO偏离(SLO violation)表示 KPI超过预定义的SLO阈值,系统被认为已经发生了性能问题。为 了识别和诊断在线服务系统(SaaS软件)的性能问题,在其运行期 间常常收集大量的系统级指标(即低级指标)。通过监控系统来收集 这些低级指标数据,例如CPU利用率、磁盘I/O、网络以及内存使用。 监控通常是周期性的(例如,1min间隔)。监控的每条状态日志记录 都与SLO状态相关联。
对性能问题进行定义,通过度量以下两个指标来完成:
1、平均响应时间
平均响应时间(Average Response Time,ART)反映了用户对软件 响应请求的时间期望。ART越长,服务处理请求越慢,性能越低。 ART计算如下:
Figure BDA0002225040000000101
其中,TrΔt是时间间隔Δt内请求r的响应时间;n是Δt内的请求数目; tri和tsi分别表示第i个的请求的到达时间和服务响应时间。但是,像 平均响应时间这样的度量只在较长的时间段内有效,因为在使用短时 间间隔时,它受到响应时间高的批处理操作(比如报告生成)的影响 较大。因此,本发明寻找一个(1)能够适应用户和操作之间的差异, (2)独立于时间间隔长度的度量。
2、SARatioΔt度量
为了确定服务对请求的响应是否慢了,即是否超出了用户的期望, 本发明为每个服务s计算其在时间段Δt上的一个请求ri的响应时间 TrΔt的平均ARTΔt和标准差σΔt。每当服务s的请求ri的TrΔt大于 ARTΔtΔt时,它被标记为慢,或者:
Figure BDA0002225040000000111
对于这样的定义,本发明构建了一个符合上述描述的性能表征的 度量,即时间间隔Δt上慢请求数目SlowΔt和请求总数目的比率, SARatioΔt(Slow-to-All-requests-ratio):
Figure BDA0002225040000000112
当SARatioΔt>5%时,这意味着,在Δt内,5%的请求的响应时间, 超过了请求总数的响应时间均值和标准差之和,则认为SLO处于偏 离状态,表示软件发生了性能问题。否则,则认为SLO处于合规状 态,表示软件是健康的。
二、根据第一步对SaaS软件性能问题的定义,对性能问题识别 问题进行形式化
使St={0,1}表示系统t时刻的SLO({compliance,violation})性 能状态,
Figure BDA0002225040000000113
表示t时刻n个收集的性能指标向量, 其中,mi是第i个指标。在SaaS软件复杂的运行环境下,软件出现性 能问题往往是不可观测的,但是可以通过系统特征参数(低级指标, 比如CPU、内存)来推断当前系统的性能状态。这和隐马尔科夫模 型(HiddenMarkovModel,HMM)的隐藏状态一致,将系统的SLO状 态S={0,1}可以表示为HMM的隐藏状态。此外,为了合理地推断隐 藏状态,有必要分析其引起的可观测系统特征参数的变化,将系统的 可观测变量
Figure BDA0002225040000000121
可以表示为HMM的可观测参数。 以下是性能问题识别问题的形式化定义:
定义1 X和L是两个随机场,它们的状态空间分别是
Figure BDA0002225040000000122
Figure BDA0002225040000000123
Figure BDA0002225040000000124
表示时刻索引,对
Figure BDA0002225040000000125
Figure BDA0002225040000000126
Figure BDA0002225040000000127
定义2可观测数据集合X=(x1,…,xi,…,xn)对应于收集的性能指 标值的集合,随机变量xi表示指标mi在t时刻的值。使χ作为X的一个 可观测实例,
Figure BDA0002225040000000128
是所有可能实例的集合,有
Figure BDA0002225040000000129
其中,xt表示t时刻n个收集的性能指标值的向量。
定义3隐藏标签集合L=(l1,…,li,…,ln)对应于隐藏的性能状态, 随机变量li表示和指标mi在t时刻的度量值相关的SLO状态。使
Figure BDA00022250400000001210
作为 L的一个配置,
Figure BDA00022250400000001211
是所有可能配置的集合,有
Figure BDA00022250400000001212
其中,lt表示t时刻和X相关的系统性能状态。
定义4邻域约束,意味着每一对相邻的性能状态日志记录
Figure BDA00022250400000001213
倾向于表现相同的SLO性能状态(S),并且独立于过去的、非近邻 的记录。每个隐藏变量li仅和一个SLO性能状态类型内的它的近邻相 关。隐藏状态通过一个邻域系统
Figure BDA00022250400000001214
相互关联。
隐马尔科夫随机场(Hidden Markov Random Field,HMRF)的概 念来源于HMM。HMM可以定义为由马尔可夫链产生的随机过程, 它的状态序列不能直接观测,只能通过观测值序列来推断。假设每个 观测值都是状态序列的随机函数。本发明考虑HMM的一种特殊情况,即潜在的随机过程是一个马尔科夫随机场(Markov Random Field, MRF)而不是一个马尔科夫链,这种情况不再限于一维数据。这种特 殊情况被称为隐马尔科夫随机场。数学上,HMRF模型的特征如下:
(1)可观测随机场。随机场
Figure BDA0002225040000000131
具有有限状态空间
Figure BDA0002225040000000132
给定任意特定的配置
Figure BDA0002225040000000133
每个Xt服从一个已知的条件概率分布 p(xt|lt),和
Figure BDA00022250400000001312
有相同的函数形式,其中
Figure BDA0002225040000000134
是涉及到的参数。
(2)隐藏随机场。随机场
Figure BDA0002225040000000135
是一种潜在的MRF,假 设有限状态空间
Figure BDA00022250400000001313
中的配置l∈L具有先验概率分布P(l),L的状态是不 可观测的。
(3)条件独立性。对任意的
Figure BDA0002225040000000136
随机变量Xt是条件独立的
Figure BDA0002225040000000137
基于以上,写出(L,X)的联合概率分布
Figure BDA0002225040000000138
根据MRF的局部特征,给定Lt的邻域配置
Figure BDA0002225040000000139
则任意一对 (Lt,Xt)的联合概率分布是
Figure BDA00022250400000001310
由此,基于参数集合θ和
Figure BDA00022250400000001311
计算Xt的边缘概率分布
Figure BDA0002225040000000141
其中,
Figure BDA0002225040000000142
这就是隐马尔科夫随机场。
三、针对第二步对SaaS软件性能问题识别问题的形式化,设计 基于隐马尔科夫随机场的SaaS软件性能问题识别方法HMRF-PII
1、通过HMRF构建MAP估计模型
利用HMRF构建MAP估计模型的过程如下:
(1)定义先验势函数
Figure BDA0002225040000000143
以得到
Figure BDA0002225040000000144
L表示
Figure BDA0002225040000000145
的HMRF模型,根据Hammersley-Clifford定理,
Figure BDA0002225040000000146
的先验 概率可以表示为Gibbs分布
Figure BDA0002225040000000147
其中,Z2是正态常数,
Figure BDA0002225040000000148
表示总体势函数,是所有邻域系统
Figure BDA0002225040000000149
上势
Figure BDA00022250400000001410
的总和,
Figure BDA00022250400000001411
是标签配置
Figure BDA00022250400000001412
在邻域系统
Figure BDA00022250400000001413
上的势函数。每个 邻域系统
Figure BDA00022250400000001414
内的每一对相邻记录倾向于分到同一个性能问题类簇。 由此,
Figure BDA00022250400000001415
可以定义为
Figure BDA00022250400000001416
其中,变量
Figure BDA00022250400000001417
表示指示函数
Figure BDA00022250400000001418
wp为邻域 系统
Figure BDA00022250400000001419
中总邻域约束违反的正态权重,对于没有分到同一类簇的相 邻记录给予更多的权重。
(2)导出似然概率函数
Figure BDA00022250400000001420
似然函数
Figure BDA00022250400000001421
建模可观测随机场的条件独立性,具有Gaussian分布
Figure BDA0002225040000000151
每个类可以由其均值向量μl和方差
Figure BDA0002225040000000152
表示。 根据HMRF模型的特征,
Figure BDA0002225040000000153
χ的条件概率可以表示为
Figure BDA0002225040000000154
在公式(10)中,
Figure BDA0002225040000000155
分别表示性能问题类和正常类的方 差。同样地,μl∈{μvc}分别表示性能问题类和正常类的均值。这 里,考虑把
Figure BDA0002225040000000156
作为和概率密度函数(Probability Density Function,PDF)相关联的参数向量。
(3)
Figure BDA0002225040000000157
Figure BDA0002225040000000158
相乘,得到后验概率
Figure BDA0002225040000000159
Figure BDA00022250400000001510
不能确定地从x获得,而是估计得到。一种估计
Figure BDA00022250400000001511
的方式是,基 于统计的MAP准则。这种情况的目标是,有一个估计规则产生
Figure BDA00022250400000001512
使下面的后验概率分布
Figure BDA00022250400000001513
最大。考虑HMRF的先验概率(8)和条件概率(10),可以从公式(11)推 导出
Figure BDA00022250400000001514
其中,
Figure BDA00022250400000001515
是常数。通过最小化公式(12),优化并得到
Figure BDA00022250400000001516
2、通过HNN获得MAP估计
把性能问题识别问题看作MAP估计问题,利用Hopfield神经网 络(HopfieldNeural Network,HNN)对其进行求解,只需建立公式(12) 与HNN能量之间的关系,并提供更新规则以保证收敛。把公式(12) 中的团势函数
Figure BDA0002225040000000161
视为
Figure BDA0002225040000000162
其中,
Figure BDA0002225040000000163
Figure BDA0002225040000000164
分别表示第s个和第q个神经元的输出,
Figure BDA0002225040000000165
是它们之间 的连接权重,取决于
Figure BDA0002225040000000166
连接强度的取值为
Figure BDA0002225040000000167
其中,wp是和团势函数关联的参数,也是HMRF模型参数。
把公式(14)代入公式(13),得到
Figure BDA0002225040000000168
考虑Potts模型,即Ising模型的泛化,将公式(8)重写为
Figure BDA0002225040000000169
为了用HNN实现HMRF模型,将x解释为网络的初始化(把每 个指标当作是一个神经元)。同样地,可以将μl理解为网络的现状。 因此,可以重写公式(12)为
Figure BDA00022250400000001610
现在问题就变成最小化公式(17)。建立公式(17)和HNN的能量函 数E之间的关系,并提供更新规则以达到E的最小值。为了用HNN实 现公式(17),它的能量函数E可以描述为
Figure BDA00022250400000001611
Figure BDA0002225040000000171
其中,最后一项是能量损失项,在高增益限制下,可以将其排除,因 此公式(18)可以写成
Figure BDA0002225040000000172
通过适当的系数调整,公式(17)可以等价于最小化E(vt)。
3、通过EM估计模型参数
设计基于期望最大(Expectation Maximum,EM)的算法1。在 EM框架中,对HMRF模型参数进行递归估计,以从一组性能指标数 据中得到HRMF模型的最优参数。在HMRF-MAP框架中,x是可观 测数据,
Figure BDA0002225040000000173
是需要估计的不可观测数据。为了估计
Figure BDA0002225040000000174
可观测数据x用 HMRF建模。算法1的目的是基于可观测数据x估计
Figure BDA0002225040000000175
算法从时刻0处最初的任意参数θ0开始,在时刻 t处使用参数θt估计性能指标数据的标签。
Figure BDA0002225040000000176
Figure BDA0002225040000000181
四、根据第三步,对HMRF-PII算法进行完整描述
附图2描述了实现性能问题识别方法所需的所有步骤。第1步, 通过训练历史数据得到性能问题识别模型,历史数据是通过监控系统 收集的系统状态数据,处理后满足模型的输入要求;第2步,持续监 控系统状态,在系统运行过程中根据最新数据动态更新模型,使模型 更符合系统当前运行状态;第3步,计算并输出系统当前状态的概率, 如果通过HNN获得的MAP估计值输出“1”,则可以将当前时刻的 性能状态日志记录判别为性能问题。输出结果之后,更新历史性能状 态日志记录空间。
算法2通过对性能问题识别模型的构建、求解以及参数估计等关 键部分的分析和设计,对性能问题识别算法进行了完整的描述。
Figure BDA0002225040000000182
Figure BDA0002225040000000191
五、对HMRF-PII算法进行实验验证
1、实验设计
实验主要关注以下四个研究问题:
RQ1:提出的性能问题识别方法是否引入了大量的系统开销?
这个RQ评估性能问题识别方法的开销。该方法需要实时获取系 统状态,并根据历史状态信息计算当前系统状态的概率。因此,所提 出的识别方法会带来一些开销。本实验是为了验证性能问题识别方法 本身的开销实际上很小。
RQ2:提出的性能问题识别方法能否准确地识别出性能问题?
这个RQ评估性能问题识别方法识别性能问题的能力。在这次评 估中,重点是评估a)所识别的性能问题是否是一个真实的性能问题, b)实际的性能问题是否是由性能问题识别算法识别出来的。本实验 是为了验证性能问题识别方法识别性能问题的能力较强。
RQ3:提出的性能问题识别方法能否帮助运维管理人员及时做出 回应并采取相应的措施以恢复服务能力?
这个RQ通过与人工排查性能问题的方法比较来检验性能问题识 别方法的有效性。这与通过识别方法及时地判别系统当前状况,协助 运维管理人员及时发觉性能问题并采取措施相关。本实验是为了验证 性能问题识别方法在及时恢复服务能力方面占有优势。
RQ4:提出的性能问题识别方法是否比其它方法更有效?
将基于HMRF的性能问题识别方法与基于其它5种常用分类算 法,包括朴素贝叶斯分类器(Naive Bayes,NB)、支持向量机(Support Vector Machine,SVM)、近邻分类器(KNeighbors Classifier,KNC)、 最近质心分类器(Nearest Centroid,NC)以及逻辑回归(Logistic Regression,LR)的性能问题识别方法进行比较。
2、实验结果
RQ1:提出的性能问题识别方法是否引入了大量的系统开销?
为了分析性能问题识别方法的系统开销,评估它对系统服务性能 和CPU资源的影响。随着并发请求的数量从1增加到200,服务的 响应时间逐渐增加,如附图3(a)左图所示。当请求数大于100时,服 务的响应时间会突然增加。相应地,如附图3(b)左图所示的CPU利用率上升到88%,表明节点A不能同时处理这么多请求。事实是节 点A的性能瓶颈导致BOM服务的响应时间发生了巨大的变化。但是 识别方法导致的服务响应时间约为5-15ms,如附图3(a)右图所示,表 明识别方法对服务性能的影响很小(3.5%或更少)。同时,识别方法占用的CPU约为5%,如附图3(b)右图所示,表明识别方法对CPU 资源的占用也很小。
RQ2:提出的性能问题识别方法能否准确地识别出性能问题?
本实验的目的是验证性能问题识别算法识别系统性能状态的能 力。基于HMRF的性能问题识别模型实现了对系统当前健康状态的 实时性能分析,并输出系统性能状态的分类结果。附图4为性能问题 识别模型对IDRAS总数据集中随机样本的识别概率输出。当性能问 题识别模型的概率输出为“1”时,表示当前系统正处于性能出错状 态,给出运维管理人员从哪里开始诊断的意见。
识别结果由IDRAS的性能专家进行评估,该专家具有8年SaaS 软件性能分析经验,对IDRAS基础设施有深入的了解。在本次评估 中,专家着重于评估由本文提出的性能问题识别方法生成的结果数据 是否真实反映了系统存在性能问题,评估结果如表1所示。此外,性 能专家为5个通过SARatio识别的性能问题进一步执行这个评估过程, 以继续验证性能问题识别方法的能力。
表1识别的性能问题评估
Figure BDA0002225040000000211
在评估过程中,注意到所识别的性能问题中有很大一部分是由相 同的事件引起的。这与定义4(时间邻近约束)是一致的。比如,当 来自多个终端用户的合成请求增长,从而导致数据库连接增长时,就 会发生这种情况。本发明的性能问题识别方法对于识别性能问题具有 较高的精确度(88%)。本发明的性能问题识别方法识别的假阳性数 量很低,事实上,它比SARatio识别的假阳性数量要低。此外,SARatio 的通知时间间隔比本发明的性能问题识别方法长,所以它对性能问题 发生的时间范围的指示不太准确。经过评估,专家指出本发明的性能 问题识别方法有足够的能力识别性能问题。
同时,由于没有提供完整的性能问题列表,假阴性分析(即,漏 查的性能问题)是困难的。但是,这对于运维管理人员来说很重要, 因为如果不能及时采取措施来解决漏查的性能问题,可能会导致SaaS 软件服务的失效。幸运的是,本发明的性能问题识别方法识别出的假 阴性数量很低,在识别性能问题(SLO偏离)方面的召回率达到94%。
RQ3:提出的性能问题识别方法能否帮助运维管理人员及时做出 回应并采取相应的措施以恢复服务能力?
本实验的目的是验证性能问题识别方法对运维管理人员及时发 现性能问题确实有效。实验结果如附图5所示。当系统遭遇性能问题 时,它的平均响应时间具有较大值。在不使用本发明的性能问题识别 方法的情况下,由于人工排查问题的时间消耗,会导致降低平均响应 时间的延迟。例如,在2017-11-31 14:49:12,2017-11-31 15:00:23, 2017-11-31 15:08:09,2017-11-31 15:39:35,2017-11-31 15:57:15,响应 时间突然增加,人工排错在降低响应时间上有延迟。在使用本发明的 性能问题识别方法的情况下,系统的平均响应时间能够及时地降低, 并及时地恢复系统的服务能力。
RQ4:提出的性能问题识别方法是否比其他方法更有效?
将基于HMRF的性能问题识别算法,与通过NB,SVM,KNC 以及NC方法实现的性能问题识别算法做对比。为了防止实验结果过 拟合,对IDRAS数据集进行交叉验证,对其进行多次划分,然后根 据不同的比例将其划分为5个不同的训练集和测试集,对其分别进行 实验,计算评估指标F1-score,以5个实验的平均值作为最终评估指 标。评估结果如表2所示,表的最后一行为5次划分得到的数据集的 F1平均值,粗体数据表示最优F1值。
表2识别算法HMRF-PII和其它算法的F1值对比
Figure BDA0002225040000000231
Figure BDA0002225040000000241
朴素贝叶斯包括高斯朴素贝叶斯(GaussianNB,GNB)、多项式 朴素贝叶斯(MultinomialNB,MNB)以及伯努利朴素贝叶斯 (BernoulliNB,BNB)。从表中可以看出,高斯朴素贝叶斯比多项式 和伯努利朴素贝叶斯更有效,本发明的性能问题识别算法是受高斯贝 叶斯和最近质心的启发,算法的效率确实提高了。结果表明,本发明 的性能问题识别算法能更有效地识别系统中的性能问题。这些结果也 证明了本发明的性能问题识别方法作为对IDRAS有用的性能识别工 具的有效性。
本发明中附图1为性能问题识别方法框架;附图2为性能问题识 别方法的步骤;附图3为性能问题识别方法的系统开销;附图4为 HMRF-PII算法的MAP输出;附图5为HMRF-PII方法和人工排查 方法的系统响应时间对比。
本发明的性能问题识别方法:1)具有比较小的系统开销;2)能 够准确地识别一个性能问题发生的时间范围;3)能够协助运维管理 人员恢复SaaS软件的服务能力;4)比基于其它算法的性能问题识别 方法能够更好地识别本文中真实系统的性能问题。

Claims (2)

1.一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法,其特征在于按照以下步骤进行:
步骤1:SaaS软件性能问题识别问题形式化
使St={0,1}表示系统t时刻的SLO性能状态,
Figure FDA0002225039990000011
表示t时刻n个收集的性能指标向量,其中,mi是第i个指标,将系统的SLO状态S={0,1}表示为HMM的隐藏状态,将系统的可观测变量
Figure FDA0002225039990000012
表示为HMM的可观测参数;
步骤2:设计基于隐马尔科夫随机场的SaaS软件性能问题识别方法HMRF-PII
(1)通过HMRF构建MAP估计模型;
利用HMRF构建MAP估计模型的过程如下:
1)定义先验势函数
Figure FDA0002225039990000013
以得到
Figure FDA0002225039990000014
L表示
Figure FDA0002225039990000015
的HMRF模型,
Figure FDA0002225039990000018
的先验概率表示为Gibbs分布
Figure FDA0002225039990000016
其中,Z2是正态常数,
Figure FDA0002225039990000019
表示总体势函数,是所有邻域系统
Figure FDA00022250399900000114
上势
Figure FDA00022250399900000110
的总和,
Figure FDA00022250399900000111
是标签配置
Figure FDA00022250399900000113
在邻域系统
Figure FDA00022250399900000112
上的势函数,每个邻域系统
Figure FDA00022250399900000115
内的每一对相邻记录倾向于分到同一个性能问题类簇;由此,
Figure FDA00022250399900000116
定义为
Figure FDA0002225039990000017
其中,变量
Figure FDA0002225039990000024
表示指示函数
Figure FDA0002225039990000025
wp为邻域系统
Figure FDA0002225039990000026
中总邻域约束违反的正态权重;
2)导出似然概率函数
Figure FDA0002225039990000027
似然函数
Figure FDA0002225039990000028
建模可观测随机场的条件独立性,具有Gaussian分布
Figure FDA0002225039990000029
每个类由其均值向量μl和方差
Figure FDA00022250399900000210
表示,根据HMRF模型的特征,
Figure FDA00022250399900000211
χ的条件概率表示为
Figure FDA0002225039990000021
在公式(3)中,
Figure FDA00022250399900000218
表示性能问题类和正常类的方差,μl∈{μvc}表示性能问题类和正常类的均值,这里,考虑把
Figure FDA00022250399900000219
作为和概率密度函数ProbabilityDensity Function,PDF相关联的参数向量;
3)
Figure FDA00022250399900000212
Figure FDA00022250399900000213
相乘,得到后验概率
Figure FDA00022250399900000215
Figure FDA00022250399900000214
不能确定地从x获得,而是估计得到,一种估计
Figure FDA00022250399900000216
的方式是,基于统计的MAP准则,这种情况的目标是,有一个估计规则产生
Figure FDA00022250399900000217
使下面的后验概率分布
Figure FDA0002225039990000022
最大。考虑HMRF的先验概率(1)和条件概率(3),可以从公式(4)推导出
Figure FDA0002225039990000023
Figure FDA0002225039990000031
其中,
Figure FDA00022250399900000311
是常数,通过最小化公式(5),优化并得到
Figure FDA00022250399900000312
(2)通过HNN获得MAP估计
把性能问题识别问题看作MAP估计问题,利用Hopfield神经网络Hopfield NeuralNetwork,HNN对其进行求解,只需建立公式(5)与HNN能量之间的关系,并提供更新规则以保证收敛,把公式(5)中的团势函数
Figure FDA0002225039990000037
视为
Figure FDA0002225039990000032
其中,
Figure FDA0002225039990000039
Figure FDA00022250399900000310
分别表示第s个和第q个神经元的输出,
Figure FDA00022250399900000313
是它们之间的连接权重,取决于
Figure FDA0002225039990000038
连接强度的取值为
Figure FDA0002225039990000033
其中,wp是和团势函数关联的参数,也是HMRF模型参数;
把公式(7)代入公式(6),得到
Figure FDA0002225039990000034
考虑Potts模型,即Ising模型的泛化,将公式(1)重写为
Figure FDA0002225039990000035
为了用HNN实现HMRF模型,将x解释为网络的初始化,把每个指标当作是一个神经元,同样地,将μl理解为网络的现状,因此,可以重写公式(5)为
Figure FDA0002225039990000036
现在问题就变成最小化公式(10),建立公式(10)和HNN的能量函数E之间的关系,并提供更新规则以达到E的最小值,为了用HNN实现公式(10),它的能量函数E描述为
Figure FDA0002225039990000041
其中,最后一项是能量损失项,在高增益限制下,将其排除,因此公式(11)可以写成
Figure FDA0002225039990000042
通过适当的系数调整,公式(10)可以等价于最小化E(vt);
(3)通过EM估计模型参数
设计基于期望最大(Expectation Maximum,EM)的算法1,在EM框架中,对HMRF模型参数进行递归估计,以从一组性能指标数据中得到HRMF模型的最优参数,在HMRF-MAP框架中,x是可观测数据,
Figure FDA0002225039990000043
是需要估计的不可观测数据,为了估计
Figure FDA0002225039990000044
可观测数据x用HMRF建模,算法1的目的是基于可观测数据x估计
Figure FDA0002225039990000045
算法从时刻0处最初的任意参数θ0开始,在时刻t处使用参数βt估计性能指标数据的标签;
步骤3:对HMRF-PII算法进行完整描述
通过对性能问题识别模型的构建、求解以及参数估计等关键部分的分析和设计,对性能问题识别算法进行完整的描述;
步骤4:对第3步得到的HMRF-PII算法进行实验验证
(1)评估发明的SaaS软件性能问题识别方法;
(2)将基于HMRF的性能问题识别方法与基于其它5种常用分类算法,包括朴素贝叶斯分类器、支持向量机、近邻分类器、最近质心分类器以及逻辑回归的性能问题识别方法进行比较。
2.按照权利要求1所述一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法,其特征在于:所述算法1
输入:训练集D={(X1,l1),…,(Xi,lj),…,(Xk,lk)},
输出:
Figure FDA0002225039990000054
Figure FDA0002225039990000055
1.选择任意初始参数集β0
2.使用SARatioΔt指标初始化类别标签;
3.E-step:计算似然概率分布
Figure FDA0002225039990000056
并通过HNN获得MAP估计
Figure FDA0002225039990000051
4.M-step:计算后验概率分布并更新参数
Figure FDA0002225039990000052
Figure FDA0002225039990000053
5.重复3-5步,直到满足停止条件,即在连续的迭代中参数的变化值落在一个预先定义的正常数∈内。
CN201910949267.8A 2019-10-08 2019-10-08 一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法 Pending CN110990236A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910949267.8A CN110990236A (zh) 2019-10-08 2019-10-08 一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910949267.8A CN110990236A (zh) 2019-10-08 2019-10-08 一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法

Publications (1)

Publication Number Publication Date
CN110990236A true CN110990236A (zh) 2020-04-10

Family

ID=70082049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910949267.8A Pending CN110990236A (zh) 2019-10-08 2019-10-08 一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法

Country Status (1)

Country Link
CN (1) CN110990236A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111935222A (zh) * 2020-07-03 2020-11-13 三体云智能科技有限公司 一种物联网SaaS服务内容确定方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1475987A (zh) * 2003-07-14 2004-02-18 中国科学院声学研究所 语音识别的隐马尔可夫模型边缘化解码数据重建方法
CN105051676A (zh) * 2012-12-14 2015-11-11 若威尔士有限公司 响应端点选择
US9501708B1 (en) * 2015-09-10 2016-11-22 King Fahd University Of Petroleum And Minerals Adaptive sliding windows for text recognition
CN106612289A (zh) * 2017-01-18 2017-05-03 中山大学 一种基于sdn的网络协同异常检测方法
CN109241493A (zh) * 2018-08-09 2019-01-18 北京科技大学 基于马尔可夫随机场和em算法的关键性能指标软测量方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1475987A (zh) * 2003-07-14 2004-02-18 中国科学院声学研究所 语音识别的隐马尔可夫模型边缘化解码数据重建方法
CN105051676A (zh) * 2012-12-14 2015-11-11 若威尔士有限公司 响应端点选择
US9501708B1 (en) * 2015-09-10 2016-11-22 King Fahd University Of Petroleum And Minerals Adaptive sliding windows for text recognition
CN106612289A (zh) * 2017-01-18 2017-05-03 中山大学 一种基于sdn的网络协同异常检测方法
CN109241493A (zh) * 2018-08-09 2019-01-18 北京科技大学 基于马尔可夫随机场和em算法的关键性能指标软测量方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RUI WANG,SHI YING *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111935222A (zh) * 2020-07-03 2020-11-13 三体云智能科技有限公司 一种物联网SaaS服务内容确定方法

Similar Documents

Publication Publication Date Title
US7693982B2 (en) Automated diagnosis and forecasting of service level objective states
KR102118670B1 (ko) Ict 인프라 관리 시스템 및 이를 이용한 ict 인프라 관리 방법
Zhou et al. Empirical analysis of object-oriented design metrics for predicting high and low severity faults
Bodik et al. Fingerprinting the datacenter: automated classification of performance crises
US8078913B2 (en) Automated identification of performance crisis
CN107707431A (zh) 一种面向云平台的数据安全监测方法及系统
Lim et al. Identifying recurrent and unknown performance issues
Pang et al. A Bayesian network model for fault diagnosis of a lock mechanism based on degradation data
Li et al. An adaptive prognostics method based on a new health index via data fusion and diffusion process
CN110990236A (zh) 一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法
CN116909712A (zh) 基于机器学习的智能任务调度系统及其方法
CN115114124A (zh) 主机风险的评估方法及评估装置
Khoshgoftaar et al. Detecting outliers using rule-based modeling for improving CBR-based software quality classification models
Hani et al. Support vector regression for service level agreement violation prediction
Smirnov Intelligent decision support system for the control of complex technical systems
CN113157758A (zh) 定制化异常检测
Kirschenmann et al. Decision dependent stochastic processes
Ramasso et al. Joint prediction of observations and states in time-series: a partially supervised prognostics approach based on belief functions and KNN
CN115375038A (zh) 一种飞机发动机失效模式识别和寿命预测方法
Ibraigheeth et al. Software reliability prediction in various software development stages
JP2016520220A (ja) 隠れ属性モデル推定装置、方法およびプログラム
Febriansyah et al. Outlier detection and decision tree for wireless sensor network fault diagnosis
Wang et al. Health indicator forecasting for improving remaining useful life estimation
Jin et al. Anomaly-detection and health-analysis techniques for core router systems
Cheng et al. RobustTSF: Towards Theory and Design of Robust Time Series Forecasting with Anomalies

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200410

RJ01 Rejection of invention patent application after publication