全部产品
Search
文档中心

Data Management:Variabel

更新时间:Jun 28, 2025

Topik ini menjelaskan variabel yang digunakan dalam orkestrasi tugas.

Ikhtisar

Variabel adalah nilai dinamis dalam alur tugas, mencakup variabel sistem, variabel waktu, dan variabel non-waktu. Variabel dapat dirujuk secara dinamis dalam format ${varName} di dalam node.

Variabel sistem

Variabel sistem adalah variabel yang telah ditentukan sebelumnya dalam sistem, seperti ID alur tugas dan waktu eksekusi alur tugas.

Catatan

Variabel selain variabel sistem disebut sebagai variabel kustom. Nama variabel kustom harus unik. Prioritas variabel kustom lebih tinggi daripada variabel sistem. Jika variabel kustom memiliki nama yang sama dengan variabel sistem, nilai variabel kustom akan menimpa nilai variabel sistem.

Variabel waktu

  • Variabel alur tugas (variabel global): Variabel alur tugas diimbangi berdasarkan cap waktu data dan dapat digunakan pada semua node dalam alur tugas saat ini. Secara default, cap waktu data adalah hari sebelum alur tugas dijalankan.

    Catatan

    Anda dapat mengonfigurasi variabel alur tugas pada salah satu node dalam alur tugas. Konfigurasi tersebut akan otomatis disinkronkan ke node lain dalam alur tugas.

  • Variabel node: Variabel node diimbangi berdasarkan variabel waktu bawaan bizdate(T-1). Variabel node hanya dapat digunakan pada node saat ini.

    Sebagai contoh, jika tanggal saat ini adalah 22 Agustus 2023 dan offset variabel node diatur ke +1 Hari, variabel node tersebut menunjukkan 23 Agustus 2023.

Variabel non-waktu

  • Konstanta alur tugas (variabel global): Konstanta alur tugas adalah nilai tetap dan dapat digunakan pada semua node dalam alur tugas saat ini.

  • Variabel input: Variabel input secara otomatis diperoleh oleh Data Management (DMS). Anda dapat menggunakan ${var_name} untuk merujuk variabel input dalam Pernyataan SQL untuk node saat ini. Variabel input juga dapat digunakan sebagai kondisi filter untuk node Conditional Branch. Berikut adalah jenis variabel input:

    • Variabel hulu: Variabel hulu adalah variabel output dari node hulu.

    • Variabel status: Untuk informasi lebih lanjut, lihat bagian Variabel status dari topik ini.

    • Variabel sistem: Untuk informasi lebih lanjut, lihat bagian Variabel sistem dari topik ini.

  • Variabel output: Variabel output didefinisikan dan nilainya ditetapkan pada node saat ini. Variabel output dapat diakses dan dirujuk oleh node hilir.

    Sebagai contoh, jika Anda mengonfigurasi variabel output pada node Script, variabel output tersebut dapat dirujuk dalam Pernyataan SQL node hilir.

  • Variabel output yang ditetapkan pada node Single Instance SQL: Anda dapat menggunakan node Single Instance SQL untuk mendefinisikan set hasil dari pernyataan SQL. Set hasil dapat digunakan sebagai matriks 2D. Selama proses definisi variabel, Anda dapat mengambil elemen dari matriks atau melakukan penggabungan karakter berbasis vektor baris i dan vektor kolom j.

  • Variabel output skrip: Jika baris terakhir dari file skrip adalah string JSON dalam format { key1: value1, key2: value2, … } untuk node Skrip, tugas skrip mem-parsing pasangan kunci-nilai dalam string JSON untuk mendapatkan variabel output. Untuk setiap variabel, nama adalah kunci dan nilainya adalah nilai dari kunci. Anda dapat merujuk variabel output skrip dalam format ${key} dalam Pernyataan SQL node hilir.

    Sebagai contoh, jika baris terakhir dari file skrip adalah echo {"hello": "world"}, tugas skrip mem-parsing pasangan kunci-nilai untuk mendapatkan variabel output yang namanya adalah hello dan nilainya adalah world.

Konfigurasikan variabel waktu

Parameter

Deskripsi

Variable Name

Nama variabel waktu kustom.

Catatan

Untuk menghapus variabel yang telah dikonfigurasi, klik ikon 删除-变量 di sebelah kanan bidang Nama Variabel.

Variable Rule

Konfigurasi format waktu dan offset waktu dari variabel waktu kustom.

  • Format Waktu: format waktu dari variabel waktu. Untuk informasi lebih lanjut, lihat bagian Format waktu dari topik ini.

  • Offset Waktu: Variabel waktu diimbangi berdasarkan cap waktu data, yaitu hari sebelum tanggal saat ini. Dengan kata lain, nilai variabel waktu kustom menunjukkan tanggal ke mana offset waktu yang ditentukan menunjuk berdasarkan cap waktu data.

    Sebagai contoh, Anda telah membuat variabel bernama 6_month_ago dalam format yyyy-MM-dd dan mengatur offset ke "- 6 Bulan". Dalam hal ini, jika tanggal saat ini adalah 12 Agustus 2021, nilai variabel ${6_month_ago} adalah 2021-02-11, yang menunjukkan 11 Februari 2021.

Catatan

