CN106293928A - 一种全局任务节点依赖关系可视化方法、装置和系统 - Google Patents

一种全局任务节点依赖关系可视化方法、装置和系统 Download PDF

Info

Publication number
CN106293928A
CN106293928A CN201510303336.XA CN201510303336A CN106293928A CN 106293928 A CN106293928 A CN 106293928A CN 201510303336 A CN201510303336 A CN 201510303336A CN 106293928 A CN106293928 A CN 106293928A
Authority
CN
China
Prior art keywords
task node
dependence
node
task
upstream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510303336.XA
Other languages
English (en)
Other versions
CN106293928B (zh
Inventor
吉悦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510303336.XA priority Critical patent/CN106293928B/zh
Priority to PCT/CN2016/083889 priority patent/WO2016192604A1/zh
Publication of CN106293928A publication Critical patent/CN106293928A/zh
Application granted granted Critical
Publication of CN106293928B publication Critical patent/CN106293928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例提供了一种全局任务节点依赖关系可视化方法、装置和系统,涉及计算机技术领域。所述方法包括:发起任务展示请求;所述任务展示请求包括当前任务节点的标识;根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。本申请实施例节省了用户的操作步骤,并且由于当前阶段的依赖关系全面,可同时展示当前任务节点的上、下游的依赖关系,方便用户统一管理其部署的任务。

Description

一种全局任务节点依赖关系可视化方法、装置和系统
技术领域
本申请涉及计算机技术领域,特别是涉及一种全局任务节点依赖关系可视化方法、一种全局任务节点依赖关系可视化装置和一种全局任务节点依赖关系可视化系统。
背景技术
随着大数据的应用,很多数据处理平台会对各种数据进行处理,比如ODPS平台(Open Data Processing Service,开放数据处理服务),该数据平台提供针对TB/PB级数据、实时性要求不高的分布式处理能力,可应用于数据分析、挖掘、商业智能等领域。
那么在数据开发过程中,针对某个数据业务,开发者会将其拆解为一系列的任务部署到数据平台中,该任务是运行在数据平台上的最小调度作业单元。其中,各个任务之间可能存在某种依赖关系,每个任务可以认为是该数据业务中的一个任务节点。而对于数据开发者,其需要对自己部署的任务节点进行监控。
在先的监控任务节点监控方法,其是用户在客户端发送http请求,将任务节点ID传输到后台服务器,后台服务器根据该ID拿到下一级的任务节点,然后将该级任务节点返回给客户端,客户端则展现该级任务节点。但是上述过程,只能展示当前任务节点的下一级任务节点,展示片面;并且,对于一个任务节点A,需要用户逐级的多次点击操作才能得到该任务节点的部分的下游依赖的任务节点,从而得到下游依赖关系,比如任务节点A下一级的任务节点包括A1、A2、A3,用户需要分别点击A1、A2、A3才能得到A1、A2、A3各自的下一级任务节点,从而得到任务节点A的部分下游依赖关系,因此,上述过程用户操作繁琐,其得到依赖关系也只是下游依赖关系,不够全面。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种全局任务节点依赖关系可视化方法和相应的一种全局任务节点依赖关系可视化装置,以及一种全局任务节点依赖关系可视化系统。
为了解决上述问题,本申请公开了一种全局任务节点依赖关系可视化方法,包括:
发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
本申请还公开了一种全局任务节点依赖关系可视化装置,包括:
展示请求发起模块,用于发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
递归搜索模块,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
渲染展示模块,用于基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
本申请实施例包括以下优点:
本申请实施例对于用户当前点击的一个任务节点,发起一次包括当前任务节点的标识的任务展示请求,然后可根据当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点,并且可在递归过程中获取当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,那么即可基于当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。上述过程中,本申请实施例只需用户一次点击操作,即只需客户端发送一次任务展示请求,即可将当前任务节点的上游依赖节点和下游依赖节点一起渲染为全局关系树展示给用户,节省了用户的操作步骤,并且由于当前阶段的依赖关系全面,可同时展示当前任务节点的上、下游的依赖关系,方便用户统一管理其部署的任务。
附图说明
图1是本申请的一种全局任务节点依赖关系可视化方法实施例的步骤流程图;
图1A是任务节点之间的依赖关系的一种示例;
图1B是针对图1A中任务节点6的下游依赖任务节点的正向渲染示例;
图1C针对图1A中任务节点6的上游依赖任务节点的正向渲染示例;
图1D是针对图1B和图1C中的渲染结果进行拼接后渲染的示例;
图2是本申请另一种全局任务节点依赖关系可视化方法实施例的步骤流程图;
图3是本申请的一种全局任务节点依赖关系可视化装置实施例的结构框图;
图4是本申请的另一种全局任务节点依赖关系可视化装置实施例的结构框图;
图5是本申请的一种全局任务节点依赖关系可视化系统实施例的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例的核心构思之一在于,通过用户针对一任务节点所触发的一次性任务展示请求到后台服务器,后台服务器递归搜索该任务节点的上游任务节点和下游任务节点,然后将递归过程中获取到的各任务节点的状态数据及依赖关系返回给前端,在前端对各任务节点的状态数据以依赖关系进行渲染。从而使用户一次性操作就可以对某个任务节点的全局任务依赖关系进行渲染展示,大大降低用户的操作次数,方便用户对全局的任务节点进行统一管理,提升了产品的易用性。
实施例一
参照图1,示出了本申请的一种全局任务节点依赖关系可视化方法实施例的步骤流程图,具体可以包括如下步骤:
步骤110,发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
在本申请实施例中,以ODPS平台为例,在对某个数据业务进行部署时,会将数据业务拆分为一系列任务部署到ODPS平台中,上述任务为运行在数据平台上的最小调度作业单元。而由于该一系列任务的各个任务之间存在依赖关系,每个任务可以看做一个任务节点,每个任务节点可能与一个或多个任务节点存在依赖关系。如图1A的示例所示,任务节点1、2、3处理的结果向下传输到任务节点5,任务节点5处理的结果向下传输到任务节点7,任务节点7处理的结果向下传输到任务节点10、11,任务节点0处理的数据向下传输到任务节点3,任务节点3、4处理的结果向下传输到任务节点6,任务节点6处理的结果向下传输到任务节点7、8、9,任务节点8处理的结果向下传输到任务节点12,其他情况以此类推。
那么如果用户想要查看任务节点6的全局依赖关系,则可以在客户端针对任务节点6发起一次任务展示请求,该任务展示请求包括了任务节点6的ID,比如“6”。
在具体实现中,本申请实施例对于任务展示请求,可以采用ajax请求的形式到后台服务器。ajax(Asynchronous JavaScript And XML,异步的JavaScript和XML),其中JavaScript(脚本语言),XML(可扩展标记语言,Extensible Markup Language)。Ajax可以在不刷新页面的情况下对获取服务器的数据然后实时更新到页面中。Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。本申请实施例中,可以将当前任务节点标识构造ajax请求,其过程大致如下:
1)创建XMLHttpRequest对象实例。
2)利用XMLHttpRequest对象的onreadystatechange属性,设定XMLHttpRequest对象的回调函数,该回调函数是用来处理服务器响应信息的。
3)设定请求属性:设定HTTP(Hypertext transfer protocol,超文本传送协议)方法,利用XMLHttpRequest对象的open()方法设定目标URL。其中HTTP方法包括:GET方法或POST方法,在此处可以选择一个,并且在该HTTP方法中写入当前任务节点的ID。其中目标URL为后台服务器的地址。
如此即构建了一个ajax请求,然后将该ajax请求发送至服务器。在实际应用中可以利用XMLHttpRequest对象的send()方法将ajax请求发送至后台服务器。
当然,本申请实施例实施例中,对于任务展示请求也可以采用其他形式的请求,本申请实施例不对其加以限定。
步骤120,根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
如前述例子,接收到任务展示请求后,解析该任务展示请求中的当前任务节点的标识,比如6。那么如图1A,可以6所在的任务节点为起点,分别向上游和下游递归搜索,搜索任务节点6的上游依赖节点和下游依赖节点。任务节点6的上游依赖为:任务节点6依赖任务节点3和任务节点4,任务节点3依赖任务节点0。任务节点6的下游依赖为:任务节点6依赖任务节点8和任务节点9,任务节点8依赖任务节点12。
在本申请实施例的递归搜索的过程中,每递归到一个任务节点,则获取该任务节点的状态数据及依赖关系。
其中,任务节点的状态数据包括:正在运行、运行成功、运行失败。
当然,在本申请实施例中,还可获取每个任务节点的其他数据,比如任务节点的名称,任务节点是否为叶子节点,任务节点相对任务展示请求中的当前任务节点的级别深度等。
在本申请实施例中,在后台服务器中预先定义了任务节点关系数据表,其至少包括四个字段:任务节点ID、节点数据表ID、依赖类型、节点数据表类型,具体如表(一)
action_id table_id type table_type_id
6 001 2 2
表(一)
其中,action_id为任务节点ID。
table_id为节点数据表ID。
type为依赖类型,指明节点数据表是被该任务节点上游依赖还是下游依赖,比如1为上游依赖,2为下游依赖。每个节点数据表中记录了该任务节点ID依赖的一级任务节点。对于表(一)中的任务节点6,其对应的节点数据表为001,任务节点6向上游依赖节点数据表001中的一级任务节点,赖节点数据表001在包括任务节点{3、4}。当然,对于一个任务节点,也有向下游依赖的节点数据表。当然,如果某个任务节点为叶子节点,则其不再有下游依赖的节点数据表,对应该任务节点的type可设为0,表示对于该条递归路径,到此结束,可以递归其他未被递归的路径。
table_type_id节点数据表类型,如如odps表,ump表,
那么本申请实施例则可以根据上述表分别进行上游递归搜索和下游递归搜索,可以根据表(一)的内容获取某个任务节点的依赖关系,然后可根据搜索到的ID去实际的运行该任务节点的计算节点中获取该任务节点的状态数据。当然,任务节点的状态数据也可以实时加到表(一)的相应任务节点的相应状态数据字段中,那么在本申请递归时,即可直接通过表(一)获取到某个任务节点的状态数据。
优选的,所述步骤120,包括:
子步骤A10,以当前任务节点为起点,分别采用深度优先搜索算法向上游、下游进行递归搜索,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系。
在本申请实施例中,以当前任务节点为起点向上游递归搜索和以当前任务节点为起点向下游递归搜索的方法可以采用dfs算法(Depth First Search,深度优先搜索算法)。
在深度优先搜索算法中,对于最新发现的节点v,如果它还有以此为起点而未探测到的边,就沿此边继续探测下去。当节点v的所有边都己被探寻过,搜索将回溯到还存在有没被探索的边节点进行搜索。上述过程一直进行到已发现从源结点可达的所有节点为止。如果还存在未被发现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被发现为止。
比如对于以任务节点6向上游递归,那么首先根据标识6,递归搜索到任务节点6,则获取任务节点6的状态数据,其向上依赖的任务节点为3、4,3、4为第1级上游依赖;再向上递归搜索到任务节点3,则获取任务节点3的状态数据,其向上依赖任务节点0,0为第2级上游依赖;再向上递归搜索到任务节点0,则获取任务节点0的状态数据,由于0已经为第2级上游依赖,则不再递归搜索,该条递归路径结束;再向上递归搜索到任务节点4,则获取任务节点4的状态数据,任务节点4向上依赖关系为空,没有第2级上游依赖,则该条递归路径结束。至此,任务节点6的2级之内上游依赖节点递归搜索完毕,也获取到了各个上游依赖节点的状态数据和依赖关系。
比如对于以任务节点6向上游递归,则首先根据标识6,递归搜索任务节点6,获取6的状态数据,其向下依赖的任务节点为7、8、9;再向下递归搜索到任务节点7,则获取任务节点7的状态数据,其向下依赖任务节点10、11,再向下递归搜索到任务节点10,则获取任务节点10的状态数据,任务节点10向下的依赖关系为空,该条递归路径结束;再递归搜索到11,则获取任务节点11的状态数据,任务节点11向下的依赖关系为空,该条递归路径结束;再递归搜索到任务节点8,则获取任务节点8的状态数据,任务节点8向上依赖关系为12,则获取任务节点12的状态数据,任务节点12向下的依赖关系为空,则该条递归路径结束;再向下递归搜索到任务节点9,则获取任务节点9的状态数据,任务节点9向下的依赖关系为空,则该条递归路径结束。至此,任务节点6的所有下游依赖节点递归搜索完毕,也获取到了各个上游依赖节点的状态数据和依赖关系。
当然,本申请实施例中也可以采用其他递归方法,在此不对其加以限制。
优选的,在步骤120之后,还包括:
步骤122,采用预置数据结构,将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储为数据文件;所述预置数据结构包括:第一字段:用于存储递归形式的上游依赖关系;第二字段:用于存储递归形式的下游依赖关系;第三字段:用于存储当前递归级的任务节点标识;第四字段:用于存储当前递归级的任务节点的状态数据。
在本申请实施例中,可预先设置一预置数据结构,该预置数据结构包括:第一字段:用于存储递归形式的上游依赖关系;第二字段:用于存储递归形式的下游依赖关系;第三字段:用于存储当前递归级的任务节点标识;第四字段:用于存储当前递归级的任务节点的状态数据。
那么可以通过该预置数据结构将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储为数据文件。
以包括前述第一字段、第二字段、第三字段、第四字段的预置数据结构为例,其示例如下:
其中,deptreenodelist为第一字段,在其中的Objiect{…}中存储递归形式的上游依赖关系;children第二字段,在其中的Objiect{…}中存储递归形式的下游依赖关系;actionid为第三字段,用于存储当前递归级的任务节点标识;status为第四字段,用于存储当前递归级的任务节点的状态数据,比如1表示运行成功,2表示运行失败,3表示正在运行;program表示任务节点对应的源程序,也就是任务实际执行的代码;errMsg表示给客户端返回的错误标识,例如网络不通,数据库错误等系统级错误。
以前述的任务节点6的上游依赖节点为例,其存储的结果如下:
上述示例中以预置的数据结构为基础,对每个任务节点的状态数据和依赖关系进行嵌套存储获得递归形式的上游依赖关系,每个任务节点的状态数据在相应层级的数据结构里存储。最外层是任务节点6的数据结构,然后在任务节点6的数据结构的第一字段中平行嵌入了下一级任务节点的数据结构,即任务节点3、4的数据结构,然后在任务节点3的数据结构的第一字段中嵌入了任务节点0的数据结构。
同理,可以在最外层的数据结构的children字段中嵌套存储下游依赖任务节点,获得递归形式的下游依赖关系。
当然,本申请实施例中,如果对于一个任务节点,还有其他的信息,比如任务节点的名称,任务节点是否为叶子节点,任务节点相对任务展示请求中的当前任务节点的级别深度等,可以在前述预置数据结构中添加相应字段。比如:
其中,is_leaf表示任务节点是否为叶子节点,可设置-1为不是,1为是;depth表示任务节点相对任务展示请求中的当前任务节点的级别深度,比如对于任务节点6来说,其级别为0,每增加一级,数字加1;name的名称为表示任务节点的名称,比如任务节点6的名称qingxiao。
那么,通过上述预置的数据结构,则可以将当前任务节点、上游依赖任务节点、下游依赖节点的各种信息和依赖关系通过数据结构嵌套的方式,实现递归形式的上游依赖关系的存储和递归形式的下游依赖关系的存储,从而获得一个数据文件。
当然,本申请实施例中,还可以每递归搜索到一个任务节点,则将该任务节点的状态数据和依赖关系按照上述预置数据结构存储。
优选的,所述步骤120包括:
步骤A20,根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,在分布式缓存中分别递归搜索上游依赖任务节点和下游依赖任务节点;
步骤A22,当在分布式缓存中未能获取到上游依赖任务节点和下游依赖任务节点,则进入数据库中分别递归搜索上游依赖任务节点和下游依赖任务节点。
在本申请实施例中,各任务节点的数据,比如前述表(一)的数据,预先是存储在后台服务器的数据库中,而当后台服务器接收到客户端发送的任务展示请求后,如果直接从后台服务器的数据库中进行递归搜索,则处理的时间长,客户端的等待时间也较长,那么为了减少客户端的等待时间,本申请实施例后台服务器可先将部分或者全部任务节点的数据以及依赖关系放入分布式缓存中。
那么在根据所述任务展示请求中的当前任务节点ID,首先在分布式缓存中进行上游递归搜索获取上游依赖任务节点,并进行下游递归搜索获取下游依赖任务节点。如果在分布式缓存中没有递归搜索到上游依赖任务节点和或下游依赖任务节点,则可直接进入步骤B12。
步骤130,基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
在本申请实施例对于当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,可以在客户端进行渲染,将其渲染为全局关系树进行展示。
在本申请实施例中,对于每个任务节点的图标,可以将其状态数据以颜色的形式进行展示,如图1D中,白色表示运行成功、比如任务节点10的颜色表示正在运行,任务12的颜色表示运行失败。当然也可以通过其他方式进行展示。
当然,也可以将任务节点的其他信息,比如ID渲染到当前节点的图标中,如图1D。对于任务节点的详细信息,可以在鼠标滑动到相应任务节点的渲染图上时,以弹出框进行展示。当然任务节点的详细信息也可以直接渲染到该任务节点的图标中。
具体的对任务节点的图标的渲染方式,本申请不对其加以限制。
优选的,在前述优选的步骤122的基础之上,所述步骤130包括:
子步骤132,基于所述数据文件中,以预置数据结构存储的当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
后台服务器在采用预置数据结构将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储的数据文件后,可将该数据文件返回至客户端,那么客户端可按照预先的约定解析该数据文件,得到该数据文件中当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,其中如前述例子中:第一字段存储了递归形式的上游依赖关系;第二字段存储了递归形式的下游依赖关系;第三字段存储了当前任务节点标识;第四字段存储了任务节点的状态数据;如果还有其他字段,则按照相应的预定提取相应数据。
然后客户端可基于上述预置数据结构中的数据进行渲染,得到全局关系树进行展示。在本发明实施例中客户端可以为浏览器,优选的可以为支持html5canvas的浏览器,该浏览器可以流畅的支持ajax功能。
优选的,步骤130包括:
子步骤A30,以当前任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得第一多叉树;
在本申请实施例中,可以采用数据化可视工具d3.js(bsd liences)进行渲染,d3.js是一种数据可视化框架,其开源协议为bsd协议。那么本申请实施例可采用d3.js中的treelayout,以当前任务节点为根节点,对当前任何节点和下游任务节点进行正向渲染,得到一个正向的多叉树。
子步骤A32,以指定的任务节点为根节点,根据当前任务节点和上游依赖任务节点的状态数据及依赖关系,进行反向渲染获得第二多叉树;
本申请实施例可采用d3.js中的treelayout,以当前任务节点为根节点,对当前任何节点和上游任务节点进行反向渲染,得到一个反向的多叉树。当然,本发明实施例对treelayout的功能进行了扩展,使其可以进行反向渲染。
优选的,所述子步骤A32包括:
子步骤A321,以指定的任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得与第一多叉树同向的第二多叉树;
在实际应用中,d3.js的treelayout只支持对children字段的节点进行渲染,并且只能渲染为一个多叉树,在本申请实施例中children性质的节点为下游依赖任务节点。而为了实现本申请对当前任务节点的上游任务依赖节点的渲染,本申请实施例在treelayout中复制一套children的渲染方式,并将复制的渲染方式中的children字段替换为deptreenodelist,如此,本申请实施例对上游依赖任务节点的渲染过程实质上与对下游依赖任务节点的渲染过程一致。得到两个同向的多叉树。
那么对于前述以预置数据结构存储的数据文件,前端接收到该数据文件之后,解析得到前述预置数据结构,可以分别以当前任务节点为起点,分别对children和deptreenodelist字段下的任务节点进行渲染,得到两个同向的多叉树。如图1B,为渲染得到下游依赖任务节点的第一多叉树示例;如图1C,为渲染得到上游依赖任务节点的第一多叉树示例。
子步骤A322,将与第一多叉树同向的第二多叉树进行倒置,获得最终的第二多叉树。
在得到同向的第一多叉树和第二多叉树之后,为了得到针对当前任务节点全局关系树,则需要将第二多叉树进行倒置,使其与第一多叉树方向相反。
当然,本申请实施例中,对于第一多叉树和第二多叉树,可以任意改变其方向,只需要保证两者的多叉树互相不影响依赖关系的展现即可,比如第一多叉树向下展示,第二多叉树向上展示,本申请实施例不对其加以限制。
子步骤A34,将第一多叉树和第二多叉树拼接为全局关系树并展示。
本申请实施例可将第一多叉树和第二多叉树进行拼接,上述拼接可将两个多叉树的当前任务节点的渲染图重叠,即可得到当前任务节点的全局关系树,然后即可将该全局关系树展示在客户端。如图1D,为前述例子的展示结果。
在数据处理平台的数据开发过程中,在在先的技术中,技术人员惯性的会设置对下游的任务节点进行展示,并且根据点击操作,获取每个节点的下一级任务节点的数据进行展示。而本申请实施例对于用户当前点击的一个任务节点,发起一次包括当前任务节点的标识的任务展示请求,然后可根据当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点,并且可在递归过程中获取当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,那么即可基于当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
上述过程中,本申请实施例只需用户一次点击操作,即只需客户端发送一次任务展示请求,即可将当前任务节点的上游依赖节点和下游依赖节点一起渲染为全局关系树展示给用户,节省了用户的操作步骤,并且由于当前阶段的依赖关系全面,可同时展示当前任务节点的上、下游的依赖关系,方便用户统一管理其部署的任务。
实施例二
参照图2,示出了本申请的一种全局任务节点依赖关系可视化方法实施例的步骤流程图,具体可以包括如下步骤:
步骤210,发起任务展示请求;所述任务展示请求包括当前任务节点的标识,和以所述当前任务节点为起点的上游依赖层级和下游依赖层级;
在本发明实施例中,用户可以在客户端设置需要展示的上游依赖层级和下游依赖层级,同时指定当前任务节点的ID,然后通过任务展示请求发送到后台服务器。其中上游依赖层级和下游依赖层级均为相对当前任务节点的层级。比如图1A中的任务节点6,直接与任务节点6关联的任务节点3、4为相对任务节点6的第1级上游依赖,直接与任务节点3关联的0为相对任务节点6第2级上游依赖;直接与任务节点6关联的任务节点7、8、9为相对任务节点6的第1级下游依赖,直接与任务节点7关联的10、11为相对任务节点6第2级上游依赖,接与任务节点8关联的12为相对任务节点6第2级上游依赖。其他情况以此类推。
步骤220,根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖层级之内的上游依赖任务节点和下游依赖层级之内的下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
后台服务器收到前述任务展示请求之后,则根据当前任务节点的标识,可向上游递归搜索,比如规定上游依赖层级为2,下游依赖层级为2,则
对于以任务节点6向上游递归,那么首先根据标识6,递归搜索到任务节点6,则获取任务节点6的状态数据,其向上依赖的任务节点为3、4;再向上递归搜索到任务节点3,则获取任务节点3的状态数据,其向上依赖任务节点0;再向上递归搜索到任务节点0,则获取任务节点0的状态数据,任务节点0向上的依赖关系为空,该条递归路径结束;再向上递归搜索到任务节点4,则获取任务节点4的状态数据,任务节点4向上依赖关系为空,则该条递归路径结束。至此,任务节点6的所有上游依赖节点递归搜索完毕,也获取到了各个上游依赖节点的状态数据和依赖关系。
比如对于以任务节点6向上游递归,则首先根据标识6,递归搜索任务节点6,获取6的状态数据,其向下依赖的任务节点为7、8、9,7、8、9为第1级下游依赖;再向下递归搜索到任务节点7,则获取任务节点7的状态数据,其向下依赖任务节点10、11,10、11为第2级下游依赖,再向下递归搜索到任务节点10,则获取任务节点10的状态数据,由于已经是第2级下游依赖,则不再向下递归,即使下游还有任务节点,因此该条递归路径结束;再递归搜索到11,则获取任务节点11的状态数据,由于已经是第2级下游依赖,则不再向下递归,即使下游还有任务节点,因此该条递归路径结束;再递归搜索到任务节点8,则获取任务节点8的状态数据,任务节点8向上依赖关系为12,则获取任务节点12的状态数据,由于已经是第2级下游依赖,则不再向下递归,即使下游还有任务节点,因此该条递归路径结束;再向下递归搜索到任务节点9,则获取任务节点9的状态数据,任务节点9向下的依赖关系为空,则该条递归路径结束。至此,任务节点6的2级之内的下游依赖节点递归搜索完毕,也获取到了各个上游依赖节点的状态数据和依赖关系。
当然,在后台服务器中,也可在数据库中预置实施例一中的表(一),递归搜索时根据表(一)进行递归。并且表(一)中的内容可以部分或者全部的放置于分布式缓存中。
当然,在后台服务器中,也可将获取到的当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系采用类似实施例1中的采用预置数据结构,存储为数据文件,然后将该数据文件返回客户端,客户端可解析该数据文件进行渲染,得到全局关系树。
步骤230,基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
本申请实施例对于用户当前点击的一个任务节点,发起一次包括当前任务节点的标识的任务展示请求和上游依赖层级和下游依赖层级,然后可根据当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖层级之内的上游依赖任务节点和下游依赖层级之内的下游依赖任务节点,并且可在递归过程中获取当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,那么即可基于当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
上述过程中,本申请实施例只需用户一次点击操作,即只需客户端发送一次任务展示请求,即可将当前任务节点的上游依赖节点和下游依赖节点一起渲染为全局关系树展示给用户,节省了用户的操作步骤,并且由于当前阶段的依赖关系全面,可同时展示当前任务节点的上、下游的依赖关系,并且由于可以设置上、下游依赖层级,进一步方便用户统一管理其部署的任务。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
实施例三
参照图3,示出了本申请的一种全局任务节点关系可视化装置实施例的结构框图,具体可以包括如下模块:
展示请求发起模块310,用于发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
递归搜索模块320,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
渲染展示模块330,用于基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
优选的,在递归搜索模块320之后,还包括:
节点数据存储模块,用于采用预置数据结构,将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储为数据文件;所述预置数据结构包括:第一字段:用于存储递归形式的上游依赖关系;第二字段:用于存储递归形式的下游依赖关系;第三字段:用于存储当前递归级的任务节点标识;第四字段:用于存储当前递归级的任务节点的状态数据;
进一步的,所述渲染展示模块包括:
第一渲染展示模块,用于基于所述数据文件中,以预置数据结构存储的当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
优选的,所述渲染展示模块330包括
第一多叉树渲染模块,用于以当前任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得第一多叉树;
第二多叉树渲染模块,用于以指定的任务节点为根节点,根据当前任务节点和上游依赖任务节点的状态数据及依赖关系,进行反向渲染获得第二多叉树;
拼接展示模块,用于将第一多叉树和第二多叉树拼接为全局关系树并展示。
优选的,所述第二多叉树渲染模块包括:
同向渲染模块,用于以指定的任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得与第一多叉树同向的第二多叉树;
倒置模块,用于将与第一多叉树同向的第二多叉树进行倒置,获得最终的第二多叉树。
优选的,所述递归搜索模块320包括:
深度递归搜索模块,用于以当前任务节点为起点,分别采用深度优先搜索算法向上游、下游进行递归搜索,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系。
优选的,所述递归搜索模块320包括:
分布式搜索模块,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,在分布式缓存中分别递归搜索上游依赖任务节点和下游依赖任务节点;
数据库搜索模块,用于当在分布式缓存中未能获取到上游依赖任务节点和下游依赖任务节点,则进入数据库中分别递归搜索上游依赖任务节点和下游依赖任务节点。
实施例四
参照图4,示出了本申请的一种全局任务节点关系可视化装置实施例的结构框图,具体可以包括如下模块:
展示请求发起模块410,用于发起任务展示请求;所述任务展示请求包括当前任务节点的标识,和以所述当前任务节点为起点的上游依赖层级和下游依赖层级;
递归搜索模块420,具体包括:
层级递归搜索模块422,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖层级之内的上游依赖任务节点和下游依赖层级之内的下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
渲染展示模块430,用于基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
实施例五
参照图5,示出了本申请的一种全局任务节点关系可视化系统实施例的结构框图,具体可以包括如下模块:
客户端510和后台服务器520;
所述客户端510包括:
展示请求发起模块512,用于发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
渲染展示模块514,用于基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示;
所述后台服务器520包括:
递归搜索模块522,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,并将各任务节点的状态数据及依赖关系返回客户端。
优选的,所述后台服务器还包括:
节点数据存储模块,用于采用预置数据结构,将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储为数据文件,并将所述数据文件返回客户端;所述预置数据结构包括:第一字段:用于存储递归形式的上游依赖关系;第二字段:用于存储递归形式的下游依赖关系;第三字段:用于存储当前递归级的任务节点标识;第四字段:用于存储当前递归级的任务节点的状态数据;
进一步的,在所述客户端中,所述渲染模块包括:
第一渲染模块,用于基于所述数据文件中,以预置数据结构存储的当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种全局任务节点关系可视化方法和一种全局任务节点关系可视化装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (16)

