Check节点

DataWorks的Check节点可用于检查目标对象(MaxCompute分区表、FTP文件、OSS文件、HDFS文件、OSS_HDFS文件以及实时同步任务)是否可用,当Check节点满足检查策略后会返回运行成功状态。如果某任务的运行依赖目标对象,您可使用Check节点检查目标对象,并设置该任务为Check节点的下游任务,当Check节点满足检查策略后,便会运行成功并触发下游任务执行。本文为您介绍Check节点支持检查的对象、具体的检查策略、以及如何配置Check节点。

支持检查的对象及检查策略

Check节点目前仅支持检查数据源和实时同步任务。检查策略如下:

  • 数据源

    • MaxCompute分区表

      说明

      支持MaxCompute分区表,不支持检查MaxCompute非分区表

      Check节点提供了如下两种检查策略,辅助您判断MaxCompute分区表数据是否已达到可用状态。

      • 策略一:检查目标分区是否存在

        如果Check节点检查到MaxCompute分区表的目标分区已存在,则平台即认为MaxCompute分区表数据产出完成,已可用。

      • 策略二:检查目标分区在指定时长是否有更新

        如果Check节点检查到MaxCompute分区表的目标分区在指定时长内未更新,则表示该分区的数据已产出完成,平台即认为MaxCompute分区表数据已可用。

    • FTP、OSS、HDFS或OSS_HDFS文件

      如果Check节点检查到目标FTP文件、OSS文件、HDFS文件或OSS_HDFS文件存在,则平台即认为该文件已可用。

  • 实时同步任务

    以Check节点的调度启动时间点为判断时间,如果检测到实时同步任务已完成该时间点及之前的数据写入,则平台认为实时同步任务检查成功。

除此之外,您还需指定Check节点的检查时间间隔(即每次检查后需要多久才会触发下一次检查)与停止检查条件(即检查次数上限或检查截止时间),若任务到达检查次数上限或检查截止时间仍未检查通过,Check节点将失败退出。具体策略配置,请参见步骤二:配置检查策略

说明

Check节点可实现周期性检查目标对象,您需根据预期的开始检查时间,配置Check节点的定时调度时间。当满足调度运行条件后,Check节点将一直处于运行中状态直至满足检查条件返回成功,或由于长时间未检查通过而返回失败。调度配置,详情请参见步骤三:配置任务调度

使用限制

  • 资源组限制

    • 支持Serverless资源组(推荐)或旧版独享调度资源组运行Check节点任务。如需购买使用Serverless资源组,详情请参见新增和使用Serverless资源组

  • 节点功能限制

    • 一个Check节点仅支持检查一个对象,若您的任务依赖了多个对象(例如,某任务依赖多个MaxCompute分区表),则需创建多个Check节点分别校验相应对象。

    • Check节点的检查时间间隔最小为1分钟,最大为30分钟。

  • DataWorks版本限制

    仅支持DataWorks专业版及以上版本使用Check节点。低版本DataWorks可参考版本升级说明升级。

前提条件

  • Check节点基于数据源进行校验时,使用Check节点前,请先根据要检查的对象类别创建好对应数据源,具体如下。

    检查对象类别

    相关准备操作

    参考文档

    MaxCompute分区表

    1. 已创建MaxCompute数据源并绑定至数据开发(DataStudio)。

      在DataWorks中,您需先将MaxCompute项目创建为DataWorks的MaxCompute数据源,才可通过该数据源访问相应MaxCompute项目的数据。

    2. 已创建MaxCompute分区表。

    FTP文件

    已创建FTP数据源。

    在DataWorks中,您需先将FTP服务创建为DataWorks的FTP数据源,才可通过该数据源访问相应FTP服务的数据。

    创建FTP数据源

    OSS文件

    已创建OSS数据源且数据源访问模式为Access Key

    在DataWorks中,您需要先将OSS的Bucket创建为DataWorks的OSS数据源,才可通过该数据源访问相应Bucket中的数据。

    说明

    目前仅支持在Check节点中通过Access Key模式访问OSS数据源,RAM角色授权模式配置的OSS数据源无法用于Check节点

    HDFS文件

    已创建HDFS数据源。

    在DataWorks中,您需先将HDFS文件创建为DataWorks的HDFS数据源,才可通过该数据源访问相应HDFS文件数据。

    创建HDFS数据源

    OSS_HDFS文件

    已创建OSS_HDFS数据源。

    在DataWorks中,您需先将OSS_HDFS服务创建为DataWorks的OSS_HDFS数据源,才可通过该数据源访问相应OSS_HDFS服务的数据。

    OSS-HDFS数据源

  • Check节点基于实时同步任务进行校验时,仅支持Kafka到MaxCompute的实时同步任务。使用Check节点前,请先创建好对应实时同步任务,详情请参见DataStudio侧实时同步任务配置

