全部產品
Search
文件中心

DataWorks:欄位編輯與賦值

更新時間:Mar 13, 2025

DataWorksData Integration即時ETL支援欄位編輯與賦值組件使用,可以在來源與去向組件間新增欄位編輯與賦值組件按配置的過濾規則,進行新增欄位的編輯和賦值。

前提條件

  • 已完成Data Integration的基本配置與網路資源配置。

  • 僅支援如下資料來源類型的資料來源和資料去向,配置單表即時同步任務時,使用資料處理組件。

    • 資料來源:Hologres、Kafka、Loghub、Oracle、DataHub

    • 資料去向:ApsaraDB for OceanBase、DLF 2.0、Doris、Hologres、Kafka、MaxCompute、OSS-HDFS、Tablestore、StarRocks

步驟一:配置Data Integration任務

  1. 建立資料來源,詳情請參見:計算資源管理

  2. 建立Data Integration任務,詳情請參見:Data Integration側同步任務

    說明

    當Data Integration側同步任務的同步類型為單表即時,可在資料來源組件與資料去向組件之間新增資料處理組件。詳情可參見支援的資料來源及同步方案

步驟二:添加欄位編輯與賦值組件

  1. 在即時ETL任務編輯頁DAG畫布中,單擊來源去向組件之間的image按鈕,添加欄位編輯與賦值組件。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

        目標端資料來源名稱。

      • 函數:在同步運行時進行Function Compute,將計算結果賦值給新欄位,如果函數處理過程發生異常,對應記錄將被視為髒資料處理,計入同步任務髒資料統計並根據髒資料容忍配置決定任務是否異常退出。

        支援函數

        函數名稱

        參數

        說明

        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時返回從起始位置到末尾的子串。

        擷取字串中的子串。

後續操作

完成來源資訊欄位編輯與賦值以及去向資訊的配置後,可單擊右上方的類比運行,對Data Integration任務進行類比運行,以便查看輸出資料結果,是否符合您的需求。