1.一种全局任务节点依赖关系可视化方法,其特征在于,包括:
发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
2.根据权利要求1所述的方法,其特征在于,在获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系的步骤之后,还包括:
采用预置数据结构,将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储为数据文件;所述预置数据结构包括:第一字段:用于存储递归形式的上游依赖关系;第二字段:用于存储递归形式的下游依赖关系;第三字段:用于存储当前递归级的任务节点标识;第四字段:用于存储当前递归级的任务节点的状态数据;
进一步的,所述基于各任务节点的状态数据及依赖关系,渲染得到节点关系树并展示的步骤包括:
基于所述数据文件中,以预置数据结构存储的当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
3.根据权利要求1所述的方法,其特征在于,所述基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示的步骤,包括
以当前任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得第一多叉树;
以指定的任务节点为根节点,根据当前任务节点和上游依赖任务节点的状态数据及依赖关系,进行反向渲染获得第二多叉树;
将第一多叉树和第二多叉树拼接为全局关系树并展示。
4.根据权利要求3所述的方法,其特征在于,所述以指定的任务节点为根节点,根据当前任务节点和上游依赖任务节点的状态数据及依赖关系,进行反向渲染获得第二多叉树的步骤包括:
以指定的任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得与第一多叉树同向的第二多叉树;
将与第一多叉树同向的第二多叉树进行倒置,获得最终的第二多叉树。
5.根据权利要求1所述的方法,其特征在于,所述根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点的步骤,包括:
以当前任务节点为起点,分别采用深度优先搜索算法向上游、下游进行递归搜索,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系。
6.根据权利要求1所述的方法,其特征在于,所述根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点的步骤包括:
根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,在分布式缓存中分别递归搜索上游依赖任务节点和下游依赖任务节点;
当在分布式缓存中未能获取到上游依赖任务节点和下游依赖任务节点,则进入数据库中分别递归搜索上游依赖任务节点和下游依赖任务节点。
7.根据权利要求1所述的方法,其特征在于,在所述任务展示请求中还包括:
以所述当前任务节点为起点的上游依赖层级和下游依赖层级;
进一步的,所述根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点的步骤,包括:
根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖层级之内的上游依赖任务节点和下游依赖层级之内的下游依赖任务节点。
8.一种全局任务节点依赖关系可视化装置,其特征在于,包括:
展示请求发起模块,用于发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
递归搜索模块,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系;
渲染展示模块,用于基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
9.根据权利要求8所述的装置,其特征在于,在递归搜索模块之后,还包括:
节点数据存储模块,用于采用预置数据结构,将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储为数据文件;所述预置数据结构包括:第一字段:用于存储递归形式的上游依赖关系;第二字段:用于存储递归形式的下游依赖关系;第三字段:用于存储当前递归级的任务节点标识;第四字段:用于存储当前递归级的任务节点的状态数据;
进一步的,所述渲染展示模块包括:
第一渲染展示模块,用于基于所述数据文件中,以预置数据结构存储的当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
10.根据权利要求9所述的装置,其特征在于,所述渲染展示模块包括
第一多叉树渲染模块,用于以当前任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得第一多叉树;
第二多叉树渲染模块,用于以指定的任务节点为根节点,根据当前任务节点和上游依赖任务节点的状态数据及依赖关系,进行反向渲染获得第二多叉树;
拼接展示模块,用于将第一多叉树和第二多叉树拼接为全局关系树并展示。
11.根据权利要求10所述的装置,其特征在于,所述第二多叉树渲染模块包括:
同向渲染模块,用于以指定的任务节点为根节点,根据当前任务节点和下游依赖任务节点的状态数据及依赖关系,进行正向渲染获得与第一多叉树同向的第二多叉树;
倒置模块,用于将与第一多叉树同向的第二多叉树进行倒置,获得最终的第二多叉树。
12.根据权利要求8所述的装置,其特征在于,所述递归搜索模块包括:
深度递归搜索模块,用于以当前任务节点为起点,分别采用深度优先搜索算法向上游、下游进行递归搜索,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系。
13.根据权利要求8所述的装置,其特征在于,所述递归搜索模块包括:
分布式搜索模块,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,在分布式缓存中分别递归搜索上游依赖任务节点和下游依赖任务节点;
数据库搜索模块,用于当在分布式缓存中未能获取到上游依赖任务节点和下游依赖任务节点,则进入数据库中分别递归搜索上游依赖任务节点和下游依赖任务节点。
14.根据权利要求8所述的装置,其特征在于,在所述任务展示请求中还包括:
以所述当前任务节点为起点的上游依赖层级和下游依赖层级;
进一步的,所述递归搜索模块包括:
层级递归搜索模块,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖层级之内的上游依赖任务节点和下游依赖层级之内的下游依赖任务节点。
15.一种全局任务节点依赖关系可视化系统,其特征在于,包括:客户端和后台服务器;
所述客户端包括:
展示请求发起模块,用于发起任务展示请求;所述任务展示请求包括当前任务节点的标识;
渲染展示模块,用于基于各任务节点的状态数据及依赖关系,渲染得到全局关系树并展示;
所述后台服务器包括:
递归搜索模块,用于根据所述任务展示请求中的当前任务节点的标识,以当前任务节点为起点,分别递归搜索上游依赖任务节点和下游依赖任务节点;其中,在递归过程中,获取所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,并将各任务节点的状态数据及依赖关系返回客户端。
16.根据权利要求8所述的装置,其特征在于,所述后台服务器还包括:
节点数据存储模块,用于采用预置数据结构,将所述当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系存储为数据文件,并将所述数据文件返回客户端;所述预置数据结构包括:第一字段:用于存储递归形式的上游依赖关系;第二字段:用于存储递归形式的下游依赖关系;第三字段:用于存储当前递归级的任务节点标识;第四字段:用于存储当前递归级的任务节点的状态数据;
进一步的,所述渲染模块包括:
第一渲染模块,用于基于所述数据文件中,以预置数据结构存储的当前任务节点、上游依赖任务节点和下游依赖任务节点的状态数据及依赖关系,渲染得到全局关系树并展示。
CN201510303336.XA 2015-06-05 2015-06-05 一种全局任务节点依赖关系可视化方法、装置和系统 Active CN106293928B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510303336.XA CN106293928B (zh) 2015-06-05 2015-06-05 一种全局任务节点依赖关系可视化方法、装置和系统
PCT/CN2016/083889 WO2016192604A1 (zh) 2015-06-05 2016-05-30 一种全局任务节点依赖关系可视化方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510303336.XA CN106293928B (zh) 2015-06-05 2015-06-05 一种全局任务节点依赖关系可视化方法、装置和系统

