字段编辑与赋值

DataWorks数据集成实时ETL支持字段编辑与赋值组件使用,可以在来源与去向组件间新增字段编辑与赋值组件按配置的过滤规则,进行新增字段的编辑和赋值。

前提条件

  • 已完成数据集成的基本配置与网络资源配置。

  • 数据集成的同步类型为单表实时。

步骤一:配置数据集成任务

  1. 新建数据源,详情请参见:创建并管理数据源

  2. 新建数据集成任务,详情请参见:数据集成侧同步任务

    说明

    当数据集成侧同步任务的同步类型为单表实时,可在数据来源组件与数据去向组件之间新增数据处理组件。详情可参见支持的数据源及同步方案

步骤二:添加字段编辑与赋值组件

  1. 在实时ETL任务编辑页DAG画布中,单击来源去向组件之间的image按钮,添加字段编辑与赋值组件。

  2. 配置字段编辑与赋值组件。

    image

    • 字段详情

      • 字段名称:上游输出的字段名称。

      • 类型:上游输出的数据类型。

      • 取值:上游已有字段值或新增字段的取值方式,包括赋值、变量和函数三种可选类型。

      • 操作:对于上游输出字段,可以选择是否将该字段向下游输出。

    • 新增字段:单击字段编辑与赋值页面左下角的新增字段添加新的字段。

      • 赋值:将手动输入的文本内容转换为指定的数据类型后赋值新字段。

      • 变量:在同步运行时将内置变量取值赋值新字段,支持的内置变量如下表所示。

        说明

        不同源端和目标端由于系统特性原因可能不支持以下所有变量。

        支持变量表

        变量名

        描述

        源端

        PROCESS_TIME

        记录被同步任务消费的时间,13位毫秒时间戳。

        DATASOURCE_NAME_SRC

        源端数据源名称。

        DB_NAME_SRC

        源端数据库名。

        SCHEMA_NAME_SRC

        源端schema名称。

        TABLE_NAME_SRC

        源端表名。

        TOPIC_NAME_SRC

        源端Topic名。

        目标端

        TABLE_NAME_DEST

        目标端表名。

        TOPIC_NAME_DEST

        目标端Topic名。

        SCHEMA_NAME_DEST

        目标端schema名。

        DB_NAME_DEST

        目标端数据库名。

        DATASOURCE_NAME_DEST

        目标端数据源名称。

      • 函数:在同步运行时进行函数计算,将计算结果赋值给新字段,如果函数处理过程发生异常,对应记录将被视为脏数据处理,计入同步任务脏数据统计并根据脏数据容忍配置决定任务是否异常退出。

        支持函数

        函数名称

        参数

        说明

        DATE_FORMAT

        • 参数1:数值类型上游字段,10位UNIX时间戳或13位毫秒时间戳。

        • 参数2:时间戳类型,unix表示10位UNIX时间戳,millis表示13位毫秒时间戳。

        • 参数3:转换时使用的时区。

        • 参数4:需要格式化为的日期字符串格式,例如yyyy-MM-dd HH:mm:ss:SSS ZZyyyy代表年份,MM代表月份,dd代表天,HH代表24小时制时,mm代表分钟,ss代表秒,SSS代表毫秒,ZZ代表时区。

        将时间戳转换为特定格式的时间字符串。

        TO_TIMESTAMP

        • 参数1:文本类型上游字段,特定格式的时间字符串。

        • 参数2:转换的时间戳类型,unix表示10位UNIX时间戳,millis表示13位毫秒时间戳。

        • 参数3:转换时使用的时区。

        • 参数4:时间字符串格式,例如yyyy-MM-dd HH:mm:ss:SSS ZZyyyy代表年份,MM代表月份,dd代表天,HH代表24小时制时,mm代表分钟,ss代表秒,SSS代表毫秒,ZZ代表时区。

        将时间转换成10位或者13位时间戳。

        SUBSTRING

        • 参数1:文本类型上游字段。

        • 参数2:子串的起始位置,子串包含起始位置字符,最小起始位置为0。

        • 参数3:子串长度,长度值小于等于0时返回从起始位置到末尾的子串。

        获取字符串中的子串。

后续操作

完成来源信息字段编辑与赋值以及去向信息的配置后,可单击右上角的模拟运行,对数据集成任务进行模拟运行,以便查看输出数据结果,是否符合您的需求。