ETLJobNode

Prev Next

Data Flow ETLジョブのノードソース(source)、変換(transform)、ターゲット(target)タイプ情報です。

  • ETLJobNode: ETLジョブノードの定義
  • JobNodeCategory: ノードカテゴリの定義
  • JobNodeType: ノードカテゴリタイプの定義
  • Field: データフィールドの定義

構文

構文は次の通りです。

class ETLJobNode {
    private id: Long;
    private name: String;
    private JobNodeType type;
    private List<Long> parentNodeIds;

    enum Operator { EQ, NE, GT, LT, GTE, LTE }
    enum ConditionOperator { HEAD, AND, OR }
}
enum JobNodeCategory {
    SOURCE, TRANSFORM, TARGET
}
enum JobNodeType(JobNodeCategory category) {
    SOURCE_CATALOG(JobNodeCategory.SOURCE),
    SOURCE_CDB_MYSQL(JobNodeCategory.SOURCE),
    SOURCE_CDB_POSTGRESQL(JobNodeCategory.SOURCE),
    SOURCE_OBS(JobNodeCategory.SOURCE),
    TRANSFORM_DEFINE(JobNodeCategory.TRANSFORM),
    TRANSFORM_SELECT(JobNodeCategory.TRANSFORM),
    TRANSFORM_JOIN(JobNodeCategory.TRANSFORM),
    TRANSFORM_FILTER(JobNodeCategory.TRANSFORM),
    TRANSFORM_UNION(JobNodeCategory.TRANSFORM),
    TRANSFORM_AGGREGATE(JobNodeCategory.TRANSFORM),
    TRANSFORM_RENAME(JobNodeCategory.TRANSFORM),
    TRANSFORM_DROP_DUPLICATION(JobNodeCategory.TRANSFORM),
    TRANSFORM_FILL_MISSING_VALUES(JobNodeCategory.TRANSFORM),
    TRANSFORM_SQL(JobNodeCategory.TRANSFORM),
    TARGET_CDB_MYSQL(JobNodeCategory.TARGET),
    TARGET_CDB_POSTGRESQL(JobNodeCategory.TARGET),
    TARGET_OBS(JobNodeCategory.TARGET),
    TARGET_CATALOG(JobNodeCategory.TARGET)
}
class Field {
    private String name;
    private Type type;
    private List<Field> properties;

    enum Type {
       Void, Boolean, Tinyint, Smallint, Int, Bigint, Float, Double, String, Char, Varchar, Date, Datetime, Timestamp, Decimal,
       Binary, TimestampWithTimeZone, Array, Map, Struct, Uniontype;
    }
}

フィールド

フィールドの詳細は次の通りです。

フィールド タイプ 必須の有無 説明
id Long Required ID
name String Required ジョブ名
  • 英数字、記号の「_」、「-」を組み合わせて3~100文字以内で入力
  • 先頭文字は英字または「_」のみ使用
type JobNodeType Required ノードタイプ
  • 構文を参照
parentNodeIds List Required 上位ノード ID