工作流使用案例
在Databricks数据开发中,您可以在项目空间的作业编辑中创建一组有依赖的作业,然后创建工作流,按照依赖次序定义执行顺序,Databricks工作流支持基于有向无环(DAG)并行执行大数据作业。
前提条件
通过主账号登录阿里云 Databricks控制台。
已创建集群,具体请参见创建集群。
已创建好需要测试的作业,具体请参见作业提交示例。
新建项目空间
通过以下步骤,可以新建项目空间。
在Databricks控制台页面,单机左侧导航栏的项目空间。
单机新建项目。
填写项目名称、项目描述、单机确定。
新建工作流
通过以下步骤,可以新建工作流。
进入项目空间。
在工作流设计区域,在需要操作的文件夹上单击右键,选择新建工作流。
填写工作流名称、工作流描述、执行集群。
单机确定。
编辑工作流
在工作流画布上,拖拽不同类型的作业节点到画布上,并进行节点编辑,选择相关作业。
根据依赖关系,从节点底部中心可连接到另一节点上部中心。
完成依赖关系后,再添建END组件。
单机画布上方保存。
在编辑工作流时,可以单机画布上方上锁来为未工作流添加编辑锁,此时只有您可以编辑,其他项目人员无法编辑和运行该工作流。只有解锁后,项目中其他人员才可以编辑该作业。
配置工作流调度
您可以打开工作流调度开关并配置工作流调度参数,调度系统会按照参数定时运行相关工作流,并将作业下发到指定集群上执行。以下介绍配置工作流的基本属性、调度属性和告警设置。
完成工作流设计后,单机画布右上角配置按钮,进行相关配置。
配置基本属性。
配置项
说明
执行集群
工作流中作业默认的运行方法
配置调度属性。
配置项
说明
调度状态
启动或停止工作流调度。开启后,工作流编辑画布上方会出现调度中的状态提示。
时间属性调度
设置工作流调度的开始时间和调度周期,在此时间范围内,系统会根据您设置的周期执行工作流。
依赖属性调度
选择当前工作流的前续工作流。当前续工作流执行完成后,当前工作流才会被调度执行。
选择所选项目。
从所选项目中,选择依赖工作流。
配置告警设置。
配置项
说明
执行失败
设置工作流执行失败时,是否通知到用户告警组或钉钉告警组。
节点失败
设置工作流节点失败时,是否通知到用户告警组或钉钉告警组。
执行成功
设置工作流执行成功时,是否通知到用户告警组或钉钉告警组。
启动超时
设置如果工作流中有节点在下发到集群后30分钟内还没有启动时,是否通知到用户告警组或钉钉告警组。
节点执行超时
设置如果节点执行时长超过作业配置里的预期最大运行时长时,是否通知到用户告警组或钉钉告警组。
执行工作流
您也可以指定工作流的业务时间,此时工作流作业中的时间相关变量将使用指定的业务时间进行计算,一般用于重跑某个时间段的工作流实例,可以设置单次重跑或批量重跑。如果您的作业中没有任何时间相关变量,可以选择在当前时间立即执行,即可运行工作流。
单机项目空间。
在项目列表页面,进入对应的项目空间。
选择工作流设计。
单机画布上方的运行按钮。
配置相关运行参数。
立即运行:立即运行一个工作流,可以将指定时间作为本工作流的业务时间,时间相关的变量将使用该时间进行计算。
设置时间调度运行:设置开始时间和调度周期。打开跳过成功节点开关时,如果某个业务时间对应的工作流实例是成功的,将会跳过该业务时间的实例,继续运行其他业务时间失败的工作流实例。
立即运行一批工作流,设置工作流业务时间的开始时间和调度周期,运行时系统会将指定调度规则的触发时间作为本工作流的业务时间,时间相关的变量将使用该时间进行计算。一次最多支持100个触发时间点。
单机确定。
查看工作流运行记录
运行工作流后,可通过以下步骤查看工作流运行记录。
在工作流页面,单机画布下方运行记录标签,可以查看当前工作流的运行记录、审计日志、版本控制。
单击工作流实例所在行的详情,跳转至运维中心。
查看工作流实例的详细情况,也可以暂停、恢复、停止和重跑工作流实例,详情请参见运维中心。
详情:查看工作流实例的详细信息,包括工作流节点实例的详细信息和运行状态。
停止工作流:终止正在运行的工作流实例,所有正在运行的作业节点立即停止。
暂停工作流:暂停正在运行的工作流实例,正在运行的作业节点会继续执行,但后续的作业节点不再执行。
恢复工作流:恢复已被暂停的工作流实例。
重跑工作流:重新运行已经结束的工作流实例。单击重跑后,可以选择只重试失败节点,也可以从头重跑所有节点。
工作流可执行操作
在工作流设计区域,您可以在工作流名称上单击右键,执行如下操作:
克隆工作流:在同一文件夹下克隆出相同图形的工作流。
重命名工作流:重新命名工作流的名称。
删除工作流:删除工作流。当工作流在运行状态时无法删除。