一种确定异常节点的方法、节点及计算机可读存储介质技术

技术编号:21004044 阅读:51 留言:0更新日期:2019-04-30 21:31
本发明专利技术提出了一种确定异常节点的方法,包括:当检测到数据处理时延大于设定阈值时,在向命名空间节点NameNode发送的心跳信息中设置节点异常信息,以供所述NameNode基于所述节点异常信息,定位所述DataNode。本发明专利技术还公开了一种节点及计算机可读存储介质,通过实施上述方案,通过DataNode检测自身的数据处理时延,实现了对HDFS集群异常节点的精确检测,有效提高了HDFS集群异常节点的检测精度;同时通过DataNode在向NameNode发送的心跳信息中设置节点异常信息,有效的提高了NameNode基于节点异常信息对HDFS集群异常节点的定位精度。

【技术实现步骤摘要】
一种确定异常节点的方法、节点及计算机可读存储介质
本专利技术涉及数据处理
,尤其涉及一种确定异常节点的方法、节点及计算机可读存储介质。
技术介绍
随着HDFS(HadoopDistributedFileSystem,海杜普分布式文件系统)集群规模日益变大,HDFS集群中的节点出现故障的概率也随之增加。节点的故障通常并不是指检测到的硬件故障,而更多的原因可能是机器的老化或者是机器负载不均衡,一旦出现这种情况机器会表现出一些异常现象,例如磁盘读写慢和/或网络数据传输慢等异常现象。这类异常现象有些可以通过心跳检测初步判断,有些现象可能会引发心跳丢失,所以要在众多的HDFS集群中的节点中找到有异常现象的节点是非常困难的。目前一般常用的方法是通过心跳时间来判断HDFS集群中是否出现异常节点,但并不能定位哪个节点出现异常。
技术实现思路
本专利技术要解决的技术问题是,现有技术中无法对HDFS集群中的异常节点进行准确检测及定位。本专利技术采用的技术方案是提供一种确定异常节点的方法,应用于数据节点DataNode,所述方法包括:当检测到数据处理时延大于设定阈值时,在向命名空间节点NameNode发送的心跳信息中设置节点异常信息,以供所述NameNode基于所述节点异常信息定位所述DataNode。可选的,所述节点异常信息包括:所述DataNode的标识信息;或者,所述数据处理时延和所述DataNode的标识信息。可选的,所述数据处理时延至少包括以下之一:从接收到报文开始至将所述报文传输至下一DataNode的报文传输时延、从接收到磁盘访问指令开始至完成所述磁盘访问指令对应访问操作的磁盘访问时延;所述检测到数据处理时延大于设定阈值,包括:检测到所述数据处理时延中所包含的任一时延大于设定阈值。可选的,所述磁盘访问指令包括:磁盘写入指令和/或磁盘读取指令。本专利技术还提供一种确定异常节点的方法,应用于NameNode,所述方法包括:接收DataNode发送的心跳信息;在检测到所述心跳信息中携带节点异常信息的情况下,对发出所述心跳信息的所述DataNode进行定位。所述节点异常信息的产生方式:所述DataNode在检测到自身的数据处理时延大于设定阈值时,将所述节点异常信息设置于向NameNode发送的心跳信息中。可选的,所述节点异常信息包括:所述DataNode的标识信息;或者,所述数据处理时延和所述DataNode的标识信息。本专利技术还提供一种数据节点DataNode,所述DataNode包括处理器和存储器;所述处理器用于执行存储器中存储的确定异常节点的程序,以实现以下步骤:当检测到数据处理时延大于设定阈值时,在向命名空间节点NameNode发送的心跳信息中设置节点异常信息,以供所述NameNode基于所述节点异常信息定位所述DataNode。可选的,所述节点异常信息包括:所述DataNode的标识信息;或者,所述数据处理时延和所述DataNode的标识信息。可选的,所述数据处理时延至少包括以下之一:从接收到报文开始,至将所述报文传输至下一DataNode的报文传输时延、从接收到磁盘访问指令开始,至完成所述磁盘访问指令对应访问操作的磁盘访问时延;所述检测到数据处理时延大于设定阈值,包括:检测到所述数据处理时延中所包含的任一时延大于设定阈值。可选的,所述磁盘访问指令包括:磁盘写入指令和/或磁盘读取指令。本专利技术还提供一种命名空间节点NameNode,所述NameNode包括处理器和存储器;所述处理器用于执行存储器中存储的确定异常节点的程序,以实现以下步骤:接收DataNode发送的心跳信息;在检测到所述心跳信息中携带节点异常信息的情况下,对发出所述心跳信息的所述DataNode进行定位。所述节点异常信息的产生方式:所述DataNode在检测到自身的数据处理时延大于设定阈值时,将所述节点异常信息设置于向NameNode发送的心跳信息中。可选的,其特征在于,所述节点异常信息包括:所述DataNode的标识信息;或者,所述数据处理时延和所述DataNode的标识信息。本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的确定异常节点的方法的步骤。采用上述技术方案,本专利技术至少具有下列优点:本专利技术所述一种确定异常节点的方法、节点及存储介质,通过DataNode(数据节点)检测自身的数据处理时延,实现了对HDFS集群异常节点的精确检测,有效提高了HDFS集群异常节点的检测精度;同时通过DataNode在向NameNode(命名空间节点)发送的心跳信息中设置节点异常信息,有效的提高了NameNode基于节点异常信息对HDFS集群异常节点的定位精度。附图说明图1为本专利技术第三至第四实施例的确定异常节点的方法流程图;图2为本专利技术第五实施例的HDFS集群组成结构示意图;图3为本专利技术第五实施例的确定HDFS集群异常节点的方法流程图;图4为本专利技术第六至第七实施例的DataNode组成结构示意图;图5为本专利技术第八至第九实施例的NameNode组成结构示意图。具体实施方式为更进一步阐述本专利技术为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本专利技术进行详细说明如后。在HDFS集群中设有一个或多个NameNode、以及多个DataNode。HDFS集群在接收到客户端发出控制请求指令情况下,执行以下具体操作:当客户端发出控制请求指令时,HDFS集群将携带该控制指令的报文发送至该控制请求指令对应的第一个DataNode,以供第一个DataNode基于接收到的该控制请求指令,执行该控制请求指令对应的操作,并在完成该操作之后,将携带该控制请求指令的报文发送至该控制请求指令对应的下一个DataNode。下一个DataNode基于接收到的该控制请求指令,执行该控制请求指令对应的操作,并在完成该操作之后,将携带该控制请求指令的报文发送至该控制请求指令对应的下一个DataNode,直至该控制请求指令对应的最后一个DataNode基于接收到的该控制请求指令,执行该控制请求指令对应的操作。其中,每个DataNode均以预置的心跳信息发送周期向设定的一个或多个NameNode发送心跳信息,以供NameDode基于心跳信息监控每个DataNode是否异常。当任一DataNode出现异常时,导致异常的DataNode向NameNode发送的心跳时间异常。在DataNode正常情况下,DataNode向NameNode发送的心跳信息的默认发送时间间隔是3秒;当发现心跳信息的发送时间超过十几秒或者几十秒时,则说明HDFS集群中的某个DataNode可能出现异常现象。本专利技术第一实施例,一种确定异常节点的方法,应用于HDFS集群中的DataNode,该方法包括以下具体步骤:步骤S101,当检测到数据处理时延大于设定阈值时,在向NameNode发送的心跳信息中设置节点异常信息,以供NameNode基于节点异常信息定位该DataNode。在本实施例中,对设定阈值不做具体限定,设定阈值可以是工程师根据工程经验设置的检测异常节点的最佳阈值,也可以是通过有限次实验得到的检测异常节点的最佳阈值,也可以是通本文档来自技高网...

