李 景 林
(贵州民族大学人文科技学院 贵州 贵阳 550025)
大数据环境下的网格动态故障检测研究
李 景 林
(贵州民族大学人文科技学院贵州 贵阳 550025)
摘要研究大数据环境下网格动态故障检测的方法。大数据来源范围广博,数据类型极复杂;数据的广泛性,资源的高度异构和不同地理上的分布,使网格故障发生成为影响系统应用的主要问题。目前网格故障检测方式,不能满足网格动态故障检测需要。利用“灰色预测理论”的算法,依据动态心跳的原理,设计动态故障检测架构,给出了预测模型;提出了网格动态故障检测方法。实验结果证实是有效的和准确的,提出的动态故障检测算法优于静态故障检测算法,解决了大数据环境下网格动态故障检测问题。
关键词大数据网格故障检测研究
0引言
大数据的处理定义为对广泛异构的数据进行抽象的提取和集成,按照一定的标准进行存储,利用数据分析技术对存储的数据进行分析处理,从中提取有用的数据并利用适当的方式将结果提供给用户。可见大数据是有多样性的,也就是大数据的来源非常宽泛,数据类型多种多样,异构性的数据,给大数据的运行和处理带来较多的困难。
由于大数据下的网格环境和位置分布,网格数据资源的异构,以及数据的动态变化,集成了多个不同域的网格资源[1],这些资源为网格应用提供大量的计算。也就是通过网格的计算执行着数量巨大且复杂的应用程序;在不同地域和管理当中,使用着不同的网格资源,其使用机制和安全方法是各异的。多个应用若同时汇集在多个结点资源上,故障有可能会出现在汇集的结点上,因此网格系统较传统的计算平台出错机率更大。
虽然学术界和工程界对网格动态容错做了大量的研究,但在通用的错误检测机制、多样错误的处理策略与应用程序代码相分离机制等方面的研究尚存在问题,没有解决或没有较好的解决方案。因此,在某些专家对网格动态容错机制进行研究的基础上,对网格动态故障检测机制及模型进行了研究,在充分识别网格动态容错技术,依据“灰色预测”的理论,建立一种能有效预测网格资源需求量的模型,作为对已有网格资源的有效补充。在此基础上,对预测模型做了改进,提高了预测模型的预测精度,提出了动态故障检测方法。本方法与Stelling、Abawajy等人的静态层次结构的故障检测方法相比较,解决了网格故障检测的技术难点。提出网格动态故障检测技术。通过实验室进行实验以及实验结果与前人已用静态方法相比较,表明本文提出的方法是有效的、正确的,可以将提出的方法应用于大数据环境下网格的动态故障检测服务。
1固定心跳的故障检测原理
在大数据环境下的网格资源中,一般情况下都采用了“心跳” (Heartbeat) 机制作为监测方法。也就是每一个进程p固定时间向故障检测器发送心跳信源,以说明进程是在正常运行的。在设定的时间间隔te内,如果检测器没有收到其监视进程p的心跳信源,就要怀疑进程p故障了。经过一定的超时时限,还是没有收到进程p的心跳信源,那么进程p可能发生故障(failure)了。
图1 Stelling故障检测架构
Stelling等人曾采用层次结构的故障检测方法,提出层次结构的网格故障检测架构,如图1所示。检测为两层方式,一是数据监视层,二是数据收集层。监视层的工作主要是监视网格主机上的程序,为数据收集层提供心跳的信源;数据收集层一旦接收到信源后,要判定有无故障发生且是哪些部件发生故障,然后告诉主机有发生故障的部件。因为这是简单的两层结构,监视层向所有的数据层收集器发布心跳信息,可能会引起系统流量增加;另外,Stelling等人的故障检测是在静止状态下进行的,不能适应网格动态的变化[2]。针对上述不足,Abawajy补充了故障检测方法,弥补Stelling等人方法的缺陷[3]。故障检测工作交由系列故障监视器去进行,将故障监视器按照三层以上的结构方式进行排列,故障监视器的主要任务就是监视对应的节点,分别在不同的级别实现对应用程序状态的监控,Abawajy这种方法虽然解决了Stelling方法的不足,由于Abawajy结构方式受到静态性质的限制,该方法还是不能够解决网格的动态性故障检测问题。
由于Stelling等人的故障检测方法只能满足扩展性、低流量问题,不能够解决动态性需求。因此,对网格故障的检测,需要系统地设计出网格动态故障检测方法,既满足扩展性和低流量需求,还能满足动态性的要求,也就是能够随网格环境的变化和需要而动态性地改变网格故障检测方法[4]。
2动态故障检测架构原理
根据动态心跳机制的原理[5~7],提出一种基于灰色理论的故障检测方法,建立了动态心跳信息到达时间的预测模型,并作出了检测算法。提出三层动态故障检测架构见图2所示。
图2 三层动态故障检测架构图
消息收集层:将被监视进程的心跳信息到达时间提交至消息判定层,按信息到达顺序进行排序,提供于动态预计层进行动态性预测,供消息判定层决策。
动态预计层:将来自消息收集层的结果提供消息判定层,并预计被监视进程下一次的心跳消息到达时间,将预计情况一并上交。
消息判定层:根据消息收集层和动态预计层提供的信息,对被监视进程的心跳消息进行监控,并以此判定被监视进程有否故障。
3动态故障检测模型
以心跳信息到达时间建立预测模型[8]。根据当前心跳信息的到达时间,预计下一次心跳信息到达的时间[9]如下:
1) 设立心跳信息到达时间序列
为被监视节点每一次出现的心跳信息增加一个序列号。n次连续心跳信息到达的时间原始序列t(0),即:
t(0)=(t(0)(1),t(0)(2),t(0)(3),…,t(0)(n))
(1)
2) 对原始序列t(0)作累加处理(AGO)
得到累加生成序列t(1)为:
t(1)=(t(1)(1),t(1)(2),t(1)(3),…,t(1)(n))
(2)
其中:
(3)
3) 建立GM(1,1)模型
对累加生成序列t(1)立一阶微分方程得如式(4)所示:
(4)
则为信息模型,其中a和b为灰作用量参数。
对信息模型采用最小二阶乘法求解,可得:
(5)
其中:
(6)
并且:
(7)
Tn=[t(0)(2),t(0)(3),t(0)(4),…,t(0)(n)]T
(8)
(9)
4) 下一次心跳信息的到达时间。
(10)
对一阶微分方程GM(1,1)的灰色模型进行修正,补充条件来提高预测精度,建立动态的网格预测模型:
2) K+1时心跳到达后,将序列t(0)中去掉t(0)(1),加入t(0)(K+1),构成新动态预测序列:
建立了新陈代谢的GM(1,1) 模型,因此预测为最近一次心跳消息,能够表明故障检测的动态变化情况。
4网格故障检测算法描述
为便于描述算法,在此给出进程p和q的算法原理过程。p定时向q发送心跳信息,算法如下:
Initializationbegins:
p心跳信息已经到达时刻T[i];
‖T[i]‖= n;
Task1:
在i.Δi时刻,p向q发送心跳信息;
//Δi每次时间间隔
Task2:
在Tm时,
IFj < n
{T [i] = Tm ;
i ++ ;
IF i = n
T(0)=(T(0),T(1),T(2),…,T(n-1));
//将达时间作为原始序列模型
//第n+1次心跳信息到达的时间
}
else
{For (j=0; j T[i]=T[i+1]; T[n-1]=Tm; //改变序列值。在获得n+1时的数据后,对模型进行补充提高 } Task3: 对给出的算法说明如下: Task1:被监视进程上pj的故障检测组件向监视进程qi上的故障检测组件发送心跳信息。 Task3 : qi没有接收pj所发送的信息,就认为pj故障了;若qi收到了pj发送出的信息,qi就会将pj消除。 5实验结果及分析 5.1实验条件 动态故障检测实验由两台异地计算机构成,其配置为:PIV2.4GHz处理器,1GHz内存,操作系统为Linux9。所有消息均采用UserDatagramProtocol协议传送,实验时间为36小时。 5.2实验结果 Chen[10]等人依据质量标准(QoS),与Keceive算法为对比,其动态故障检测算法评价标准为: 1) 故障检测时间:pj发生故障开始到qi已经认为pj故障发生这一时段。 2) 故障出错率:故障检测过程所产生出的误判断出错的多少。 实验一:以心跳消息量数为100,本文算法(Ours)与Chen[9]算法(基于层次结构的静态心跳算法)的故障检测时间比较,结果见图3所示。 图3 本文算法与chen算法比较 实验二:以心跳信息到达时间大小相比较。通过心跳信息量的变化,对故障出错率的影响,结果见图4。 5.3实验解析 由图4可见,故障检测在时间耗费方面,比Chen所消耗的时长要低,解决了流量较低问题。 图4 心跳信息到达时间对出错率的影响 图4表明,随n值的增加故障检测出错率呈下降低的趋势,曲线逐渐趋于直线,故障检测的出错率没有较大的变化,出错率低而平稳,动态地扩展了网格资源。 综上所述,本文提出的网格动态故障检测的方法最终是符合要求的,在心跳消息处理上,也就是发送的消息都是可以收到的。因此以上实验充分证明了大数据环境下网格的动态故障检测方法是有效的和正确的,解决了前述的难点,证实了网格动态故障检测方法满足扩展性、低流量和动态性的要求。 6结语 大数据下的网格系统复杂环境以及广阔地理分布,使得网格应用中故障的发生影响了网格的发展和应用,因此本文根据动态心跳原理,给出动态故障检测基本算法,进行了广域网的实验,验证算法的准确性。实验确定的心跳消息到达时间和平均误差率上,与Stelling、Abawajy等人的故障检测方法作对照,本文实验的心跳消息到达时间方面要少些、误差率小些,解决了扩展性、动态性和低流量问题,可以用于大数据环境下网格的动态故障检测服务。 参考文献 [1] 王涛.基于语义网格的税务信息系统研究[J].计算机应用与软件,2012,29(1):125-127. [2]CheJW,TougS,AguileraMK.OnthequailityOfserviceoffailuredetectors[J].IEEEOnComputers,2008:13-33. [3]ChenW,TouegS.Onthequalityofserviceoffailuredetectors[J].IEEETransactionsonComputers,2008 51(1):61-80. [4] 李景林.网格环境下的故障检测服务研究[J].计算机应用与软件,2010,27(6):120-122,131. [5]JoergDecker,JoergSchneider.HeuristicSchedulingofGridWorkflowsSupportingCo-AllocationandAdvanceReservation[C]//Proc.ofthe7thCCGrid,2007:335-343 [6]StellingP,DematteisC,FosterI,etal.Afaultdetectionserviceforwideareadistributedcomputations[J].ClusterComputing,2009(2):107-118. [7]LanierWatkin,WilliamHRobinson,RaheemBeyah.APassiveSolutiontotheCPUResourceDiscoveryProbleminClusterGridNetworks[J].IEEETransa-ctionsonParallelAndDistriduledSystems,2011(3):1-5. [8] 刘思峰,党耀国,方志耕.灰色系统理论及其应用(第五版)[M].北京:科学出版社,2010. [9] 吴东波,吕君文.一种改进的二次失效检测算法[J].计算机工程与应用,2014,50(14):96-99. [10]Foster.TheGrid:ANewInfrastructurefor21CenturyScience[J].Today,2009(2):45-47. RESEARCH ON DYNAMIC GRID FAULT DETECTION IN BIG DATA ENVIRONMENT Li Jinglin (College of Humaniyes and Sciences,Guizhou Minzu University,Guiyang 550025,Guizhou,China) AbstractWe study the method of dynamic grid fault detection in big data environment.The source range of big data is extensive,the data types are extremely complex; the extensiveness of data,the highly heterogeneous resources and the different geographical distribution make the grid fault occurrence become the major problem affecting system applications.Current grid fault detection mode can not meet the needs of dynamic grid fault detection.We use “grey prediction theory” algorithm and based on the principle of dynamic heartbeat to have designed the dynamic fault detection architecture,and give the prediction model; we propose the dynamic grid fault detection method.Experimental results prove that it is effective and accurate,the proposed dynamic fault detection algorithm outperforms the static fault detection algorithm,it solves the problem of dynamic grid fault detection in big data environment. KeywordsBig dataGridFaultDetectionResearch 收稿日期:2015-01-31。贵州省科学技术基金项目(黔科合J字[2010]2106号)。李景林,教授级高工,主研领域:网格计算,BIM应用,物流技术。 中图分类号TP391 文献标识码A DOI:10.3969/j.issn.1000-386x.2016.06.013