Publications (2)

Publication Number Publication Date
CN106293928A true CN106293928A (zh) 2017-01-04
CN106293928B CN106293928B (zh) 2020-04-14

Family

ID=57440119

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510303336.XA Active CN106293928B (zh) 2015-06-05 2015-06-05 一种全局任务节点依赖关系可视化方法、装置和系统

Country Status (2)

Country Link
CN (1) CN106293928B (zh)
WO (1) WO2016192604A1 (zh)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106953765A (zh) * 2017-03-31 2017-07-14 焦点科技股份有限公司 一种互联网路径流量数据生成和展现方法
CN108509440A (zh) * 2017-02-24 2018-09-07 腾讯科技(深圳)有限公司 一种数据处理方法及装置
CN108984284A (zh) * 2018-06-26 2018-12-11 杭州比智科技有限公司 基于离线计算平台的dag任务调度方法及装置
CN109408204A (zh) * 2017-08-15 2019-03-01 阿里巴巴集团控股有限公司 一种分布式任务系统的任务调度方法及装置
CN109508413A (zh) * 2018-10-22 2019-03-22 中国银行股份有限公司 作业调度展示方法及装置、存储介质及电子设备
CN109918432A (zh) * 2019-01-28 2019-06-21 中国平安财产保险股份有限公司 提取任务关系链的方法、装置、计算机设备和存储介质
CN110674284A (zh) * 2019-08-26 2020-01-10 四川新网银行股份有限公司 多系统的方法调用链路图的生成方法
CN110865875A (zh) * 2018-08-27 2020-03-06 阿里巴巴集团控股有限公司 Dag任务关系图的处理方法、装置及电子设备
CN110908780A (zh) * 2019-10-12 2020-03-24 中国平安财产保险股份有限公司 调度平台的任务梳理方法、装置、设备及存储介质
CN110968749A (zh) * 2019-12-23 2020-04-07 武汉智领云科技有限公司 基于大数据容器化调度中心系统的可视化显示装置及方法
CN111049676A (zh) * 2019-11-27 2020-04-21 深圳震有科技股份有限公司 发现式组网健康可视化方法及系统、计算机设备、介质
CN111930734A (zh) * 2020-08-11 2020-11-13 中国工商银行股份有限公司 基于任务和字段的数据下线方法及系统
CN111949832A (zh) * 2020-08-14 2020-11-17 中国工商银行股份有限公司 批量作业依赖关系的解析方法及装置
CN111967702A (zh) * 2019-05-20 2020-11-20 阿里巴巴集团控股有限公司 数据处理方法和系统
CN112418588A (zh) * 2020-09-03 2021-02-26 上海哔哩哔哩科技有限公司 任务流显示方法及装置
CN112433950A (zh) * 2020-11-30 2021-03-02 天津五八到家货运服务有限公司 自动搭建测试环境的方法、电子设备及存储介质
CN112765343A (zh) * 2020-12-30 2021-05-07 蔚来汽车科技(安徽)有限公司 交互式数据血缘关系可视化表示方法、系统及装置
CN112925997A (zh) * 2021-02-25 2021-06-08 平安普惠企业管理有限公司 适用于Azkaban的任务依赖图展示方法及相关设备
CN113268485A (zh) * 2021-06-02 2021-08-17 电信科学技术第十研究所有限公司 数据表关联分析方法、装置、设备及存储介质
CN113396381A (zh) * 2019-02-08 2021-09-14 株式会社工程师论坛 树信息提供装置及树信息提供用程序产品
CN113760476A (zh) * 2020-06-04 2021-12-07 广州虎牙信息科技有限公司 任务依赖处理方法及相关装置
CN113946394A (zh) * 2021-10-13 2022-01-18 上海淇玥信息技术有限公司 一种任务流运行结果实时展示方法、装置和电子设备
CN114168275A (zh) * 2021-10-28 2022-03-11 厦门国际银行股份有限公司 任务调度方法、系统、终端设备及存储介质
CN114470767A (zh) * 2022-02-15 2022-05-13 竞技世界(北京)网络技术有限公司 一种任务处理方法、装置及电子设备
CN114819631A (zh) * 2022-04-25 2022-07-29 中国平安人寿保险股份有限公司 一种多任务的可视化方法、装置、计算机设备及存储介质
CN118394510A (zh) * 2024-04-22 2024-07-26 和创(北京)科技股份有限公司 数据请求方法、装置、设备及介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110020018B (zh) * 2017-12-20 2023-08-29 阿里巴巴集团控股有限公司 数据可视化展示方法及装置
CN110716842B (zh) * 2019-10-09 2023-11-21 北京小米移动软件有限公司 集群故障检测方法和装置
CN111324629B (zh) * 2020-02-19 2023-08-15 望海康信(北京)科技股份公司 业务数据处理方法、装置、电子设备及计算机存储介质
CN113495805B (zh) * 2020-03-19 2024-06-07 阿里巴巴集团控股有限公司 数据处理方法、节点确定方法、装置、设备及介质
CN111464390B (zh) * 2020-03-31 2022-06-10 中国建设银行股份有限公司 网络应用系统监控预警方法及系统
CN111831317B (zh) * 2020-06-02 2024-02-06 北京百度网讯科技有限公司 服务间依赖关系的获取方法、装置、电子设备和存储介质
CN112085471B (zh) * 2020-09-10 2024-05-07 北京百度网讯科技有限公司 任务分发方法、装置、电子设备及存储介质
CN112527474B (zh) * 2020-12-10 2023-07-25 北京百度网讯科技有限公司 任务处理方法及装置、设备、可读介质、计算机程序产品
CN112954056B (zh) * 2021-02-10 2023-08-15 北京字跳网络技术有限公司 监控数据处理方法、装置、电子设备及存储介质
CN113836454A (zh) * 2021-09-15 2021-12-24 深圳壹账通智能科技有限公司 一种内容展示页面的展示方法、装置、介质及设备
CN114697398B (zh) * 2022-03-23 2023-10-17 北京百度网讯科技有限公司 数据处理方法、装置、电子设备、存储介质及产品
CN116628351B (zh) * 2023-07-26 2023-10-20 安徽思高智能科技有限公司 基于节点依赖的流程图分支推荐方法、设备及存储设备
CN118467139A (zh) * 2024-07-04 2024-08-09 智者四海(北京)技术有限公司 回溯实例血缘图构建方法、任务回溯方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102708521A (zh) * 2012-05-28 2012-10-03 中国电力科学研究院 一种基于多叉树自动布局的电网供电路径展现方法
CN103019691A (zh) * 2012-11-20 2013-04-03 北京思特奇信息技术股份有限公司 一种etl作业关系图的转化方法及其实现系统
CN103207730A (zh) * 2013-04-03 2013-07-17 珠海飞企软件有限公司 一种可定位拖拉式流程图生成方法及流程图生成器
CN103530379A (zh) * 2013-10-15 2014-01-22 福建榕基软件股份有限公司 树形结构数据显示方法与装置
CN104133900A (zh) * 2014-08-04 2014-11-05 浪潮通用软件有限公司 一种360°树状视图的定义描述方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6944756B2 (en) * 2002-01-10 2005-09-13 Sun Microsystems, Inc. Controls for recursion at system startup
CN1713192A (zh) * 2004-06-25 2005-12-28 国际商业机器公司 处理逻辑建模与执行方法和设备
CN101702157B (zh) * 2009-10-28 2013-08-21 金蝶软件(中国)有限公司 一种实现对树节点进行选择的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102708521A (zh) * 2012-05-28 2012-10-03 中国电力科学研究院 一种基于多叉树自动布局的电网供电路径展现方法
CN103019691A (zh) * 2012-11-20 2013-04-03 北京思特奇信息技术股份有限公司 一种etl作业关系图的转化方法及其实现系统
CN103207730A (zh) * 2013-04-03 2013-07-17 珠海飞企软件有限公司 一种可定位拖拉式流程图生成方法及流程图生成器
CN103530379A (zh) * 2013-10-15 2014-01-22 福建榕基软件股份有限公司 树形结构数据显示方法与装置
CN104133900A (zh) * 2014-08-04 2014-11-05 浪潮通用软件有限公司 一种360°树状视图的定义描述方法

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509440A (zh) * 2017-02-24 2018-09-07 腾讯科技(深圳)有限公司 一种数据处理方法及装置
CN106953765A (zh) * 2017-03-31 2017-07-14 焦点科技股份有限公司 一种互联网路径流量数据生成和展现方法
CN109408204A (zh) * 2017-08-15 2019-03-01 阿里巴巴集团控股有限公司 一种分布式任务系统的任务调度方法及装置
CN108984284A (zh) * 2018-06-26 2018-12-11 杭州比智科技有限公司 基于离线计算平台的dag任务调度方法及装置
CN110865875A (zh) * 2018-08-27 2020-03-06 阿里巴巴集团控股有限公司 Dag任务关系图的处理方法、装置及电子设备
CN110865875B (zh) * 2018-08-27 2023-04-11 阿里巴巴集团控股有限公司 Dag任务关系图的处理方法、装置及电子设备
CN109508413A (zh) * 2018-10-22 2019-03-22 中国银行股份有限公司 作业调度展示方法及装置、存储介质及电子设备
CN109918432A (zh) * 2019-01-28 2019-06-21 中国平安财产保险股份有限公司 提取任务关系链的方法、装置、计算机设备和存储介质
CN109918432B (zh) * 2019-01-28 2024-05-28 中国平安财产保险股份有限公司 提取任务关系链的方法、装置、计算机设备和存储介质
CN113396381B (zh) * 2019-02-08 2023-11-28 株式会社工程师论坛 树信息提供装置及存储介质
CN113396381A (zh) * 2019-02-08 2021-09-14 株式会社工程师论坛 树信息提供装置及树信息提供用程序产品
CN111967702A (zh) * 2019-05-20 2020-11-20 阿里巴巴集团控股有限公司 数据处理方法和系统
CN110674284A (zh) * 2019-08-26 2020-01-10 四川新网银行股份有限公司 多系统的方法调用链路图的生成方法
CN110908780A (zh) * 2019-10-12 2020-03-24 中国平安财产保险股份有限公司 调度平台的任务梳理方法、装置、设备及存储介质
CN110908780B (zh) * 2019-10-12 2023-07-21 中国平安财产保险股份有限公司 调度平台的任务梳理方法、装置、设备及存储介质
CN111049676A (zh) * 2019-11-27 2020-04-21 深圳震有科技股份有限公司 发现式组网健康可视化方法及系统、计算机设备、介质
CN111049676B (zh) * 2019-11-27 2022-11-25 深圳震有科技股份有限公司 发现式组网健康可视化方法及系统、计算机设备、介质
CN110968749A (zh) * 2019-12-23 2020-04-07 武汉智领云科技有限公司 基于大数据容器化调度中心系统的可视化显示装置及方法
CN113760476B (zh) * 2020-06-04 2024-02-09 广州虎牙信息科技有限公司 任务依赖处理方法及相关装置
CN113760476A (zh) * 2020-06-04 2021-12-07 广州虎牙信息科技有限公司 任务依赖处理方法及相关装置
CN111930734B (zh) * 2020-08-11 2023-08-04 中国工商银行股份有限公司 基于任务和字段的数据下线方法及系统
CN111930734A (zh) * 2020-08-11 2020-11-13 中国工商银行股份有限公司 基于任务和字段的数据下线方法及系统
CN111949832A (zh) * 2020-08-14 2020-11-17 中国工商银行股份有限公司 批量作业依赖关系的解析方法及装置
CN112418588B (zh) * 2020-09-03 2023-08-01 上海哔哩哔哩科技有限公司 任务流显示方法及装置
CN112418588A (zh) * 2020-09-03 2021-02-26 上海哔哩哔哩科技有限公司 任务流显示方法及装置
CN112433950A (zh) * 2020-11-30 2021-03-02 天津五八到家货运服务有限公司 自动搭建测试环境的方法、电子设备及存储介质
CN112765343A (zh) * 2020-12-30 2021-05-07 蔚来汽车科技(安徽)有限公司 交互式数据血缘关系可视化表示方法、系统及装置
CN112925997B (zh) * 2021-02-25 2023-02-03 平安普惠企业管理有限公司 适用于Azkaban的任务依赖图展示方法及相关设备
CN112925997A (zh) * 2021-02-25 2021-06-08 平安普惠企业管理有限公司 适用于Azkaban的任务依赖图展示方法及相关设备
CN113268485A (zh) * 2021-06-02 2021-08-17 电信科学技术第十研究所有限公司 数据表关联分析方法、装置、设备及存储介质
CN113268485B (zh) * 2021-06-02 2024-02-09 电信科学技术第十研究所有限公司 数据表关联分析方法、装置、设备及存储介质
CN113946394A (zh) * 2021-10-13 2022-01-18 上海淇玥信息技术有限公司 一种任务流运行结果实时展示方法、装置和电子设备
CN114168275B (zh) * 2021-10-28 2022-10-18 厦门国际银行股份有限公司 任务调度方法、系统、终端设备及存储介质
CN114168275A (zh) * 2021-10-28 2022-03-11 厦门国际银行股份有限公司 任务调度方法、系统、终端设备及存储介质
CN114470767A (zh) * 2022-02-15 2022-05-13 竞技世界(北京)网络技术有限公司 一种任务处理方法、装置及电子设备
CN114819631A (zh) * 2022-04-25 2022-07-29 中国平安人寿保险股份有限公司 一种多任务的可视化方法、装置、计算机设备及存储介质
CN118394510A (zh) * 2024-04-22 2024-07-26 和创(北京)科技股份有限公司 数据请求方法、装置、设备及介质

