运维中心DAG图支持您查看节点的上下游依赖关系,此外,还支持节点聚合、上下游分析功能,帮助您提高运维效率。本文为您介绍DAG图的相关功能。
使用限制
仅DataWorks专业版及以上版本用户才可以使用DAG图的节点聚合、上游分析、下游分析功能。版本升级详情请参见软件版本选择与计费。
DAG图功能列表说明
单击相应节点后的DAG图,打开该节点的DAG图。DAG图界面主要包含节点依赖关系展示区域(中央画布,以有向无环图形式呈现各节点及其连线)、左侧节点列表面板(可勾选查看具体节点)以及顶部的节点聚合、上游分析、下游分析等功能入口。您可以在DAG图中进行如下操作(本文以周期实例的DAG图为例):
-
节点聚合
当周期实例的节点数量或层级过多时,您可以按照节点状态、工作空间、责任人、优先级等维度进行节点聚合,查看指定目标维度的节点数量。这方便您了解各个维度节点的数量,合理分配并执行节点。以下示例为您展示,节点不聚合及按优先级聚合的显示情况。
说明仅实例(包括自动调度的周期实例、手动触发生成的补数据实例和测试实例)DAG图可按照节点状态维度进行节点聚合。
-
节点不聚合时,DAG图中各节点独立展示,每个节点显示其名称及类型(如虚拟节点、ODPS SQL、离线同步等),节点间通过连线标识依赖关系,底部提示当前展示10个节点、8层依赖结构。
-
节点按照优先级聚合时,显示效果如下。您可以快速了解到当前节点的子节点共有6个优先级为1的节点。按优先级聚合后的 DAG 图展示依赖链路,从顶部 fanyi_test_root(虚拟节点)依次经过 用户行为分析案例说明(虚拟节点)、table_ddl_ods_raw_log_d(ODPS SQL)、两组各含2个节点的聚合节点,再到 dws_user_info_all_di(ODPS SQL)、ads_user_info_1d(ODPS SQL),最终到达 用户行为分析结果查询(ODPS SQL),各节点间箭头表示调度依赖关系。左侧面板以列表形式展示所有任务名称,可通过复选框选择节点。
-
-
上游分析
周期实例通常存在上下游依赖关系,如果目标节点长时间未运行,则您可以对其进行上游节点分析,在DAG图中查看阻塞当前节点运行的上游节点,快速定位并及时处理相关运行报错,提升节点的执行效率。
说明-
仅实例(包括自动调度的周期实例、手动触发生成的补数据实例和测试实例)DAG图支持进行上游分析。
-
仅支持对未运行的节点执行上游分析操作。最多展示6层。如果您希望展示更多层级,请单击左上角的继续分析。
-
上游分析可帮助您快速找到当前节点所依赖的父节点中仍处于未运行成功状态的节点,这些节点可能处于运行中、运行失败、等待时间、等待资源或冻结(暂停)等状态。当父节点处于这些状态时将阻塞下游节点运行。
示例节点长时间未运行,则您可以选中该节点,单击左上角的上游分析。分析结果得出,导致阻塞当前节点运行的上游节点为
old_work_root节点。通过该分析结果,您可以快速定位阻塞节点,并及时处理相关报错。说明后续操作:
-
您可以在定位到关键实例后,再基于聚合项进行过滤,查看影响当前节点数据产出的关键实例所在工作空间,或节点责任人等,帮助您提高运维效率。
-
定位到阻塞当前实例运行的关键实例后,您还可以右键该实例,选择运行诊断功能快速分析当前实例未运行成功的原因。详情请参见:智能诊断。
上游分析结果中,old_work_root为虚拟节点类型,其下游依赖节点为ODPS SQL类型的sd节点。
-
-
下游分析
展开DAG图时,默认展示三层,包括当前节点及当前节点的一层父节点与一层子节点。当周期实例的节点数或层级过多时,无法直观查看节点影响范围。您可以使用下游分析功能,通过节点状态、工作空间、责任人、优先级等维度进行筛选,统计不同层级目标维度的节点数,或统计所有层级目标维度的节点总数。
说明-
聚合状态下进行合并或分层展示:单击下游分析后,默认按照责任人聚合,统计所有层级该维度的节点总数量。
-
不聚合、成组展示:不聚合场景下,若下游节点超过10个将默认成组展示。该方式下,您可以比较直观地看到节点的业务影响。
-
不成组展示:不聚合场景下,单击拆分组,可对成组的节点进行拆分查看。在这种方式下,您可以直观地了解到所有节点的上下游关系。
-
下游分析使用分层展示下游节点分析结果时,最多展示6层。如果您希望展示更多层级,请单击左上角的继续分析。
示例对tag节点进行下游分析,结果如下:
-
合并:按照当前聚合维度对当前已分析的下游进行合并。非聚合状态下,将对下游节点进行成组展示。示例使用合并方式,并按照所属工作空间聚合,将所有下游节点合并至同一层,展示所属不同工作空间的节点数量。在DAG依赖视图下单击合并按钮,tag节点的下游分析结果以合并模式展示:7个下游节点按分组合并显示,各分组分别聚合了不同数量的子节点,底部状态栏显示当前共展示42个节点、5层。
-
分层:按照当前聚合维度对当前已分析的下游进行分层展示。示例使用分层方式,并按照所属工作空间聚合,在不同层级展示不同工作空间的节点数量。分层:对当前已分析的下游节点按依赖层级进行分层展示。选择 DAG 视图并单击 分层 按钮后,下游节点将按层级从上至下排列,每层显示该层包含的节点数量,页面底部显示当前展示的节点总数与层数(例如"当前展示42个节点,5层")。
-
-
选择DAG图的显示样式。
您可以根据实际需要,单击DAG图所在界面右上角的功能图标,调整DAG图的显示样式。例如,全屏展示、适配屏幕展示等。
示例对节点的下游节点,展示拆分组及成组的DAG图。
-
拆分组的DAG图。通过该方式,您可以直观地了解到所有节点的上下游关系。拆分组模式下,各下游节点以独立卡片形式按依赖层级展开排列,当前共展示15个节点、2层。单击右侧工具栏中的快照图标可将当前DAG图保存为图片。
-
成组的DAG图。通过该方式,以每行呈现5个节点,有序地为您展示下游节点,方便您快速获取下游节点的总数量。
-
拆分组的DAG图。通过该方式,您可以直观地了解到所有节点的上下游关系。拆分组模式下,各下游节点以独立卡片形式按依赖层级展开排列,当前共展示15个节点、2层。单击右侧工具栏中的快照图标可将当前DAG图保存为图片。
-
成组的DAG图。通过该方式,以每行呈现5个节点,有序地为您展示下游节点,方便您快速获取下游节点的总数量。
-
-
拆分组的DAG图通过该方式,您可以直观地了解到所有节点的上下游关系。拆分组模式下,各下游节点以独立卡片形式按依赖层级展开排列,当前共展示15个节点、2层。单击右侧工具栏中的快照图标可将当前DAG图保存为图片。
-
成组的DAG图通过该方式,以每行呈现5个节点,有序地为您展示下游节点,方便您快速获取下游节点的总数量。
DAG图为您展示节点上下游依赖关系,其中实线为同周期依赖,虚线为跨周期依赖。还支持您右键单击目标节点,执行相关操作,以周期实例为例。
|
操作 |
描述 |
|
展开父节点/子节点 |
当一个业务流程有3个及以上节点时,运维中心展示节点时会自动隐藏部分节点。您可以通过展开父子层级查看全部节点的内容。 |
|
查看运行日志 |
查看当前实例正在运行、成功、失败等状态的运行日志。 说明
|
|
运行诊断 |
DataWorks运维中心为您提供运行诊断功能,帮助您掌握节点运行的全链路信息,以迅速定位问题。详情请参见智能诊断。 |
|
查看代码 |
查看当前实例的代码。 |
|
编辑节点 |
单击后,即可跳转至数据开发页面,对当前节点的内容进行修改。 |
|
查看血缘 |
查看当前实例的血缘关系。 |
|
查看更多详情 |
单击后,即可查看当前节点的属性、上下文、运行日志、操作日志和代码等信息。 |
|
终止运行 |
仅等待运行、运行中状态的实例可以进行终止运行的操作。进行此操作后,该实例将变为失败状态。 |
|
重跑 |
可以重跑某节点,节点执行成功后可以触发下游未运行状态节点的调度。常用于处理出错节点和漏跑节点。 说明
仅支持重跑未运行、成功和失败状态的节点。 |
|
重跑下游 |
可以重跑某节点及其下游节点,需要您自定义勾选,勾选的节点将被重跑,节点执行成功后可以触发下游未运行状态节点的调度。常用于处理数据修复。 说明
仅支持勾选未运行、完成和失败状态的节点,如果勾选了其它状态的节点,页面会提示已选节点中包含不符合运行条件的节点,并禁止提交运行。 |
|
置成功 |
将当前实例的状态改为成功,并运行下游未运行状态的节点。常用于处理出错节点。 说明
仅支持将状态为失败的节点置成功,不能置成功业务流程。 |
|
续跑 |
节点执行失败后,可以续跑此节点。仅MaxCompute类型节点支持该功能。 说明
2021年1月之前购买的独享调度资源组,如果需要升级您需要先单击申请链接加入“阿里云大数据AI平台”交流群,再扫描下方二维码加入DataWorks产品钉钉交流群,进行售前售后咨询,咨询可直接@智能机器人,值班时间段内也可直接联系值班人员。 |
|
紧急操作 |
当前实例在非常紧急的情况下的操作,紧急操作只对当前节点本次有效。 选择去除依赖,即可解除当前节点的依赖关系。常用于上游失败并与此实例没有数据关系时, |
|
暂停(冻结) |
周期实例中的冻结只针对当前实例,且正在运行中的实例。冻结的周期实例不自动调度运行(不会真实跑数据),并且会阻塞它的下游节点执行(下游节点都不会自动调度)。 场景示例:如果您每小时调度一次节点,当天生成24个小时实例,如果其中一个小时实例不需要执行,您可以选择冻结该实例,冻结其中一个小时实例不会影响其他实例执行。冻结操作完成后,可在节点的操作日志页签中查看对应的冻结实例调度记录,包含操作时间、操作人及操作详情。 |
|
恢复(解冻) |
可以将冻结状态的实例解冻。
说明
解冻操作仅作用于该实例,如果您周期任务仍是冻结状态, 那么第二天的实例仍会是冻结状态。 |
单击实例,页面右下角会显示实例详情的弹框,单击弹框中的展开详情可以查看单个实例详情,以周期实例为例。
|
功能 |
描述 |
|
属性 |
您可以在此页签查看任务在生产环境的调度属性。界面参数详情请参见:调度配置。
|
|
运行日志 |
用于查看任务详细执行过程。 |
|
操作日志 |
用于查看任务或实例的操作记录(时间、操作人、具体操作)。 |
|
代码 |
用于查看生产环境当前任务的最新代码。若不符合预期,请确认任务最新版本是否已经发布成功。详情请参见:发布任务。 |
