一种节点更新方法及装置的制造方法_2

文档序号:8258108阅读:来源:国知局
围。
[0051]本申请实施例公开的一种节点更新方法,如图1所示,包括:
[0052]SlOl:确定第一类节点的集合;
[0053]其中,第一类节点为待更新的节点从源运行环境更新到目标运行环境后,所述目标运行环境中的运行发生改变的节点,所述第一类节点集合中包括所述待更新的节点。
[0054]例如,图2所示为一个源运行环境的节点时序图,其中的节点按照从上到下的顺序依次运行,以删除节点7A04为例,目标运行环境如图3所示。待更新的节点为节点7A04。则第一类节点为图3中的节点S829以及待删除节点7A04。
[0055]S102:确定第二类节点的集合;
[0056]其中,第二类节点为所述目标运行环境中、在每一个第一类节点运行之前运行的节点;
[0057]例如,图3中,第一类节点为节点S829以及待删除节点7A04,因为在目标运行环境中节点7A04被删除,所以第二类节点为节点S829在图3中的前序节点:节点7A02、节点7A01以及节点7A43。
[0058]S103:依据所述第一类节点的集合以及所述第二类节点的集合,生成更新指令;
[0059]更新指令用于将所述待更新节点从所述源运行环境更新到所述目标运行环境。通常,更新指令可以为SQL语句。
[0060]因为如果一个节点的前序节点发生改变,则不论这个改变是迀移、新增、修改还是删除,则不论等待更新节点是否存在于目标运行环境中,这个节点的运行都一定会受到影响,所以,本实施例所述的节点更新方法,在生成更新指令之前,先确定目标运行环境中受到更新影响的节点,即待更新节点的后序节点,再确定出在这些受影响的节点之前执行的节点,即可确定目标运行环境中,待更新节点的放置位置(删除即位置为空),所以,能够更为准确地继续节点的更新。
[0061]本申请实施例公开的又一种节点更新方法,如图4所示,包括以下具体步骤:
[0062]S401:接收用户输入的源运行环境、目标运行环境以及待更新的节点的信息;
[0063]S402:通过与所述源运行环境的源数据库以及所述目标运行环境的源数据库建立连接,获得所述源运行环境以及所述目标运行环境中的节点的信息;
[0064]S403:确定所述待更新节点更新完成后、在所述目标运行环境中存在的节点的集合;
[0065]上述步骤可以看作是更新前的准备工作。
[0066]S404:确定第一类节点的集合,所述第一类节点为待更新的节点从源运行环境更新到目标运行环境后,所述目标运行环境中的运行发生改变的节点,所述第一类节点集合中包括所述待更新的节点;
[0067]S405:确定第二类节点的集合,所述第二类节点为所述目标运行环境中、在每一个第一类节点运行之前运行的节点;
[0068]S406:依据所述第一类节点的集合以及所述第二类节点的集合,生成更新SQL指令;
[0069]S407:向所述用户发出更新提示;
[0070]S408:在接收到用户输入的确认更新的指令后,与所述目标运行环境的源数据库建立网络连接,并执行所述更新指令,在一个事物内完成更新操作。
[0071]本实施例所述的方法,除了具有更高的准确性外,还具有以下优点:
[0072]批量节点管理人员在大致了解批量作业调度系统及批量节点信息的基础上,无需针对节点变更进行人工分析,仅需要输入迀移申请单即可完成批量节点的更新,因此无需人工参与,自动化程度高;响应时间大大缩短,可在接受节点变更申请后的数分钟之内完成一次节点的更新过程,因此,具有更为高效的优点。
[0073]进一步地,上述实施例中,确定第一类节点的集合的具体过程如图5所述,包括以下具体步骤:
[0074]S501:初始化第一类节点的集合为空集,计数器η = I ;
[0075]S502:根据所述源运行环境的信息,获得所述待更新节点在所述源运行环境中的后序节点的集合;
[0076]其中,源运行环境中的后序节点为在所述源运行环境的节点时序图中,与所述待更新节点相连且在所述待更新节点之后的节点,节点时序图中各个节点之间的连接关系表示各个节点之间的运行时序。
[0077]例如,图2中,各个节点按照运行的先后时序,从上到下进行排列连接,节点7Α04的后续节点为图2中与其相连且在其后的节点S829。
[0078]S503:将待删除节点加入后续节点的集合中;
[0079]例如,图2中,后续节点的集合中还包括待删除节点7Α04。
[0080]S504:判断η是否等于后续节点集合中的节点的总数,如果否,执行S505,如果是,则结束;
[0081]S505:判断后续节点集合中的节点η是否存在于目标运行环境中,如果是,执行S506,如果否,执行S507 ;
[0082]S506:将节点η加入第一类节点的集合;
[0083]S507:将节点η在源运行环境的节点时序图中的后续节点加入第一类节点的集合;
[0084]例如,图3中,节点S829存在,则将其加入第一类节点的集合,节点7Α04被删除,不存在,则将其在图2中的后续节点S829加入第一类节点的集合,因此,第一类节点的集合中仅包括节点S829。
[0085]S508:n = η+1 ;
[0086]返回执行S504。
[0087]使用上述方法,能够准确地得到在目标运行环境中,受更新影响的节点的结合。
[0088]进一步地,上述实施例中,确定第二类节点的集合的具体过程如图6所述,包括以下具体步骤:
[0089]S601:初始化第二类节点的集合为空集,计数器η = I ;
[0090]S602:根据所述源运行环境的信息,获得所述第一类节点在所述源运行环境中的前序节点;
[0091]其中,在所述源运行环境中的前序节点为在所述源运行环境的节点时序图中、与所述第一类节点相连且在所述第一类节点之前的节点。
[0092]例如,图2中,第一类节点的集合中包括节点S829,其前序节点为节点7Α04以及7A0U7A43。
[0093]S603:判断η是否等于前序节点的总数,如果否,执行S604,如果是,则结束;
[0094]S604:判断前序节点η是否存在于目标运行环境中,如果是,执行S605,如果否,执行 S606 ;
[0095]S605:将前序节点η加入到第二类节点的集合;
[0096]S606:将前序节点η在源运行环境中的节点时序图中的前序节点加入到第二类节点的集合;
[0097]例如,图3中,节点S829的前序节点:节点7Α04以及7A0U7A43中,节点7Α01、7Α43均在目标运行环境中,因此,将节点7Α01及节点7Α43加入到第二类节点的集合中,而节点7Α04不在图3中,则将节点7Α04在图2中的前序节点7Α02加入到第二类节点的集合中。
[0098]S607:n = η+1 ;
[0099]返回执行S603。
[0100]从上述过程可以看出,能够准确确定出受影响的节点在目标运行环境中的前序节点,从而准确定位受影响的节点及待更新的节点在目标运行环境中的位置。
[0101]与上述方法实施例相对应地,本申请实施例还公开了一种节点更新装置,如图7所示,包括:
[0102]第一确定模块701,用于确定第一类节点的集合,所述第一类节点为待更新的节点从源运行环境更新到目标运行环境后,所述目标运行环境中的运行发生改变的节点,所述第一类节点集合中包括所述待更新的节点;
[0103]第二确定模块702,用于确定第二类节点的集合,所述第二类节点为所述目标运行环境中、在每一个第一类节点运行之前运行的节点;
[0104]更新模块703,用于依据所述第一类节点的集合以及所述第二类节点的集合,生成更新指令,所述更新指令用于将所述待更新节点从所述源运行环境更新到所述目标运行环境。
[0105]可选地,还可以包括:
[0106]预处理模块704,用于在所述确定第一类节点的集合之前,接收用户输入的源运行环境、目标运行环境以及待更新的节点的信息,通过与所述源运行环境的源数据库以及所述目标运行环境的源数据库建立连接,获得所述源运行环境以及所述目标运行环境中的节点的信息,以及确定所述待更新节点更新完成后、在所述目标运行环境中存在的节点的集入口 ο
[0107]进一步地,可选地,所述第一确定模块可以具体包括:
[0108]第一获取单元,用于根据所述源运行环境的信息,获得所述待更新节点在所述源运行环境中的后序节点的集合,所述后序节点为在所述源运行环境的节点时序图中,与所述待更新节点相连且在所述待更新节点之后的节点,所述节点时序图中各个节点之间的连接关系表示各个节点之间的运行时序;
[0109]添加单元,用于将所述待更新节点加入后续节点的集合中;
[0110]第一处理单元,用于遍历所述后序节点的集合中的所有节点:如果当前节点存在于所述目标运行环境中,则将所述当前节点加入所述第一
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1