一种应用性能风险预测方法、装置和系统的制作方法_3

文档序号:9597730阅读:来源:国知局
示例地,由于元组数据中的每个元数据所在的列定义的属性代表一个负载指标, 因此可以为每个元数据所在的列定义的属性创建与其代表的负载指标同名的同名变量,从 而就得到了与所述多个目标负载指标一一对应的多个变量。
[0096] 利用贝叶斯网络结构学习算法处理所述元组数据集,计算所述多个变量之间的影 响关系,示例地,所述影响关系包括影响和被影响,影响包括直接影响和间接影响。所述多 个变量之间的影响关系就是所述多个目标负载指标之间的影响关系,而后根据所述影响关 系生成有向无环图(DirectedAcyclic Graph,简称DAG),在所述有向无环图中包括多个节 点以及所述多个节点之间的影响关系,所述多个节点一一对应所述多个变量,也就相当于 一一对应所述多个目标节点,因此根据所述有向无环图中的多个节点之间的影响关系就可 以看出所述多个目标负载指标之间的影响关系。
[0097] 示例地,以步骤202所示的负载指标为例,可以创建与这些负载指标一一对应的 同名变量,即分别创建变量在线用户数量、吞吐量、CPU使用率、内存使用率、当前http请求 数、堆内存百分比、物理内存百分比、活动线程数、应用性能指数、通配数、http错误、健康、 持续数、当前产生SQL执行数、http请求。
[0098] 利用贝叶斯网络结构学习算法处理与这些变量有关的元组数据集,计算上述多个 变量之间的影响关系,并根据上述多个变量之间的关系生成有向无环图,示例地,该有向无 环图可以如图2B所示,图2B图2A所示的实施例示出的一种有向无环图的示意图,参见图 2B,该有向无环图图中包括与上述多个负载指标一一对应的多个节点,所述多个节点之间 的影响关系即为所述多个负载指标之间的影响关系。
[0099] 另外,上述贝叶斯网络结构学习算法可以采用以下算法中的任意一种:K2, Tabu Search (禁忌搜索)、genetic search (遗传搜索)、LAGD (LookAhead GreeDy,预测贪婪) HillClimbing(爬山)算法、TAN(TreeAugmented Bayes Network,树扩张型贝叶斯网络) 等。上述的几种算法仅为示例性的,包括但不限于此。
[0100] 步骤205,利用等概率分布原则处理所述元组数据集,将所述多个目标负载指标的 每个取值连续的取值区间转换为指定个数的离散取值区间。
[0101] 示例地,为了保障处理性能,需要将取值连续的负载指标的取值范围进行离散化 处理,例如假设http错误的取值范围为连续的5-30,通过离散化处理将该在线用户数量的 取值区间转换为(_inf,5],(5, 20],(20, 30],(30, inf),其中inf表示无穷大。该离散化处 理可以利用等概率分布原则,或者预设的离散算法,例如K-Means算法(一种基于距离的聚 类算法)等。
[0102] 步骤206,利用条件概率表生成算法获取所述有向无环图中每个节点的条件概率 表(Conditional Probabilistic Table,简称 CPT)。
[0103] 其中,所述有向无环图中任一节点的条件概率表包括在所述任一节点对应的目标 负载指标在该目标负载指标的各个离散取值区间中取值的条件概率。以图2B所示的有向 无环图为例,可知通配数(Http_4xx)直接影响http错误(Http_error),示例地,假设http 错误(Http_erro;r)所对应节点的条件概率表如表2所示:
[0106] 如表 2 所示为当通配数 Http_4xx 分别在(-inf,53]、(53, 75]、(75,97]、(97, inf) 四个区间取值的情况下,受通配数直接影响的Http_error对应的在(_inf,10. 5]、(10. 5, 16]、(16, 21. 5]、(21. 5, inf)四个取值区间取值的概率。示例地,当Http_4xx为86时,根据 表2所示的条件概率表可知Http_error在(_inf,10. 5]取值的概率为0· 026,Http_error 在(10. 5,16]取值的概率为0. 025,以此类推。
[0107] 示例地,所述条件概率表生成算法例如可以是SimpleEstimator (简单估计)等算 法。在得到所述有向无环图中每个节点的条件概率表后,将所述有向无环图和所述有向无 环图中每个节点的条件概率表作为所述目标应用的预测分析模型。
[0108] 通过对任一应用执行上述步骤201~步骤206都可以得到该应用对应的预测分析 模型,因此可以通过上述步骤201~步骤206预先获取需要进行监控的各个应用的预测分 析模型,并进行存储,从而在后续对某一应用进行风险预测时直接利用已经建立好的与该 应用对应的预测分析模型。示例地,图2C是本发明实施例提供的另一种应用性能风险预测 方法的流程示意图,参见图2C,风险预测流程如下所示:
[0109] 步骤207,根据待预测的目标应用的标识获取指定负载指标的历史数据。
[0110] 示例地,目标应用的标识例如可以是目标应用的名称或者ID,选取指定负载指标 可以依据以下原则:可以将当前实际能够获取的负载指标作为所述指定负载指标,例如已 经采集到的历史数据的负载指标,或者可以根据已知的各个负载指标的影响关系来确定所 述指定负载指标,例如将对其他负载指标构成直接影响或者间接影响的负载指标作为所述 指定负载指标。
[0111] 从而可以根据目标应用的标识利用上述原则在已存储的各个应用的历史数据中 查找并获取所述目标应用的指定负载指标。
[0112] 步骤208,利用回归算法对所述指定负载指标的历史数据进行处理,得到所述指定 负载指标的变化趋势模型。
[0113] 步骤209,利用所述变化趋势模型获取所述指定负载指标在未来指定时间段内的 平均值。
[0114] 步骤210,根据所述目标应用的标识确定与所述目标应用对应的预测分析模型。
[0115] 示例地,可以根据所述目标应用的名称或者ID在各个应用的预测分析模型中查 找所述目标应用对应的预测分析模型,该预测分析模型中包括表示所述目标应用的各项负 载指标之间的影响关系的有向无环图,以及包括该有向无环图中各个节点对应的负载指标 的条件概率表。
[0116] 步骤211,利用所述预测分析模型确定当所述指定负载指标在所述目标取值区间 取值的情况下,被所述指定负载指标直接影响或者间接影响的每个负载指标在所述每个负 载指标的各个取值区间的概率。
[0117] 示例地,首先,在步骤210中得到的有向无环图中找到所述指定负载指标对应的 节点。
[0118] 其次,可以根据有向无环图中的节点之间的影响关系确定所述指定负载指标直接 影响的负载指标,以及所述指定负载指标间接影响的负载指标,即所述指定负载指标直接 影响的负载指标所影响的负载指标。
[0119] 例如,根据图2B所示的有向无环图可知,通配数直接影响http错误,http错误 直接影响物理内存百分比、http请求以及持续数,而持续数直接影响应用性能指数和当前 http请求数,而http请求直接影响当前产生SQL执行数,其中当前http请求数又直接影响 在线用户数量,因此响物理内存百分比、http请求、持续数、应用性能指数、当前http请求 数、当前产生SQL执行数和在线用户数量均属于被通配数间接影响的负载指标。
[0120] 再次,确定所述指定负载指标在目标取值区间取值的概率为百分之百,即将所述 指定负载指标在所述目标取值区间中取值。
[0121] 在此情况下,利用上述的已确定被直接影响或者间接影响的负载指标的条件概率 表,确定其中的每个负载指标在其各个取值区间的概率。例如,假设所述指定负载指标为通 配数,并且在步骤209中得到的通配数的平均值为88,则根据表2可以确定目标取值区间为 (75,97],从而在此情况下根据hettp_错误、响物理内存百分比、http请求、持续数、应用性 能指数、当前http请求数、当前产生SQL执行数和在线用户数量这些负载指标的条件概率 表,利用贝叶斯定理就可以计算出这些被通配数影响的负载指标在各自的各个取值区间的 概率。
[0122] 示例地,利用贝叶斯定理进行计算,例如:
[0123] 假设负载指标A、B、C存在C影响B,B影响A的关系,构成一个DAG,设P (A | B)为 当B为指定值的时候A为指定值的概率;设P(B|C)为当C为指定值的时候B为指定值的概 率。假设A、B、C的条件概率分布表分别如表3,表4,表5所不:

[0130] 当已知B = x,A = y,则获得C = T的概率按经典贝叶斯定理计算过程如下。
[0132] 从而可求得指定负载指标C = Τ时的概率。
[0133] 例如:计算当A = 1 ;B = 1 ;时C = Τ的概率。
[0134] 求解:
[0135] 首先分解公式(1):
[0139] 查表4得:
[0140] Ρ (Β = 11 C = Τ) =0.3
[0141] P(C = Τ) = 0. 6
[0142] 结果为:
[0143] P(C = T|B = 1,A = 1) = P(B = 1 |C = T)P(C = T) = 0· 3*0. 6 = 0· 18。
[0144] 从而,得
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1