步骤一:创建Check节点

  1. 进入数据开发页面。

    登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据建模与开发 > 数据开发,在下拉框中选择对应工作空间后单击进入数据开发

  2. 单击image.png图标,选择新建节点 > 通用 > Check节点

    根据界面指引,输入节点的路径、名称等信息。

步骤二:配置检查策略

您可根据业务需要,选择使用Check节点检查数据源或实时同步任务,并配置相应策略。

数据源

配置MaxCompute分区表的检查策略

image.png

参数说明如下。

参数

描述

数据源类型

选择MaxCompute。

数据源名称

待检查的MaxCompute分区表所在的数据源。

如果没有可用的数据源,您可单击新建数据源创建。创建MaxCompute数据源,详情请参见创建MaxCompute数据源

表名

待检查的MaxCompute分区表。

说明

仅支持选择所选数据源下的MaxCompute分区表。

分区

待检查的MaxCompute表的分区。

配置表名参数后,您可先预览表信息,查看分区名称;也可使用调度参数获取分区名称,调度参数的使用,详情请参见调度参数支持的格式

Check通过条件

定义分区表的检查方式及通过条件。您可选择使用如下两种方式检查:

  • 分区存在:检查目标分区是否存在。

    • 存在:此次检查通过,平台即认为该分区表可用。

    • 不存在:此次检查不通过,平台即认为该分区表不可用。

  • 基于LastModifiedTime校验:检查目标分区数据在指定时间段内是否有更新。

    • 无更新:此次检查通过,平台即认为该分区数据已写入完成,分区表可用。

    • 存在更新:此次检查不通过,平台即认为该分区数据未写入完成,分区表不可用。

    说明
    • 仅支持选择检查5、10、15、20、25或30分钟内,分区数据是否存在更新。

    • LastModifiedTime更多介绍,详情请参见修改表的修改时间

Chcek停止策略

用于配置Check节点任务的停止检查策略。您可设置停止检查时间或停止检查次数,并支持配置检查频率:

  • 设置停止检查时间:可设置在目标时长内,每隔多长时间检查一次(即检查时间间隔取值)。若超过目标时长,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • 若上游任务延迟,导致Check节点任务实际开始运行时间晚于您在此处配置的任务检查截止时间,待上游任务运行完成后,Check节点任务仍会启动运行,但只会执行一次检查操作。

  • 设置停止检查次数:可设置在目标检查次数内,每隔多长时间检查一次(即检查时间间隔)。若超过目标次数,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • Check节点任务的最大运行时长为24小时(即1440分钟),最大检查次数与检查时间间隔有关。例如,每隔5分钟检查一次,最多可检查288次;每隔10分钟检查一次,最多可检查144次。具体请以实际界面为准。

配置FTP文件的检查策略

image

参数说明如下。

参数

描述

数据源类型

选择FTP。

数据源名称

待检查的FTP文件所在的数据源。

如果没有可用的数据源,您可单击新建数据源创建。创建FTP数据源,请参见FTP数据源

文件路径

待检查的FTP文件路径,例如,/var/ftp/test/

若检查到输入的路径存在,则表示该路径的同名文件存在。

您可直接输入路径,也可使用调度参数获取路径。调度参数的使用,请参见调度参数支持的格式

Check通过条件

定义FTP文件的检查通过条件。

  • 若检查到FTP文件存在,则此次检查通过,平台即认为该FTP文件可用。

  • 若检查到FTP文件不存在,则此次检查不通过,平台即认为该FTP文件不可用。

Chcek停止策略

用于配置Check节点任务的停止检查策略。您可设置停止检查时间或停止检查次数,并支持配置检查频率:

  • 设置停止检查时间:可设置在目标时长内,每隔多长时间检查一次(即检查时间间隔取值)。若超过目标时长,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • 若上游任务延迟,导致Check节点任务实际开始运行时间晚于您在此处配置的任务检查截止时间,待上游任务运行完成后,Check节点任务仍会启动运行,但只会执行一次检查操作。

  • 设置停止检查次数:可设置在目标检查次数内,每隔多长时间检查一次(即检查时间间隔)。若超过目标次数,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • Check节点任务的最大运行时长为24小时(即1440分钟),最大检查次数与检查时间间隔有关。例如,每隔5分钟检查一次,最多可检查288次;每隔10分钟检查一次,最多可检查144次。具体请以实际界面为准。