【技术保护点】
1.一种确定异常节点的方法,其特征在于,应用于数据节点DataNode,所述方法包括:当检测到数据处理时延大于设定阈值时,在向命名空间节点NameNode发送的心跳信息中设置节点异常信息。

【技术特征摘要】
1.一种确定异常节点的方法,其特征在于,应用于数据节点DataNode,所述方法包括:当检测到数据处理时延大于设定阈值时,在向命名空间节点NameNode发送的心跳信息中设置节点异常信息。2.根据权利要求1所述的方法,其特征在于,所述节点异常信息包括:所述DataNode的标识信息;或者,所述数据处理时延和所述DataNode的标识信息。3.根据权利要求1或2所述的方法,其特征在于,所述数据处理时延至少包括以下之一:从接收到报文开始至将所述报文传输至下一DataNode的报文传输时延、从接收到磁盘访问指令开始至完成所述磁盘访问指令对应访问操作的磁盘访问时延;所述检测到数据处理时延大于设定阈值,包括:检测到所述数据处理时延中所包含的任一时延大于设定阈值。4.根据权利要求3所述的方法,其特征在于,所述磁盘访问指令包括:磁盘写入指令和/或磁盘读取指令。5.一种确定异常节点的方法,其特征在于,应用于NameNode,所述方法包括:接收DataNode发送的心跳信息;在检测到所述心跳信息中携带节点异常信息的情况下,对发出所述心跳信息的所述DataNode进行定位。6.根据权利要求5所述的方法,其特征在于,所述节点异常信息包括:所述DataNode的标识信息;或者,所述数据处理时延和所述DataNode的标识信息。7.一种数据节点DataNode,其特征在于,所述DataNode包括处理器和存储器;所述处理器用于执行存储器中存储的确定HDFS集群异常节点的程序,以实现以下步骤:当检测到数据处理时延大于设定阈值时,在向命名空间节点NameNode发送的心跳信息中设置节点异常...

【专利技术属性】
技术研发人员:吴刚
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1