本文将为您介绍DataWorks中,业务流程、解决方案、组件、任务、实例、提交、脚本开发、资源、函数和输出名称等基本概念。

业务流程

针对业务实体,抽象出业务流程的概念,帮助您从业务视角组织代码的开发,提高任务管理效率。
说明 业务流程可以被多个解决方案复用。
业务流程帮助您从业务视角组织代码:
  • 支持基于任务类型的代码组织方式。
  • 支持多级子目录(建议不超过四级)。
  • 支持从业务视角查看整体的业务流程,并进行优化。
  • 支持根据业务流程组织发布和运维。
  • 提供业务流程看板,帮助您更高效地进行开发。

解决方案

您可以自定义组合部分业务流程为一个解决方案。

解决方案的优势如下:
  • 一个解决方案可以包括多个业务流程。
  • 解决方案之间可以复用相同的业务流程。
  • 组织完成的解决方案包含各类节点,可以让您进行沉浸式开发。

组件

您可以将SQL中的通用逻辑抽象为组件,提高代码的复用性。

SQL代码的处理过程通常是引入一到多个源数据表,通过过滤、连接和聚合等操作,加工出新的业务需要的目标表。组件是带有多个输入参数和输出参数的SQL代码过程模板。

任务(Task)

任务是对数据执行的操作的定义,示例如下:
  • 通过数据同步节点任务,将数据从RDS同步至MaxCompute。
  • 通过MaxCompute SQL节点任务,运行MaxCompute SQL来进行数据的转换。

每个任务使用0或0个以上的数据表(数据集)作为输入,生成一个或多个数据表(数据集)作为输出。

任务主要分为节点任务(node task)、工作流任务(flow task)和内部节点(inner node)。任务
任务类型 描述
节点任务(node task) 一个数据执行的操作。可以与其它节点任务、工作流任务配置依赖关系,组成DAG图。
工作流任务(flow task) 满足一个业务场景需求的一组内部节点,组成一个工作流任务,建议工作流任务小于10个。
工作流任务内部节点,无法被其它工作流任务、节点任务依赖。工作流任务可以与其它工作流任务、节点任务配置依赖关系,组成DAG图。
说明 从DataWorks V1.0升级的任务,仍保留工作流的概念。DataWorks V2.0及以上版本已无法创建工作流任务,您可以选择创建业务流程进行后续操作。
内部节点(inner node) 工作流任务内部的节点,与节点任务的功能基本一致。您可以通过拖拽形成依赖关系,其调度周期会继承工作流任务的调度周期,无法进行单独配置。

实例(Instance)

实例是某个任务在某时某刻执行的一个快照。调度系统中的任务,经过调度系统、手动触发运行后,会生成一个实例。实例中会有任务的运行时间、运行状态和运行日志等信息。

例如设置每天2:00运行task1实例,调度系统会在每天23:30根据周期节点定义好的时间,自动生成一个快照,即task1第二天2:00运行的实例。到第二天2:00时,如果判断上游实例已经完成,task1实例便会如期启动运行。
说明 您可以进入运维中心 > 周期任务运维页面,查询实例的相关信息。

提交(Submit)

提交是指开发的节点任务、业务流程,从DataWorks开发环境发布至调度系统的过程。完成提交后,相应的代码、调度配置全部合并至调度系统中,调度系统根据相关配置进行调度操作。
说明 未提交的节点任务、业务流程不会进入调度系统。

脚本开发(Script)

脚本开发是提供给数据分析使用的一个代码存储空间。脚本开发的代码无法发布到调度系统,无法进行调度参数配置,仅可以进行部分数据查询分析的工作。

资源、函数

资源、函数均为MaxCompute的概念,详情请参见资源函数

您可以在DataWorks中,通过界面管理资源和函数。如果通过MaxCompute的其它方式进行资源、函数管理,则无法在DataWorks中进行相关的查询。

输出名称

输出名称:每个任务(Task)输出点的名称。它是您在单个租户(阿里云账号)内设置依赖关系时,用于连接上下游两个任务(Task)的虚拟实体。

当您在设置某任务与其它任务形成上下游依赖关系时,必须根据输出名称(而不是节点名称或节点ID)来完成设置,设置完成后该任务的输出名也同时作为其下游节点的输入名称。输出名称
说明 输出名称可以作为某个Task在同租户内,区别于其它Task的唯一概念对象,每个节点的输出名称默认为项目名称.系统生成9位数字_out。您可以对Task增加自定义输出名,但需要注意输出节点名称在租户内不允许重复。