配置OSS文件的检查策略

image

参数说明如下。

参数

描述

数据源类型

选择OSS。

数据源名称

待检查的OSS文件所在的数据源。

如果没有可用的数据源,您可单击新建数据源创建。创建OSS数据源,请参见OSS数据源

文件路径

待检查的OSS文件所在路径。您可登录对象存储OSS控制台,进入目标Bucket详情页,在文件管理 > 文件列表 > OSS文件页面查看。

格式遵循OSS文件路径的格式定义:

  • 若文件路径以“/”结尾,Check节点将校验OSS中与该输入路径同名的文件夹是否存在。

    例如:user/,表示检查user文件夹是否存在。

  • 若文件路径不以“/”结尾,Check节点将校验OSS中与该输入路径同名的文件是否存在。

    例如:user,表示检查user文件是否存在。

说明

选择数据源后,平台将默认使用数据源中配置的Bucket。因此,路径中无需再输入Bucket信息。输入路径后,您可单击查看完整路径,查看开发环境OSS数据源的Endpoint和Bucket信息。

Check通过条件

定义OSS文件的检查通过条件。

  • 若检查到OSS文件存在,则此次检查通过,平台即认为该OSS文件可用。

  • 若检查到OSS文件不存在,则此次检查不通过,平台即认为该OSS文件不可用。

Chcek停止策略

用于配置Check节点任务的停止检查策略。您可设置停止检查时间或停止检查次数,并支持配置检查频率:

  • 设置停止检查时间:可设置在目标时长内,每隔多长时间检查一次(即检查时间间隔取值)。若超过目标时长,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • 若上游任务延迟,导致Check节点任务实际开始运行时间晚于您在此处配置的任务检查截止时间,待上游任务运行完成后,Check节点任务仍会启动运行,但只会执行一次检查操作。

  • 设置停止检查次数:可设置在目标检查次数内,每隔多长时间检查一次(即检查时间间隔)。若超过目标次数,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • Check节点任务的最大运行时长为24小时(即1440分钟),最大检查次数与检查时间间隔有关。例如,每隔5分钟检查一次,最多可检查288次;每隔10分钟检查一次,最多可检查144次。具体请以实际界面为准。

配置HDFS文件的检查策略

image参数说明如下。

参数

描述

数据源类型

选择HDFS。

数据源名称

待检查的HDFS文件所在的数据源。

如果没有可用的数据源,您可单击新建数据源创建。创建HDFS数据源,请参见HDFS数据源

文件路径

待检查的HDFS文件路径,例如,/user/dw_test/dw

若检查到输入的路径存在,则表示该路径的同名文件存在。

您可直接输入路径,也可使用调度参数获取路径。调度参数的使用,请参见调度参数支持的格式

Check通过条件

定义HDFS文件的检查通过条件。

  • 若检查到HDFS文件存在,则此次检查通过,平台即认为该HDFS文件可用。

  • 若检查到HDFS文件不存在,则此次检查不通过,平台即认为该HDFS文件不可用。

Chcek停止策略

用于配置Check节点任务的停止检查策略。您可设置停止检查时间或停止检查次数,并支持配置检查频率:

  • 设置停止检查时间:可设置在目标时长内,每隔多长时间检查一次(即检查时间间隔取值)。若超过目标时长,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • 若上游任务延迟,导致Check节点任务实际开始运行时间晚于您在此处配置的任务检查截止时间,待上游任务运行完成后,Check节点任务仍会启动运行,但只会执行一次检查操作。

  • 设置停止检查次数:可设置在目标检查次数内,每隔多长时间检查一次(即检查时间间隔)。若超过目标次数,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • Check节点任务的最大运行时长为24小时(即1440分钟),最大检查次数与检查时间间隔有关。例如,每隔5分钟检查一次,最多可检查288次;每隔10分钟检查一次,最多可检查144次。具体请以实际界面为准。

配置OSS_HDFS文件的检查策略

image参数说明如下。

参数

描述

数据源类型

选择OSS_HDFS。

数据源名称

待检查的OSS_HDFS文件所在的数据源。

如果没有可用的数据源,您可单击新建数据源创建。创建OSS_HDFS数据源,请参见OSS-HDFS数据源

文件路径

待检查的OSS_HDFS文件路径。您可登录对象存储OSS控制台,进入目标Bucket详情页,在文件管理 > 文件列表 > HDFS文件页面查看。

