书签 分享 收藏 举报 版权申诉 / 20

一种节点切换方法及装置.pdf

  • 上传人:32
  • 文档编号:5995498
  • 上传时间:2019-04-02
  • 格式:PDF
  • 页数:20
  • 大小:1.28MB
  • 摘要
    申请专利号:

    CN201510749901.5

    申请日:

    2015.11.06

    公开号:

    CN106685676A

    公开日:

    2017.05.17

    当前法律状态:

    实审

    有效性:

    审中

    法律详情:

    实质审查的生效IPC(主分类):H04L 12/24申请日:20151106|||公开

    IPC分类号:

    H04L12/24; H04L12/26; G06F17/30

    主分类号:

    H04L12/24

    申请人:

    中国移动通信集团浙江有限公司

    发明人:

    吴永卫; 张式勤; 汤人杰; 于祥兵

    地址:

    310006 浙江省杭州市环城北路288号

    优先权:

    专利代理机构:

    北京银龙知识产权代理有限公司 11243

    代理人:

    黄灿;胡影

    PDF完整版下载: PDF下载
    内容摘要

    本发明公开了一种节点切换方法及装置,涉及通信技术领域,用以保证业务的连续运行。本发明的方法包括:在利用主管理节点和工作节点进行数据传输时,分别从工作节点中的各监测工作节点获取各监测工作节点与备管理节点之间的通信状态;其中各监测工作节点用于对主管理节点、备管理节点进行监测;根据各监测工作节点与备管理节点之间的通信状态确定备管理节点的工作状态是否正常;若备管理节点的工作状态正常,则分别从各监测工作节点获取主管理节点的工作状态;若主管理节点的工作状态异常,则将主管理节点与工作节点之间的数据传输切换到备管理节点上,并利用备管理节点与工作节点进行数据传输。本发明主要用于分布式并行处理技术中。

    权利要求书

    1.一种节点切换方法,其特征在于,包括:
    在利用主管理节点和工作节点进行数据传输时,分别从所述工作节点中的
    各监测工作节点获取所述各监测工作节点与备管理节点之间的通信状态;其中
    所述各监测工作节点用于对所述主管理节点、备管理节点进行监测;
    根据所述各监测工作节点与所述备管理节点之间的通信状态确定所述备
    管理节点的工作状态是否正常;
    若所述备管理节点的工作状态正常,则分别从所述各监测工作节点获取所
    述主管理节点的工作状态;
    若所述主管理节点的工作状态异常,则将所述主管理节点与所述工作节点
    之间的数据传输切换到所述备管理节点上,并利用所述备管理节点与所述工作
    节点进行数据传输。
    2.根据权利要求1所述的方法,其特征在于,所述分别从所述工作节点
    中的各监测工作节点获取所述各监测工作节点与备管理节点之间的通信状态,
    包括:
    向所述各监测工作节点发送针对所述备管理节点的第一监控请求消息;
    接收所述各监测工作节点发送的第一监控响应消息,在所述第一监控响应
    消息中包括所述各监测工作节点与所述备管理节点之间的通信状态。
    3.根据权利要求1所述的方法,其特征在于,包括:所述根据所述各监
    测工作节点与所述备管理节点之间的通信状态确定所述备管理节点的工作状
    态是否正常,包括:
    统计反馈的所述通信状态为正常的监测工作节点的数量;
    当所述数量超过第一预设阈值时,确定所述备管理节点的工作状态为正常,
    否则,确定所述备管理节点的工作状态为异常。
    4.根据权利要求1所述的方法,其特征在于,所述若所述备管理节点的
    工作状态正常,则分别从所述各监测工作节点获取所述主管理节点的工作状态,
    包括
    若所述备管理节点的工作状态正常,则在预定时间内按照预定时间间隔向
    所述各监测工作节点发送针对所述主管理节点的第二监控请求消息;
    接收所述各监测工作节点发送的第二监控响应消息,在所述第二监控响应
    消息中包括所述各监测工作节点与所述主管理节点之间的通信状态,所述主管
    理节点自身的工作状态。
    5.根据权利要求4所述的方法,其特征在于,所述若所述主管理节点的
    工作状态异常,则将所述主管理节点与所述工作节点之间的数据传输切换到所
    述备管理节点上,并利用所述备管理节点与所述工作节点进行数据传输,包括:
    解析在所述预定时间内收到的所述各监测工作节点发送的第二监控响应
    消息;
    若第一监测工作节点的第二监控响应消息表示异常的连续次数超过第二
    预设阈值,则对所述第一监测工作节点进行标记,其中所述第一监测工作节点
    为所述监测工作节点中的任一节点;
    若所述被标记的第一监测工作节点符合预设要求,则将所述主管理节点与
    所述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备管理节
    点与所述工作节点进行数据传输。
    6.根据权利要求5所述的方法,其特征在于,所述对所述第一监测工作
    节点进行标记包括:将所述第一监测工作节点的投票值记为1;
    所述若所述被标记的第一监测工作节点符合预设要求,则将所述主管理节
    点与所述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备管
    理节点与所述工作节点进行数据传输,包括:
    将各所述被标记的第一监测工作节点的投票值进行累加;
    若投票值的累加结果大于预设值,则接收任一监测工作节点的切换指令,
    将所述主管理节点与所述工作节点之间的数据传输切换到所述备管理节点上,
    并利用所述备管理节点与所述工作节点进行数据传输。
    7.根据权利要求1-6任一所述的方法,其特征在于,所述方法还包括:
    分别从所述各监测工作节点获取所述主管理节点的工作状态;
    若所述主管理节点的工作状态正常,则接收任一监测工作节点的切换指令,
    根据所述切换指令将所述备管理节点与所述工作节点之间的数据传输切换到
    所述主管理节点上,并利用所述主管理节点与所述工作节点进行数据传输。
    8.根据权利要求1-6任一所述的方法,其特征在于,在所述分别从所述
    工作节点中的各监测工作节点获取所述各监测工作节点与备管理节点之间的
    通信状态前,所述方法还包括:
    从所述工作节点中选取预定数量的工作节点作为所述监测工作节点。
    9.一种节点切换方法,其特征在于,包括:
    在与主管理节点进行数据传输时,获取并发送自身与备管理节点之间的通
    信状态;
    当确定所述备管理节点的工作状态正常时,获取并发送所述主管理节点的
    工作状态;
    当确定所述主管理节点的工作状态异常时,向所述主管理节点发送切换指
    令,将与所述主管理节点之间的数据传输切换到所述备管理节点上,并与所述
    备管理节点进行数据传输。
    10.根据权利要求9所述的方法,其特征在于,所述获取并发送自身与备
    管理节点之间的通信状态包括:
    接收针对所述备管理节点的第一监控请求消息,根据所述第一监控请求消
    息获取自身与所述备管理节点之间的通信状态;
    发送所述第一监控响应消息,在所述第一监控响应消息中包括自身与所述
    备管理节点之间的通信状态。
    11.根据权利要求9所述的方法,其特征在于,所述获取并发送所述主管
    理节点的工作状态,包括:
    接收针对所述主管理节点的第二监控请求消息,根据所述第二监控请求消
    息获取所述主管理节点的工作状态;
    发送第二监控响应消息,在所述第二监控响应消息中包括自身与所述主管
    理节点之间的通信状态,所述主管理节点自身的工作状态。
    12.根据权利要求9-11任一所述的方法,其特征在于,所述方法还包括:
    获取所述主管理节点的工作状态;
    若所述主管理节点的工作状态正常,则向所述备管理节点发送切换指令,
    将自身与所述备管理节点之间的数据传输切换到所述主管理节点上,并与所述
    主管理节点进行数据传输。
    13.一种节点切换装置,其特征在于,包括:
    第一获取单元,用于在利用主管理节点和工作节点进行数据传输时,分别
    从所述工作节点中的各监测工作节点获取所述各监测工作节点与备管理节点
    之间的通信状态;其中所述各监测工作节点用于对所述主管理节点、备管理节
    点的工作状态进行监测;
    第一确定单元,用于根据所述各监测工作节点与所述备管理节点之间的通
    信状态确定所述备管理节点的工作状态是否正常;
    第二获取单元,用于在所述备管理节点的工作状态正常时,分别从所述各
    监测工作节点获取所述主管理节点的工作状态;
    切换单元,用于确定所述主管理节点的工作状态是否正常,并在所述主管
    理节点的工作状态异常时,将所述主管理节点与所述工作节点之间的数据传输
    切换到所述备管理节点上,并利用所述备管理节点与所述工作节点进行数据传
    输。
    14.根据权利要求13所述的装置,其特征在于,所述第一获取单元包括:
    发送模块,用于向所述各监测工作节点发送针对所述备管理节点的第一监
    控请求消息;
    接收模块,用于接收所述各监测工作节点发送的第一监控响应消息,在所
    述第一监控响应消息中包括所述各监测工作节点与所述备管理节点之间的通
    信状态。
    15.根据权利要求13所述的装置,其特征在于,所述第一确定单元包括:
    统计模块,用于统计反馈的所述通信状态为正常的监测工作节点的数量;
    确定模块,用于当所述数量超过第一预设阈值时,确定所述备管理节点的
    工作状态为正常,否则,确定所述备管理节点的工作状态为异常。
    16.根据权利要求13所述的装置,其特征在于,所述第二获取单元包括:
    发送模块,用于在所述备管理节点的工作状态正常时,在预定时间内按照
    预定时间间隔向所述各监测工作节点发送针对所述主管理节点的第二监控请
    求消息;
    接收模块,用于接收所述各监测工作节点发送的第二监控响应消息,在所
    述第二监控响应消息中包括所述各监测工作节点与所述主管理节点之间的通
    信状态,所述主管理节点自身的工作状态。
    17.根据权利要求16所述的装置,其特征在于,所述切换单元包括:
    解析模块,用于解析在所述预定时间内收到的所述各监测工作节点发送的
    第二监控响应消息;
    标记模块,用于在第一监测工作节点的第二监控响应消息表示异常的连续
    次数超过第二预设阈值时,对所述第一监测工作节点进行标记,其中所述第一
    监测工作节点为所述监测工作节点中的任一节点;
    切换模块,用于在所述被标记的第一监测工作节点符合预设要求时,将所
    述主管理节点与所述工作节点之间的数据传输切换到所述备管理节点上,并利
    用所述备管理节点与所述工作节点进行数据传输。
    18.根据权利要求17所述的装置,其特征在于,所述标记模块在对所述
    第一监测工作节点进行标记时具体用于将所述第一监测工作节点的投票值记
    为1;
    所述切换模块具体用于,在投票值的累加结果大于预设值时,接收任一监
    测工作节点的切换指令,将所述主管理节点与所述工作节点之间的数据传输切
    换到所述备管理节点上,并利用所述备管理节点与所述工作节点进行数据传输。
    19.根据权利要求13-17任一所述的装置,其特征在于,
    所述第二获取单元还用于,分别从所述各监测工作节点获取所述主管理节
    点的工作状态;
    所述切换单元,还用于在所述主管理节点的工作状态正常时,接收任一监
    测工作节点的切换指令,根据所述切换指令将所述备管理节点与所述工作节点
    之间的数据传输切换到所述主管理节点上,并利用所述主管理节点与所述工作
    节点进行数据传输。
    20.根据权利要求13-17任一所述的装置,其特征在于,所述装置还包括:
    选择单元,用于从所述工作节点中选取预定数量的工作节点作为所述监测
    工作节点。
    21.一种节点切换装置,其特征在于,包括:
    第一获取单元,用于在与主管理节点进行数据传输时,获取并发送自身与
    备管理节点之间的通信状态;
    第二获取单元,用于在确定所述备管理节点的工作状态正常时,获取并发
    送所述主管理节点的工作状态;
    处理单元,用于在确定所述主管理节点的工作状态异常时,向所述主管理
    节点发送切换指令,将与所述主管理节点之间的数据传输切换到所述备管理节
    点上,并与所述备管理节点进行数据传输。
    22.根据权利要求21所述的装置,其特征在于,所述第一获取单元包括:
    接收模块,用于接收针对所述备管理节点的第一监控请求消息,根据所述
    第一监控请求消息获取自身与所述备管理节点之间的通信状态;
    发送模块,用于发送所述第一监控响应消息,在所述第一监控响应消息中
    包括自身与所述备管理节点之间的通信状态。
    23.根据权利要求21所述的装置,其特征在于,所述第二获取单元包括:
    接收模块,用于接收针对所述主管理节点的第二监控请求消息,根据所述
    第二监控请求消息获取所述主管理节点的工作状态;
    发送模块,用于发送第二监控响应消息,在所述第二监控响应消息中包括
    自身与所述主管理节点之间的通信状态,所述主管理节点自身的工作状态。
    24.根据权利要求21-23任一所述的装置,其特征在于,所述第二获取单
    元还用于:获取所述主管理节点的工作状态;
    所述处理单元,还用于在所述主管理节点的工作状态正常时,向所述备管
    理节点发送切换指令,将自身与所述备管理节点之间的数据传输切换到所述主
    管理节点上,并与所述主管理节点进行数据传输。

    说明书

    一种节点切换方法及装置

    技术领域

    本发明涉及通信技术领域,尤其涉及一种节点切换方法及装置。

    背景技术

    分布式并行处理(massively parallel processing,MPP)数据库技术的核心
    是将任务并行的分散到多个服务器和Nodes(节点)上进行处理。其中,MPP
    型数据库的每个Nodes都有独立的磁盘存储系统和内存系统,业务数据根据数
    据库模型和应用特点划分到各个Nodes上。每台Nodes通过高速专用网络或者
    商业通用网络互相连接。

    其中,MPP架构大致可分两类:第一类是无管理节点架构;第二类是有
    管理节点架构。在第二类的MPP架构中,数据访问全部通过管理节点与工作
    节点之间通信完成,该架构产品如Teradata Aster等。其中管理节点一般可划
    分为主管理节点(主Queen节点)和备管理节点(备Queen节点)。主管理节点
    和备管理节点之间进行数据同步,并且在主管理节点出现故障时可利用备管理
    节点来完成与各个工作节点之间的通信。

    现有技术中通常采用如下方式来完成主备管理节点之间的切换:当利用备
    管理节点来监测到备管理节点与主管理节点之间的通信异常时,则进行主、备
    管理节点之间的切换。但是,在实现本发明的过程中发明人发现,由于现有技
    术的方案仅仅是由备管理节点根据监测到的其与主管理节点之间的通信异常
    来进行节点的切换,而无法确定主管理节点本身是否真正存在故障,因此,现
    有技术的节点切换方法可能存在节点切换错误的情况,从而影响了业务的连续
    运行。

    发明内容

    有鉴于此,本发明提供一种节点切换方法及装置,用以保证业务的连续运
    行。

    为解决上述技术问题,本发明提供一种节点切换方法,包括:

    在利用主管理节点和工作节点进行数据传输时,分别从所述工作节点中的
    各监测工作节点获取所述各监测工作节点与备管理节点之间的通信状态;其中
    所述各监测工作节点用于对所述主管理节点、备管理节点进行监测;

    根据所述各监测工作节点与所述备管理节点之间的通信状态确定所述备
    管理节点的工作状态是否正常;

    若所述备管理节点的工作状态正常,则分别从所述各监测工作节点获取所
    述主管理节点的工作状态;

    若所述主管理节点的工作状态异常,则将所述主管理节点与所述工作节点
    之间的数据传输切换到所述备管理节点上,并利用所述备管理节点与所述工作
    节点进行数据传输。

    优选的,述分别从所述工作节点中的各监测工作节点获取所述各监测工作
    节点与备管理节点之间的通信状态,包括:

    向所述各监测工作节点发送针对所述备管理节点的第一监控请求消息;

    接收所述各监测工作节点发送的第一监控响应消息,在所述第一监控响应
    消息中包括所述各监测工作节点与所述备管理节点之间的通信状态。

    优选的,包括:所述根据所述各监测工作节点与所述备管理节点之间的通
    信状态确定所述备管理节点的工作状态是否正常,包括:

    统计反馈的所述通信状态为正常的监测工作节点的数量;

    当所述数量超过第一预设阈值时,确定所述备管理节点的工作状态为正常,
    否则,确定所述备管理节点的工作状态为异常。

    优选的,所述若所述备管理节点的工作状态正常,则分别从所述各监测工
    作节点获取所述主管理节点的工作状态,包括

    若所述备管理节点的工作状态正常,则在预定时间内按照预定时间间隔向
    所述各监测工作节点发送针对所述主管理节点的第二监控请求消息;

    接收所述各监测工作节点发送的第二监控响应消息,在所述第二监控响应
    消息中包括所述各监测工作节点与所述主管理节点之间的通信状态,所述主管
    理节点自身的工作状态。

    优选的,所述若所述主管理节点的工作状态异常,则将所述主管理节点与
    所述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备管理节
    点与所述工作节点进行数据传输,包括:

    解析在所述预定时间内收到的所述各监测工作节点发送的第二监控响应
    消息;

    若第一监测工作节点的第二监控响应消息表示异常的连续次数超过第二
    预设阈值,则对所述第一监测工作节点进行标记,其中所述第一监测工作节点
    为所述监测工作节点中的任一节点;

    若所述被标记的第一监测工作节点符合预设要求,则将所述主管理节点与
    所述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备管理节
    点与所述工作节点进行数据传输。

    优选的,所述对所述第一监测工作节点进行标记包括:

    将所述第一监测工作节点的投票值记为1;

    所述若所述被标记的第一监测工作节点符合预设要求,则将所述主管理节
    点与所述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备管
    理节点与所述工作节点进行数据传输,包括:

    将各所述被标记的第一监测工作节点的投票值进行累加;

    若投票值的累加结果大于预设值,则接收任一监测工作节点的切换指令,
    将所述主管理节点与所述工作节点之间的数据传输切换到所述备管理节点上,
    并利用所述备管理节点与所述工作节点进行数据传输。

    优选的,所述方法还包括:

    分别从所述各监测工作节点获取所述主管理节点的工作状态;

    若所述主管理节点的工作状态正常,则接收任一监测工作节点的切换指令,
    根据所述切换指令将所述备管理节点与所述工作节点之间的数据传输切换到
    所述主管理节点上,并利用所述主管理节点与所述工作节点进行数据传输。

    优选的,在所述分别从所述工作节点中的各监测工作节点获取所述各监测
    工作节点与备管理节点之间的通信状态前,所述方法还包括:

    从所述工作节点中选取预定数量的工作节点作为所述监测工作节点。

    本发明还提供一种节点切换方法,包括:

    在与主管理节点进行数据传输时,获取并发送自身与备管理节点之间的通
    信状态;

    当确定所述备管理节点的工作状态正常时,获取并发送所述主管理节点的
    工作状态;

    当确定所述主管理节点的工作状态异常时,向所述主管理节点发送切换指
    令,将与所述主管理节点之间的数据传输切换到所述备管理节点上,并与所述
    备管理节点进行数据传输。

    优选的,所述获取并发送自身与备管理节点之间的通信状态包括:

    接收针对所述备管理节点的第一监控请求消息,根据所述第一监控请求消
    息获取自身与所述备管理节点之间的通信状态;

    发送所述第一监控响应消息,在所述第一监控响应消息中包括自身与所述
    备管理节点之间的通信状态。

    优选的,所述获取并发送所述主管理节点的工作状态,包括:

    接收针对所述主管理节点的第二监控请求消息,根据所述第二监控请求消
    息获取所述主管理节点的工作状态;

    发送第二监控响应消息,在所述第二监控响应消息中包括自身与所述主管
    理节点之间的通信状态,所述主管理节点自身的工作状态。

    优选的,所述方法还包括:

    获取所述主管理节点的工作状态;

    若所述主管理节点的工作状态正常,则向所述备管理节点发送切换指令,
    将自身与所述备管理节点之间的数据传输切换到所述主管理节点上,并与所述
    主管理节点进行数据传输。

    本发明还提供一种节点切换装置,包括:

    第一获取单元,用于在利用主管理节点和工作节点进行数据传输时,分别
    从所述工作节点中的各监测工作节点获取所述各监测工作节点与备管理节点
    之间的通信状态;其中所述各监测工作节点用于对所述主管理节点、备管理节
    点的工作状态进行监测;

    第一确定单元,用于根据所述各监测工作节点与所述备管理节点之间的通
    信状态确定所述备管理节点的工作状态是否正常;

    第二获取单元,用于在所述备管理节点的工作状态正常时,分别从所述各
    监测工作节点获取所述主管理节点的工作状态;

    切换单元,用于确定所述主管理节点的工作状态是否正常,并在所述主管
    理节点的工作状态异常时,将所述主管理节点与所述工作节点之间的数据传输
    切换到所述备管理节点上,并利用所述备管理节点与所述工作节点进行数据传
    输。

    优选的,所述第一获取单元包括:

    发送模块,用于向所述各监测工作节点发送针对所述备管理节点的第一监
    控请求消息;

    接收模块,用于接收所述各监测工作节点发送的第一监控响应消息,在所
    述第一监控响应消息中包括所述各监测工作节点与所述备管理节点之间的通
    信状态。

    优选的,所述第一确定单元包括:

    统计模块,用于统计反馈的所述通信状态为正常的监测工作节点的数量;

    确定模块,用于当所述数量超过第一预设阈值时,确定所述备管理节点的
    工作状态为正常,否则,确定所述备管理节点的工作状态为异常。

    优选的,所述第二获取单元包括:

    发送模块,用于在所述备管理节点的工作状态正常时,在预定时间内按照
    预定时间间隔向所述各监测工作节点发送针对所述主管理节点的第二监控请
    求消息;

    接收模块,用于接收所述各监测工作节点发送的第二监控响应消息,在所
    述第二监控响应消息中包括所述各监测工作节点与所述主管理节点之间的通
    信状态,所述主管理节点自身的工作状态。

    优选的,所述切换单元包括:

    解析模块,用于解析在所述预定时间内收到的所述各监测工作节点发送的
    第二监控响应消息;

    标记模块,用于在第一监测工作节点的第二监控响应消息表示异常的连续
    次数超过第二预设阈值时,对所述第一监测工作节点进行标记,其中所述第一
    监测工作节点为所述监测工作节点中的任一节点;

    切换模块,用于在所述被标记的第一监测工作节点符合预设要求时,将所
    述主管理节点与所述工作节点之间的数据传输切换到所述备管理节点上,并利
    用所述备管理节点与所述工作节点进行数据传输。

    优选的,所述标记模块在对所述第一监测工作节点进行标记时具体用于将
    所述第一监测工作节点的投票值记为1;

    所述切换模块具体用于,在投票值的累加结果大于预设值时,则接收任一
    监测工作节点的切换指令,将所述主管理节点与所述工作节点之间的数据传输
    切换到所述备管理节点上,并利用所述备管理节点与所述工作节点进行数据传
    输。

    优选的,所述第二获取单元还用于,分别从所述各监测工作节点获取所述
    主管理节点的工作状态;

    所述切换单元,还用于在所述主管理节点的工作状态正常时,接收任一监
    测工作节点的切换指令,根据所述切换指令将所述备管理节点与所述工作节点
    之间的数据传输切换到所述主管理节点上,并利用所述主管理节点与所述工作
    节点进行数据传输。

    优选的,所述装置还包括:

    选择单元,用于从所述工作节点中选取预定数量的工作节点作为所述监测
    工作节点。

    本发明还提供一种节点切换装置,包括:

    第一获取单元,用于在与主管理节点进行数据传输时,获取并发送自身与
    备管理节点之间的通信状态;

    第二获取单元,用于在确定所述备管理节点的工作状态正常时,获取并发
    送所述主管理节点的工作状态;

    处理单元,用于在确定所述主管理节点的工作状态异常时,向所述主管理
    节点发送切换指令,将与所述主管理节点之间的数据传输切换到所述备管理节
    点上,并与所述备管理节点进行数据传输。

    优选的,所述第一获取单元包括:

    接收模块,用于接收针对所述备管理节点的第一监控请求消息,根据所述
    第一监控请求消息获取自身与所述备管理节点之间的通信状态;

    发送模块,用于发送所述第一监控响应消息,在所述第一监控响应消息中
    包括自身与所述备管理节点之间的通信状态。

    优选的,所述第二获取单元包括:

    接收模块,用于接收针对所述主管理节点的第二监控请求消息,根据所述
    第二监控请求消息获取所述主管理节点的工作状态;

    发送模块,用于发送第二监控响应消息,在所述第二监控响应消息中包括
    自身与所述主管理节点之间的通信状态,所述主管理节点自身的工作状态。

    优选的,所述第二获取单元还用于:获取所述主管理节点的工作状态;

    所述处理单元,还用于在所述主管理节点的工作状态正常时,向所述备管
    理节点发送切换指令,将自身与所述备管理节点之间的数据传输切换到所述主
    管理节点上,并与所述主管理节点进行数据传输。

    本发明的上述技术方案的有益效果如下:

    在本发明实施例中,当利用主管理节点和工作节点进行数据传输时,首先
    确定备管理节点的工作状态是否正常,并在备管理节点的工作状态正常时再确
    定主管理节点的工作状态。若此时主管理节点的工作状态异常则将数据传输切
    换到备管理节点上。由于在本发明实施例中需要对备管理节点、主管理节点的
    工作状态分别进行判断,因此,利用本发明实施例的方案可在主管理节点真正
    的发生了故障的时候进行数据传输的切换,从而避免了现有技术中的误切换操
    作。因而,利用本发明实施例的方案能够保证业务的连续运行。

    附图说明

    图1为本发明实施例一的节点切换方法的流程图;

    图2为本发明实施例二的节点切换方法的流程图;

    图3为本发明实施例三的网络结构示意图;

    图4为本发明实施例三的节点切换方法的流程图;

    图5为本发明实施例四的节点切换装置的示意图;

    图6为本发明实施例四的节点切换装置的结构图;

    图7为本发明实施例五的节点切换装置的示意图。

    具体实施方式

    下面将结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
    以下实施例用于说明本发明,但不用来限制本发明的范围。

    如图1所示,本发明实施例一的节点切换方法,可由架构中的节点切换控
    制装置执行,包括:

    步骤11、在利用主管理节点和工作节点进行数据传输时,分别从所述工
    作节点中的各监测工作节点获取所述各监测工作节点与备管理节点之间的通
    信状态;其中所述各监测工作节点用于对所述主管理节点、备管理节点进行监
    测。

    根据背景技术的描述,在有管理节点的MPP架构中,其管理节点可包括
    主管理节点和备管理节点,此外该架构中还包括多个工作节点。当主管理节点
    与工作节点之间的数据传输发生故障时,需要将数据传输切换到备管理节点上
    继续进行数据传输。

    在本发明实施例中,为了更好的监测主管理节点和备管理节点的工作状态,
    从工作节点中选取任意数量的工作节点作为监测工作节点,在这些监测工作节
    点上部署监控程序,用于对主管理节点和备管理节点的工作状态进行监测。例
    如,假设该架构中有10个工作节点,那么在此10个节点中可选7个节点作为
    监测工作节点。

    由于在各监测工作节点上部署有监控程序,因此,在本发明实施例中可从
    各监测工作节点获取所述各监测工作节点与备管理节点之间的通信状态。此时,
    可向所述各监测工作节点发送针对所述备管理节点的第一监控请求消息,然后
    分别接收所述各监测工作节点发送的第一监控响应消息,在所述第一监控响应
    消息中包括所述各监测工作节点与所述备管理节点之间的通信状态。其中,所
    述通信状态可以包括各监测工作节点和备管理节点之间的通信链路是否正常
    等。

    步骤12、根据所述各监测工作节点与所述备管理节点之间的通信状态确
    定所述备管理节点的工作状态是否正常。

    在此步骤中,在收到了各监测工作节点发送的第一监控响应消息后,可分
    别对其进行解析,进而确定各个第一监控响应消息所表示的通信状态是为正常
    还是异常。此时,根据解析的结果统计反馈的所述通信状态为正常的监测工作
    节点的数量。当所述数量超过第一预设阈值时,确定所述备管理节点的工作状
    态为正常,否则,确定所述备管理节点的工作状态为异常。

    其中第一预设阈值可以任意设置,当然为了保证切换的准确性,所述第一
    预设阈值可以设置为大于监测工作节点数量的一半。也即,若选择了5个监测
    工作节点,那么在此的第一预设阈值可以设置为3。因此,当有3个监测工作
    节点反馈的通信状态表示为正常时,可认为备管理节点的工作状态为正常。否
    则,确定所述备管理节点的工作状态为异常。

    步骤13、若所述备管理节点的工作状态正常,则分别从所述各监测工作
    节点获取所述主管理节点的工作状态。

    如果备管理节点的工作状态正常,表示在架构中存在切换节点的基本条件。
    此时,还需通过各监测工作节点监测主管理节点的工作状态。

    在此步骤中,可在预定时间内按照预定时间间隔向所述各监测工作节点发
    送针对所述主管理节点的第二监控请求消息,然后,接收所述各监测工作节点
    发送的第二监控响应消息,在所述第二监控响应消息中包括所述各监测工作节
    点与所述主管理节点之间的通信状态,所述主管理节点自身的工作状态。

    例如,可在1分钟内每隔30秒向各个监测工作节点发送第二监控请求消
    息,然后,分别接收各个监测工作节点发送的第二监控响应消息,并根据各第
    二监控响应消息获得主管理节点的工作状态(例如是否发生宕机等)和监测工
    作节点与所述主管理节点之间的通信状态(例如通信链路是否正常等)。

    步骤14、若所述主管理节点的工作状态异常,则将所述主管理节点与所
    述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备管理节点
    与所述工作节点进行数据传输。

    在此步骤中,可首先解析在所述预定时间内收到的所述各监测工作节点发
    送的第二监控响应消息。若第一监测工作节点的第二监控响应消息表示异常的
    连续次数超过第二预设阈值,则对所述第一监测工作节点进行标记,其中所述
    第一监测工作节点为所述监测工作节点中的任一节点。若所述被标记的第一监
    测工作节点符合预设要求,则将所述主管理节点与所述工作节点之间的数据传
    输切换到所述备管理节点上,并利用所述备管理节点与所述工作节点进行数据
    传输。

    具体的,在本发明实施例中,采用Delicious投票算法来确定主管理节点
    的通信状态是否正常。因此,在对第一监测工作节点进行标记时主要是将所述
    第一监测工作节点的投票值记为1。

    例如,假设架构中的工作节点数N为10个,监测工作节点的个数为7个
    (也即n=3),预设值等于4(((2n+1)+1)/2)。对于该7个监测工作节点中
    的任一监测工作节点作为第一监测工作节点,在1分钟内每隔30秒向其发送
    第二监控请求消息;相应的,在该预设时间内也接收该第一监测工作节点发送
    的第二监控响应消息。之后,解析该第一监测工作节点发送的第二监控响应消
    息,若第二监控响应消息连续表示异常的次数超过第二预设阈值,则对所述第
    一监测工作节点进行标记。例如,该第一监测工作节点的第二监控响应消息连
    续表示异常的次数超过3次,此时,将第一监测工作节点的投票值记为1,否
    则记为0。对于其他的监测工作节点都按照第一监测工作节点的方式进行处理,
    获取其投票值。

    那么,将各个监测工作节点的投票进行累加,获得投票值累加和
    A=A1+A2+…A7,其中A1,A2,……A7表示各个监测工作节点的投票值。若A
    大于等于4,则认为主管理节点异常,否则认为主管理节点正常。

    若主管理节点异常,则接收任一监测工作节点的切换指令,将所述主管理
    节点与所述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备
    管理节点与所述工作节点进行数据传输。其中发送切换指令的监测工作节点可
    以是任一的监测工作节点,通常默认为第一个进行投票的监测工作节点发送。

    由上可以看出,由于在本发明实施例中需要对备管理节点、主管理节点的
    工作状态分别进行判断,因此,利用本发明实施例的方案可在主管理节点真正
    的发生了故障的时候进行数据传输的切换,从而避免了现有技术中的误切换操
    作。因而,利用本发明实施例的方案能够保证业务的连续运行。

    如图2所示,本发明实施例二的节点切换方法,由监测工作节点执行,包
    括:

    步骤21、在与主管理节点进行数据传输时,获取并发送自身与备管理节
    点之间的通信状态。

    由于监测工作节点部署有监控程序,因此,其可对主、备管理节点的工作
    状态进行监测。因此,在此步骤中,可接收针对所述备管理节点的第一监控请
    求消息,根据所述第一监控请求消息获取自身与所述备管理节点之间的通信状
    态,然后发送所述第一监控响应消息,在所述第一监控响应消息中包括自身与
    所述备管理节点之间的通信状态。

    步骤22、当确定所述备管理节点的工作状态正常时,获取并发送所述主
    管理节点的工作状态。

    在此步骤中,可接收针对所述主管理节点的第二监控请求消息,根据所述
    第二监控请求消息获取所述主管理节点的工作状态,然后发送第二监控响应消
    息,在所述第二监控响应消息中包括自身与所述主管理节点之间的通信状态,
    所述主管理节点自身的工作状态。

    步骤23、当确定所述主管理节点的工作状态异常时,向所述主管理节点
    发送切换指令,将与所述主管理节点之间的数据传输切换到所述备管理节点上,
    并与所述备管理节点进行数据传输。

    由上可以看出,由于在本发明实施例中需要对备管理节点、主管理节点的
    工作状态分别进行判断,因此,利用本发明实施例的方案可在主管理节点真正
    的发生了故障的时候进行数据传输的切换,从而避免了现有技术中的误切换操
    作。因而,利用本发明实施例的方案能够保证业务的连续运行。

    如图3所示,假设某分布式处理数据库集群有2个管理节点,N个工作节
    点,N取10。如图4所示,本发明实施例三的节点切换方法包括:

    步骤31、正常情况下,主管理节点和备管理节点之间进行数据同步的过
    程,利用主管理节点与各工作节点进行数据传输。

    步骤32、从工作节点中选择监测工作节点。

    在10个工作节点中任意选定2n+1台(n为自然数)节点设定为投票成员
    也即作为监测工作节点,然后在其上部署监控程序,实时监控主管理节点和备
    管理节点之间的通信情况、每个管理节点的运行状态情况。本实施例中以选取
    5个检测工作节点为例,也即n=2。

    步骤33、分别从所述工作节点中的各监测工作节点获取所述各监测工作
    节点与备管理节点之间的通信状态,确定所述备管理节点的工作状态是否正常。

    假设规定如果3台监测工作节点与备管理节点间的通信正常,则备管理节
    点工作正常,可以进行切换,否则切换条件不满足,不能进行节点切换。

    经解析,在本实施例中有4台检测工作节点与备管理节点之间的通信正常,
    因此可以进行切换。执行步骤34,否则修复该备管理节点后继续执行步骤33。

    步骤34、分别从所述各监测工作节点获取所述主管理节点的工作状态,
    确定所述主管理节点的工作状态是否正常。

    在本步骤中采用Delicious算法,由5个监测工作节点在单位时间内进行
    投票。对于步骤32中选定的5个监测工作节点,在2分钟内每隔15秒由其获
    得主管理节点的工作状态。连续3次采集结果均反馈为异常,则判定为该监测
    工作节点的投票数为λ2n+1=1,否则λ2n+1=0。假设经3分钟投票完毕。然后,
    计算出各个监测工作节点的投票数累加和,即τ=λ1+λ2+λ3+…+λ2n+1=λ
    1+λ2+λ3+…+λ5。将τ和((2n+1)+1)/2的值即3进行比较,若τ≥3,
    则说明主管理节点异常,执行步骤35;否则说明主管理节点正常,执行步骤
    33。

    步骤35、将所述主管理节点与所述工作节点之间的数据传输切换到所述
    备管理节点上,并利用所述备管理节点与所述工作节点进行数据传输。

    在此,假设在上述投票的过程中是由监测工作节点1先进行的投票,那么,
    在此步骤中可由监测工作节点1向主管理节点发送切换指令,将所述主管理节
    点与所述工作节点之间的数据传输切换到所述备管理节点上,并利用所述备管
    理节点与所述工作节点进行数据传输。

    步骤36、分别从所述各监测工作节点获取所述主管理节点的工作状态。

    步骤37、若所述主管理节点的工作状态正常,则接收任一监测工作节点
    的切换指令,根据所述切换指令将所述备管理节点与所述工作节点之间的数据
    传输切换到所述主管理节点上,并利用所述主管理节点与所述工作节点进行数
    据传输。

    按照步骤34的方式确定主管理节点的工作状态是否正常。假设此时各监
    测工作节点的投票值的累加和τ<3,则说明主管理节点正常。此时,还可由监
    测工作节点1向备管理节点发送切换指令,根据所述切换指令将所述备管理节
    点与所述工作节点之间的数据传输切换到所述主管理节点上,并利用所述主管
    理节点与所述工作节点进行数据传输。

    由上可以看出,由于在本发明实施例中需要对备管理节点、主管理节点的
    工作状态分别进行判断,因此,利用本发明实施例的方案可在主管理节点真正
    的发生了故障的时候进行数据传输的切换,从而避免了现有技术中的误切换操
    作。因而,利用本发明实施例的方案能够保证业务的连续运行。此外,利用本
    发明实施例的方案可避免人工干预进行节点切换,切换时间短。另外,本方案
    还可实现节点的回切,从而进一步的保证了业务的连续运行。

    如图5所示,本发明实施例四的节点切换装置,包括:

    第一获取单元51,用于在利用主管理节点和工作节点进行数据传输时,
    分别从所述工作节点中的各监测工作节点获取所述各监测工作节点与备管理
    节点之间的通信状态;其中所述各监测工作节点用于对所述主管理节点、备管
    理节点的工作状态进行监测;第一确定单元52,用于根据所述各监测工作节
    点与所述备管理节点之间的通信状态确定所述备管理节点的工作状态是否正
    常;第二获取单元53,用于在所述备管理节点的工作状态正常时,分别从所
    述各监测工作节点获取所述主管理节点的工作状态;切换单元54,用于确定
    所述主管理节点的工作状态是否正常,并在所述主管理节点的工作状态异常时,
    将所述主管理节点与所述工作节点之间的数据传输切换到所述备管理节点上,
    并利用所述备管理节点与所述工作节点进行数据传输。

    其中,所述第一获取单元51包括:发送模块,用于向所述各监测工作节
    点发送针对所述备管理节点的第一监控请求消息;接收模块,用于接收所述各
    监测工作节点发送的第一监控响应消息,在所述第一监控响应消息中包括所述
    各监测工作节点与所述备管理节点之间的通信状态。

    其中,所述第一确定单元52包括:统计模块,用于统计反馈的所述通信
    状态为正常的监测工作节点的数量;确定模块,用于当所述数量超过第一预设
    阈值时,确定所述备管理节点的工作状态为正常,否则,确定所述备管理节点
    的工作状态为异常。

    其中,所述第二获取单元53包括:发送模块,用于在所述备管理节点的
    工作状态正常时,在预定时间内按照预定时间间隔向所述各监测工作节点发送
    针对所述主管理节点的第二监控请求消息;接收模块,用于接收所述各监测工
    作节点发送的第二监控响应消息,在所述第二监控响应消息中包括所述各监测
    工作节点与所述主管理节点之间的通信状态,所述主管理节点自身的工作状态。

    其中,所述切换单元54包括:解析模块,用于解析在所述预定时间内收
    到的所述各监测工作节点发送的第二监控响应消息;标记模块,用于在第一监
    测工作节点的第二监控响应消息表示异常的连续次数超过第二预设阈值时,对
    所述第一监测工作节点进行标记,其中所述第一监测工作节点为所述监测工作
    节点中的任一节点;切换模块,用于在所述被标记的第一监测工作节点符合预
    设要求时,将所述主管理节点与所述工作节点之间的数据传输切换到所述备管
    理节点上,并利用所述备管理节点与所述工作节点进行数据传输。

    具体的,所述标记模块在对所述第一监测工作节点进行标记时具体用于将
    所述第一监测工作节点的投票值记为1;此时,所述切换模块具体用于,在投
    票值的累加结果大于预设值时,则接收任一监测工作节点的切换指令,将所述
    主管理节点与所述工作节点之间的数据传输切换到所述备管理节点上,并利用
    所述备管理节点与所述工作节点进行数据传输。

    此外,为了进一步保证业务的连续性,实现节点回切,所述第二获取单元
    52还用于,分别从所述各监测工作节点获取所述主管理节点的工作状态;所
    述切换单元54,还用于在所述主管理节点的工作状态正常时,接收任一监测
    工作节点的切换指令,根据所述切换指令将所述备管理节点与所述工作节点之
    间的数据传输切换到所述主管理节点上,并利用所述主管理节点与所述工作节
    点进行数据传输。

    此外,如图6所示,本发明实施例的装置还包括:选择单元55,用于从
    所述工作节点中选取预定数量的工作节点作为所述监测工作节点。

    本发明实施例的工作原理可参照前述方法实施例的描述,该装置可位于架
    构中的仲裁网元中。

    由上可以看出,由于在本发明实施例中需要对备管理节点、主管理节点的
    工作状态分别进行判断,因此,利用本发明实施例的方案可在主管理节点真正
    的发生了故障的时候进行数据传输的切换,从而避免了现有技术中的误切换操
    作。因而,利用本发明实施例的方案能够保证业务的连续运行。此外,利用本
    发明实施例的方案可避免人工干预进行节点切换,切换时间短。另外,本方案
    还可实现节点的回切,从而进一步的保证了业务的连续运行。

    如图7所示,本发明实施例五的节点切换装置,包括:

    第一获取单元61,用于在与主管理节点进行数据传输时,获取并发送自
    身与备管理节点之间的通信状态;第二获取单元62,用于在确定所述备管理
    节点的工作状态正常时,获取并发送所述主管理节点的工作状态;处理单元
    63,用于在确定所述主管理节点的工作状态异常时,向所述主管理节点发送切
    换指令,将与所述主管理节点之间的数据传输切换到所述备管理节点上,并与
    所述备管理节点进行数据传输。

    其中,所述第一获取单元61包括:接收模块,用于接收针对所述备管理
    节点的第一监控请求消息,根据所述第一监控请求消息获取自身与所述备管理
    节点之间的通信状态;发送模块,用于发送所述第一监控响应消息,在所述第
    一监控响应消息中包括自身与所述备管理节点之间的通信状态。

    其中,所述第二获取单元62包括:接收模块,用于接收针对所述主管理
    节点的第二监控请求消息,根据所述第二监控请求消息获取所述主管理节点的
    工作状态;发送模块,用于发送第二监控响应消息,在所述第二监控响应消息
    中包括自身与所述主管理节点之间的通信状态,所述主管理节点自身的工作状
    态。

    此外,为了保证实现节点的回切,进一步提高业务的连续性,所述第二获
    取单元62还用于:获取所述主管理节点的工作状态;此时,所述处理单元63,
    还用于在所述主管理节点的工作状态正常时,向所述备管理节点发送切换指令,
    将自身与所述备管理节点之间的数据传输切换到所述主管理节点上,并与所述
    主管理节点进行数据传输。

    本发明实施例的工作原理可参照前述方法实施例的描述,该装置可位于工
    作节点中。

    由上可以看出,由于在本发明实施例中需要对备管理节点、主管理节点的
    工作状态分别进行判断,因此,利用本发明实施例的方案可在主管理节点真正
    的发生了故障的时候进行数据传输的切换,从而避免了现有技术中的误切换操
    作。因而,利用本发明实施例的方案能够保证业务的连续运行。此外,利用本
    发明实施例的方案可避免人工干预进行节点切换,切换时间短。另外,本方案
    还可实现节点的回切,从而进一步的保证了业务的连续运行。

    以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技
    术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,
    这些改进和润饰也应视为本发明的保护范围。

    关 键  词:
    一种 节点 切换 方法 装置
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:一种节点切换方法及装置.pdf
    链接地址:https://www.zhuanlichaxun.net/p-5995498.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1