一种大规模流式数据处理系统的瓶颈节点检测方法与流程

文档序号:12131702阅读:来源:国知局

技术特征:

1.一种大规模流式数据处理系统的瓶颈节点检测方法,其特征在于:本方法所依托的系统,即一种基于模糊逻辑控制的瓶颈检测系统,简称本系统包括初始化单元、节点状态采集单元、模糊推理单元和解模糊单元;

一种大规模流式数据处理系统的瓶颈节点检测方法,具体步骤如下:

步骤1:初始化单元初始化模糊逻辑引擎,设定输入变量的语义化标签及各语义标签的隶属函数,加载模糊规则集,设定推理结果判定参数;

步骤2:节点状态采集单元获取节点状态;

步骤3:模糊推理单元将输入变量模糊化;

步骤4:模糊推理;

步骤5:解模糊,获得判定结果;

至此,步骤1到步骤5,完成了一种大规模流式数据处理系统的瓶颈节点检测方法。

2.根据权利要求1所述的一种大规模流式数据处理系统的瓶颈节点检测方法,其特征还在于:步骤1中,模糊逻辑引擎是实现了模糊逻辑控制语言(FCL)标准(IEC1131-7)以及能进行模糊推理的程序引擎,可使用C++语言实现的fuzzylite以及Java等语言实现的jFuzzylogic;

语义化标签是模糊逻辑使用的“真值”,各个输入值(即节点状态)有自己的语义标签及对应的隶属函数,这些应该在初始化节点设置好,通常记录在一个配置文件中,有模糊逻辑引擎读取并解析;

输入变量的每个语义标签都会对应一个隶属函数,这个函数的值在0~1之间,假设某输入变量x的取值范围为(m,n),函数f(x,v)表示取值为x时对于语义标签v的隶属函数;一般来说,某个语义标签的隶属函数在直角坐标系中为梯形或三角图形;模糊规则集是事先编写的模糊推理的规则集合,模糊逻辑引擎会读取这些规则并解析,用于后面的逻辑推理;

推理结果判定,对于最终的结果我们还需要设置两个阈值:可收缩阈值和可扩展阈值,分别使用threshold_scale_in和threshold_scale_out表示,当解模糊的结果小于threshold_scale_in时即表示当前节点可以回收,当解模糊结果大于threshold_scale_out时表示当前节点需要扩展了。

3.根据权利要求1所述的一种大规模流式数据处理系统的瓶颈节点检测方法,其特征还在于:步骤2要对一个节点进行瓶颈状态判断,需要先获取该节点的当前运行状态,对于流式数据处理集群来说,我们选择节点的CPU使用率、内存占用率、数据元组大小为主的信息;

其中,节点状态用一个元组表示:statusi={Ci,Mi,Si,Missi},分别表示节点i当前的cpu负载,Ci;内存使用率,Mi;处理元组当前处理的数据大小,Si,;最近时间内未及时处理掉的元组数量,Missi

对于所有数据元组都严格在规定范围内处理完成,即不允许超时的流数据处理引擎,如果有元组的处理超时表示系统已经需要扩展了,所以这类引擎在本系统中的Missi的值永远为0,对于允许出现一些容错的流式数据处理引擎则可以在语义标签中为Miss选项设定一组标签和对应的隶属函数;

其中,Ci的范围为0~100,Mi的范围为0~100;Si和Missi的取值范围和应用的具体场景相关。

4.根据权利要求1所述的一种大规模流式数据处理系统的瓶颈节点检测方法,其特征还在于:步骤3中模糊推理单元使用步骤2获取的状态元组,设置模糊逻辑处理引擎的输入量,由定义的隶属函数对输入量进行模糊化,这一步骤可以由模糊逻辑处理引擎完成;输入变量模糊化的具体流程如下:

步骤3.1用一个隶属函数记录变量对于模糊集的隶属程度,对某个输入变量的每一个模糊集需要分别求组隶属程度;

其中,隶属函数,记为μA(x);隶属程度的取值范围为0到1之间的实数;

对某个输入变量的每一个模糊集需要分别求组隶属程度,具体为:

假设有A1,A2,...,An个模糊集,则需要对这n个模糊集分别求隶属度,得到[μA1A2,...,μAn];

步骤3.2对所有输入变量分别求其模糊集的隶属程度。

5.根据权利要求1所述的一种大规模流式数据处理系统的瓶颈节点检测方法,其特征还在于:步骤4中,模糊推理是基于模糊规则的推理,模糊规则的前提,即模糊推理的条件是模糊命题的逻辑组合;模糊规则的结论是表示推理结果的模糊命题,所有模糊命题成立的模糊程度均以相应语言变量定性值的隶属函数来表示,即步骤3所求的模糊化结果。

6.根据权利要求1所述的一种大规模流式数据处理系统的瓶颈节点检测方法,其特征还在于:步骤4,具体为:

步骤4.1模糊推理单元计算每条模糊规则的结论;使用步骤3得到的模糊化结果计算规则前提部分模糊命题的逻辑组合,并将前提逻辑组合的隶属程度与结论命题的隶属函数做min运算,求得结论的模糊程度;

步骤4.2对步骤4.1中所有模糊规则的结论的模糊程度做max运算,得到模糊推理结果;

至此,模糊逻辑引擎已提供完备的模糊推理实现,我们只需要定义好模糊规则集,即可调用引擎提供的接口获得推理结果。

7.根据权利要求1所述的一种大规模流式数据处理系统的瓶颈节点检测方法,其特征还在于:

步骤4得到的是结果的模糊集的一组隶属度的值,我们要对这一组结果进行解模糊得到一个节点是否处于瓶颈状态的结论,优选的解模糊方法有最大隶属度方法、加权平均法和重心法(the Center of Gravity,COG);最大隶属度方法即取所有结果中隶属度最大的那个结果作为最终的判定结果,这种方法实现简单但精度较差;更常用的是COG,COG方法通过计算结果集的重心位置作为结果;

模糊逻辑引擎中实现了多种解模糊算法,例如jFuzzylogic中只需要在配置文件中指定DEFUZZIFY METHOD的值为COG既可使用重心法解模糊了;重心法解模糊的结果是一个数值,同于与初始化阶段设置的两个阈值比较,得到最终是应该扩展、应该收缩还是保持不变的决策。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1