Setelah Anda mengonfigurasi variabel waktu, Anda dapat merujuk variabel tersebut dalam format ${var_name} dalam Pernyataan SQL untuk node saat ini. Anda juga dapat mengklik Preview untuk melihat nilai variabel waktu.

Format waktu

Tabel berikut menjelaskan variabel waktu yang dapat digunakan untuk mendefinisikan format waktu dari variabel kustom.

Variabel waktu

Deskripsi

Format contoh

Nilai contoh

Masehi (AD)

G menunjukkan Masehi.

Gyyyy

Masehi 2021

Tahun

  • y atau yyyy: tahun dari hari.

  • yy: dua digit terakhir dari tahun.

  • Y: tahun dari hari terakhir dalam minggu. Hari terakhir dalam minggu adalah Minggu.

yyyy

2021

Bulan

M: bulan dari tahun. Nilai valid M: [1,12]. Nilai valid MM: [01,12]

MM

08

Minggu

  • w: minggu dari tahun. Nilai valid w: [1,52]. Nilai valid ww: [01,52].

  • W: minggu dari bulan. Nilai valid: [1,5].

ww

13

Hari

  • D: hari dari tahun. Nilai valid D: [1,365]. Nilai valid DD: [01,365]. Nilai valid DDD: [001,365].

  • d: hari dari bulan. Nilai valid d: [1,31]. Nilai valid dd: [01,31].

D

360

Hari dalam seminggu

  • E: hari dalam seminggu. Nilai valid: Senin hingga Minggu.

  • e: nomor hari dalam minggu. Nilai valid: [1,7]. Nilai 1 menunjukkan Senin.

    Catatan

    Untuk menghitung Minggu sebagai hari pertama dalam minggu, Anda dapat mengatur offset ke "+ 1 Hari".

e

1

Ante meridiem (AM) atau post meridiem (PM)

a: menunjukkan apakah waktu berada sebelum atau sesudah tengah hari. Jika waktu berada dalam rentang 00:00 hingga 11:59, nilai yang dikembalikan adalah AM. Jika waktu berada dalam rentang 12:00 hingga 23:59, nilai yang dikembalikan adalah PM.

a

AM

Jam

  • H: jam dari hari. Nilai 0 menunjukkan jam pertama dari hari. Nilai valid H: [0,23]. Nilai valid HH: [00,23].

  • h: jam dari setengah hari. Nilai 1 menunjukkan jam pertama dari setengah hari. Nilai valid h: [1,12]. Nilai valid hh: [01,12].

  • K: jam dari setengah hari. Nilai 0 menunjukkan jam pertama dari setengah hari. Nilai valid K: [0,11]. Nilai valid KK: [00,11].

  • k: jam dari hari. Nilai 1 menunjukkan jam pertama dari hari. Nilai valid k: [1,24]. Nilai valid kk: [01,24].

HH

10

Menit

m: menit dari jam. Nilai valid m: [0,59]. Nilai valid mm: [00,59].

m

27

Detik

  • s: detik dari menit.

  • S: milidetik dari menit.

ss

08

Zona waktu

z: zona waktu.

z

UTC+08:00

Tabel berikut menjelaskan format waktu contoh yang menggunakan beberapa variabel waktu.

Format contoh

Nilai contoh

yyyy-MM-dd

2021-08-12

yyyyMM01

20210801

HH:mm:ss

11:05:21

yyyyMMdd HH:mm:ss

20210812 11:05:21

Variabel sistem

Variabel

Deskripsi

Contoh

sys.flow.start.timestamp

Cap waktu yang dihasilkan ketika alur tugas dijalankan.

2021-05-24T11:20:07.562+08:00

sys.flow.start.year

Tahun ketika alur tugas dijalankan.

2021

sys.flow.start.month

Bulan dari tahun ketika alur tugas dijalankan.

5

sys.flow.start.day

Hari dari bulan ketika alur tugas dijalankan.

24

sys.flow.start.hour

Jam dari hari ketika alur tugas dijalankan.

11

sys.flow.start.minute

Menit dari jam ketika alur tugas dijalankan.

20

sys.flow.start.second

Detik dari menit ketika alur tugas dijalankan.

7

sys.flow.start.milliseconds

Milidetik dari detik ketika alur tugas dijalankan.

562

sys.flow.start.timezone

Zona waktu.

Asia/Shanghai

sys.flow.biztime

Cap waktu data. Secara default, cap waktu data adalah hari sebelum hari ketika alur tugas dijalankan.

1621740007562

sys.flow.name

Nama alur tugas.

dwd_activityDailyPV

sys.node.name

Nama node dalam alur tugas.

Single Instance SQL-1

Variabel status

Variabel

Deskripsi

all_success

Semua tugas dijalankan.

all_failed

Semua tugas gagal dijalankan.

one_success

Sebuah tugas dari alur tugas saat ini dijalankan.

one_failed

Sebuah tugas dari alur tugas saat ini gagal dijalankan.

Catatan

Anda dapat menggunakan variabel status pada node Conditional Branch untuk membuat evaluasi bersyarat dalam alur tugas. Tugas-tugas berikutnya dalam alur tugas hanya dapat dijalankan jika node Conditional Branch memenuhi kondisi yang ditentukan.