格式遵循OSS_HDFS文件路径的格式定义:

  • 若文件路径以/结尾,Check节点将校验OSS_HDFS中与该输入路径同名的文件夹是否存在。

    例如:user/,表示检查user文件夹是否存在。

  • 若文件路径不以/结尾,Check节点将校验OSS_HDFS中与该输入路径同名的文件是否存在。

    例如:user,表示检查user文件是否存在。

Check通过条件

定义OSS_HDFS文件的检查通过条件。

  • 若检查到OSS_HDFS文件存在,则此次检查通过,平台即认为该OSS_HDFS文件可用。

  • 若检查到OSS_HDFS文件不存在,则此次检查不通过,平台即认为该OSS_HDFS文件不可用。

Chcek停止策略

用于配置Check节点任务的停止检查策略。您可设置停止检查时间或停止检查次数,并支持配置检查频率:

  • 设置停止检查时间:可设置在目标时长内,每隔多长时间检查一次(即检查时间间隔取值)。若超过目标时长,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • 若上游任务延迟,导致Check节点任务实际开始运行时间晚于您在此处配置的任务检查截止时间,待上游任务运行完成后,Check节点任务仍会启动运行,但只会执行一次检查操作。

  • 设置停止检查次数:可设置在目标检查次数内,每隔多长时间检查一次(即检查时间间隔)。若超过目标次数,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • Check节点任务的最大运行时长为24小时(即1440分钟),最大检查次数与检查时间间隔有关。例如,每隔5分钟检查一次,最多可检查288次;每隔10分钟检查一次,最多可检查144次。具体请以实际界面为准。

实时同步任务

image

参数说明如下。

参数

描述

Check对象

选择实时同步任务

实时同步任务

待检查的实时同步任务。

说明
  • 目前仅支持Kafka到MaxCompute的实时同步任务。

  • 如果已有实时同步任务但无法选择,请检查实时同步任务是否已发布至生产环境。

Chcek停止策略

用于配置Check节点任务的停止检查策略。您可设置停止检查时间或停止检查次数,并支持配置检查频率:

  • 设置停止检查时间:可设置在目标时长内,每隔多长时间检查一次(即检查时间间隔取值)。若超过目标时长,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • 若上游任务延迟,导致Check节点任务实际开始运行时间晚于您在此处配置的任务检查截止时间,待上游任务运行完成后,Check节点任务仍会启动运行,但只会执行一次检查操作。

  • 设置停止检查次数:可设置在目标检查次数内,每隔多长时间检查一次(即检查时间间隔)。若超过目标次数,Check任务仍未检查通过,则该任务将自动退出并置为失败状态。

    说明
    • 检查时间间隔的取值范围为1~30分钟。

    • Check节点任务的最大运行时长为24小时(即1440分钟),最大检查次数与检查时间间隔有关。例如,每隔5分钟检查一次,最多可检查288次;每隔10分钟检查一次,最多可检查144次。具体请以实际界面为准。

步骤三:配置任务调度

如您需要周期性使用Check节点进行分区数据检查,可单击节点编辑页面右侧的调度配置,根据业务需求配置该节点任务的调度信息。详情请参见任务调度属性配置概述

Check节点与普通调度节点一样,需设置调度依赖、调度时间等调度信息。DataWorks上每个节点均需拥有上游依赖,若Check节点无实际上游依赖,您可根据空间业务复杂度选择依赖虚拟节点或直接依赖工作空间根节点,详情请参见虚拟节点

说明

您需设置节点的重跑属性依赖的上游节点,才可提交节点。

步骤四:提交发布任务

节点任务配置完成后,需执行提交发布操作,提交发布后节点即会根据调度配置内容进行周期性运行。

  1. 单击工具栏中的保存图标,保存节点。

  2. 单击工具栏中的提交图标,提交节点任务。

    提交时需在提交对话框中输入变更描述,并根据需要选择是否在节点提交后执行代码评审及冒烟测试。

    说明
    • 您需设置节点的重跑属性依赖的上游节点,才可提交节点。

    • 代码评审可对任务的代码质量进行把控,防止由于任务代码有误,未经审核直接发布上线后出现任务报错。如进行代码评审,则提交的节点代码必须通过评审人员的审核才可发布,详情请参见代码评审

    • 为保障调度节点任务执行符合预期,建议您在发布前对任务进行冒烟测试,详情请参见冒烟测试

如您使用的是标准模式的工作空间,任务提交成功后,还需单击节点编辑页面右上方的发布,将该任务发布至生产环境执行,操作请参见发布任务

后续操作

Check节点提交发布至生产运维中心后,会基于节点的配置周期性运行检查,您可通过DataWorks的运维中心查看检查结果并进行相关运维操作,详情请参见周期任务基本运维操作