Node di DataWorks berjalan secara terisolasi sehingga tidak dapat berbagi memori atau status secara langsung. Parameter input dan output memungkinkan node meneruskan nilai—berupa konstanta, variabel, atau hasil kueri—ke node downstream pada waktu proses, sehingga mendukung penjadwalan dinamis di seluruh pipeline Anda.
Cara kerja
Node upstream mendeklarasikan output parameter beserta nilainya. Node downstream mendeklarasikan parameter input yang mereferensikan output tersebut. Saat pipeline dijalankan, DataWorks menyelesaikan referensi tersebut dan menyuntikkan nilai dari node upstream ke dalam node downstream.
Rantai lengkapnya tampak seperti ini:
Upstream node → mendefinisikan parameter output → Dependency link (nama output) → Downstream node → mendeklarasikan parameter input → mereferensikan nilai dalam kode sebagai ${parameter_name}
Pilih jenis parameter
DataWorks mendukung dua cara untuk meneruskan data antar node:
| Metode | Cara kerja | Gunakan saat |
|---|---|---|
| Parameter output standar | Meneruskan string konstan atau variabel (parameter penjadwalan, variabel global) | Meneruskan tanggal, ID, nilai konfigurasi, atau nilai skalar kecil lainnya |
| Parameter output assignment | Meneruskan hasil kueri dari node saat ini | Meneruskan set hasil dari kueri SQL ke node downstream |
Batasan:
Opsi Add assignment parameter memerlukan DataWorks Edisi Standar atau lebih tinggi.
Jika suatu node tidak menghasilkan output apa pun, node tersebut tetap berhasil, tetapi node downstream yang mereferensikan parameter assignment tersebut mungkin gagal.
Hanya tipe node berikut yang mendukung parameter assignment: EMR Hive, EMR Spark SQL, ODPS Script, Hologres SQL, AnalyticDB for PostgreSQL, ClickHouse SQL, dan MySQL. Untuk tipe node lainnya, gunakan assignment node sebagai gantinya.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Ruang kerja DataWorks dengan minimal dua node yang memiliki hubungan upstream–downstream
DataWorks Edisi Standar atau lebih tinggi (hanya diperlukan untuk parameter assignment)
Buka bagian konfigurasi parameter
Masuk ke Konsol DataWorks. Di bilah navigasi atas, pilih wilayah target. Di panel navigasi kiri, pilih Data Development and O&M > Data Development. Pilih ruang kerja Anda dari daftar drop-down dan klik Go to Data Development.
Di halaman Data Studio, klik ganda node untuk membuka editor-nya.
Di panel kanan, klik Properties. Di bagian Input and Output Parameters, klik ikon
.
Konfigurasikan parameter output
Konfigurasikan parameter output standar
Parameter output standar meneruskan konstanta atau variabel dari node saat ini ke node downstream.
Di bagian Input and Output Parameters, Anda dapat mengonfigurasi parameter output untuk node saat ini. Isi bidang-bidang berikut:
| Field | Description |
|---|---|
| No. | Nomor urut yang dihasilkan secara otomatis. |
| Parameter name | Nama kustom untuk parameter output. |
| Type | Pilih Constant atau Variable. |
| Value | Nilai yang akan diteruskan. Constant adalah string tetap. Variable dapat berupa variabel global sistem, parameter penjadwalan bawaan, atau parameter kustom dalam format ${...} atau $[...]. |
| Description | Deskripsi singkat mengenai parameter tersebut. |
| Add method | Cara parameter ditambahkan: Added Automatically, Analyze Code, atau Added Manually. |
| Actions | Save, Change, atau Delete parameter tersebut. |
Klik Save di kolom Actions.
Konfigurasikan parameter output assignment
Parameter output assignment meneruskan hasil kueri dari node saat ini ke node downstream.
Di bagian Input and Output Parameters > Output Parameters, klik Add assignment parameter. Sistem secara otomatis mengonfigurasi parameter untuk meneruskan hasil kueri ke node downstream mana pun yang mereferensikannya.
Setelah parameter dibuat, buka Dependencies > Output Name of Current Node untuk menemukan nama output yang dihasilkan. Add Mode untuk output ini adalah Added Automatically. Node downstream menggunakan nama output ini untuk mendeklarasikan dependensi terhadap node saat ini.
Konfigurasikan parameter input
Parameter input memungkinkan node downstream mengambil dan menggunakan nilai dari parameter output upstream. Konfigurasikan setelah parameter output upstream dan dependensinya telah ditetapkan.
Langkah 1: Konfigurasikan parameter output pada node upstream
Ikuti langkah-langkah di Konfigurasikan parameter output untuk menentukan nilai yang akan diteruskan oleh node upstream.
Langkah 2: Tetapkan dependensi
Buka editor node downstream dan klik Properties di panel kanan.
Di bagian Dependencies > Parent node ID, masukkan dan pilih output name dari parameter output node upstream.
Klik Create.
Langkah 3: Tambahkan parameter input
Di bagian Input and Output Parameters node downstream, klik Create dan isi bidang-bidang berikut:
| Field | Description |
|---|---|
| No. | Nomor urut yang dihasilkan secara otomatis. |
| Parameter name | Nama kustom untuk parameter input. Gunakan nama ini untuk mereferensikan nilainya dalam kode node. |
| Value source | Nilai berasal dari parameter output node hulu. |
| Description | Deskripsi singkat mengenai parameter tersebut. |
| Parent node ID | Diurai secara otomatis dari node hulu. |
| Add method | Metode penambahan parameter: Added Automatically, Analyze Code, atau Added Manually. |
| Actions | Save, Change, atau Delete parameter tersebut. |
Klik Save di kolom Actions.
Gunakan parameter input dalam kode node
Referensikan parameter input dalam kode node menggunakan ${parameter_name}. Sintaks ini sama dengan sintaks untuk parameter penjadwalan lainnya.
Contoh berikut menunjukkan cara mereferensikan parameter input dalam node Shell:

Jalankan seluruh alur kerja, bukan node individual. Jika Anda menjalankan node downstream secara terpisah, parameter input tidak dapat diselesaikan dan eksekusi akan gagal.
Variabel global yang didukung sistem
Gunakan variabel global berikut sebagai nilai untuk parameter output bertipe Variable:
Variabel sistem
| Variabel | Deskripsi |
|---|---|
${projectId} | ID proyek. |
${projectName} | Nama proyek MaxCompute. |
${nodeId} | ID node. |
${gmtdate} | Tanggal jadwal eksekusi pada pukul 00:00:00, dalam format yyyy-MM-dd 00:00:00. |
${taskId} | ID instans task. |
${seq} | Nomor urut instans task di antara semua instans dari node yang sama pada hari yang sama. |
${cyctime} | Waktu yang dijadwalkan untuk Instans. |
${status} | Status instans: SUCCESS atau FAILURE. |
${bizdate} | Tanggal bisnis. |
${finishTime} | Waktu penyelesaian instans. |
${taskType} | Jenis eksekusi: NORMAL, MANUAL, PAUSE, SKIP, UNCHOOSE, atau SKIP_CYCLE. |
${nodeName} | Nama node. |
Untuk format parameter penjadwalan lainnya, lihat Supported formats of scheduling parameters.
Langkah selanjutnya
Assignment node — Meneruskan hasil kueri antar node menggunakan assignment node khusus
Supported formats of scheduling parameters — Referensi lengkap untuk sintaks parameter penjadwalan