Also Published As

Publication number Publication date
WO2016192604A1 (zh) 2016-12-08
CN106293928B (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
CN106293928A (zh) 一种全局任务节点依赖关系可视化方法、装置和系统
JP5431261B2 (ja) 情報管理システム、方法及びプログラム
Czarnecki et al. Cardinality-based feature modeling and constraints: A progress report
US20170154088A1 (en) Systems and Methods for Interactive Visual Analysis Using A Specialized Virtual Machine
US10318595B2 (en) Analytics based on pipes programming model
CN106657192B (zh) 一种用于呈现服务调用信息的方法与设备
CN113296856B (zh) 页面跳转与路由配置方法、设备、系统及存储介质
US9471211B2 (en) Chaining applications
US10387815B2 (en) Continuously variable resolution of resource allocation
US20130097592A1 (en) User selected flow graph modification
TW202001735A (zh) 營銷資訊投放平台建立方法及裝置
Hirmer et al. FlexMash–flexible data mashups based on pattern-based model transformation
US10789277B2 (en) Systems methods, and apparatuses for creating, linking and discovering business navigation maps for analyzing data
CN106411970A (zh) 一种基于服务调用的故障处理方法、装置和系统
CN115082247A (zh) 基于标签库的系统投产方法、装置、设备、介质和产品
US20120331481A1 (en) Interaction between applications built on different user interface technologies
CN106383738B (zh) 任务处理方法和分布式计算框架
CN112328837A (zh) 数据展示方法、装置、设备及存储介质
US12032809B2 (en) Computer system and method for creating, assigning, and interacting with action items related to a collaborative task
Abdellatif et al. Minimum initial marking estimation of labeled Petri nets based on GRASP inspired method (GMIM)
US9886520B2 (en) Exposing relationships between universe objects
CA2887305C (en) Method and system of knowledge transfer between users of a software application
Lee et al. An Asynchronous-Driven Node. js Based Intermediary-free Direct Deal Distribution Platform Converged with Cloud Service
Chawla et al. Goal based requirements analysis using WebURN
CN112686743B (zh) 资源转移追踪方法、装置、系统和电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant