All Products
Search
Document Center

DataWorks:Konfigurasikan parameter penjadwalan untuk berbagai jenis node

Last Updated:Apr 11, 2026

Anda mengonfigurasi parameter penjadwalan dengan cara yang sama untuk sebagian besar jenis node, seperti node MaxCompute SQL. Namun, prosesnya berbeda untuk node shell umum dan node PyODPS. Topik ini menyediakan contoh konfigurasi untuk berbagai jenis node.

Node SQL dan node sinkronisasi batch

Konfigurasi untuk node SQL dan node sinkronisasi batch mewakili sebagian besar jenis node. Contoh ini menggunakan node MaxCompute SQL untuk menunjukkan cara memberikan nilai ke variabel sistem bawaan dan parameter kustom, lalu mereferensikannya dalam kode Anda.

Catatan

Tidak semua node mendukung parameter penjadwalan. Untuk memeriksa apakah node tertentu mendukungnya, lihat dokumentasi pengembangan node.

  • Definisikan parameter

    Parameter

    Nilai

    var1

    $bizdate

    var2

    ${yyyymmdd}

    var3

    $cyctime

    var4

    ${yyyymmddhh24:mi:ss}

    var5

    abc

  • Gunakan parameter

    -- Dapatkan waktu data
    SELECT '${var1}' '${var2}';
    -- Dapatkan waktu penjadwalan
    SELECT '${var3}' '${var4}';
    -- Dapatkan konstanta
    SELECT '${var5}';

Setelah memberikan nilai di bagian Scheduling Parameters, Anda dapat mereferensikannya dalam kode Anda. Contoh ini menunjukkan referensi ke variabel sistem bawaan var1 dan var3, parameter kustom var2 dan var4, serta konstanta var5 dengan penetapan berikut:

  • Berikan waktu data ke parameter var1: var1=$bizdate

  • Berikan waktu penjadwalan ke parameter var3: var3=$cyctime

  • Berikan waktu data ke parameter var2: var2=${yyyymmdd}

  • Berikan waktu penjadwalan ke parameter var4: var4=$[yyyymmddhh24:mi:ss]

  • Berikan konstanta abc ke parameter var5: var5=abc

Untuk informasi selengkapnya, lihat Konfigurasikan parameter penjadwalan node dan Sumber dan ekspresi parameter penjadwalan.

Node PyODPS

Untuk mencegah modifikasi langsung pada kode Anda, node PyODPS tidak mendukung substitusi string dengan format ${param_name}. Sebagai gantinya, Anda mengambil parameter penjadwalan dari objek dictionary global args.

  • Definisikan parameter

    Parameter

    Nilai

    var1

    $bizdate

    var2

    ${yyyymmdd}

    var3

    $[yyyymmdd]

  • Gunakan parameter

    # Parameter kustom: var1 mengambil nilai parameter bawaan.
    a =args['var1']
    print (format(a))
    # Parameter kustom: var2 mengambil nilai menggunakan format ${...}.
    b =args['var2']
    print (format(b))
    # Parameter kustom: var3 mengambil nilai menggunakan format $[...].
    c =args['var3']
    print (format(c))

Seperti yang ditunjukkan pada contoh sebelumnya, Anda memberikan nilai di bagian Scheduling Parameters. Dalam kode Anda, Anda mereferensikan parameter tersebut dengan menggunakan objek dictionary, seperti args['var1'], args['var2'], dan args['var3']. Contoh berikut menunjukkan penetapan tersebut:

  • Berikan waktu data ke parameter var1: var1=$bizdate

  • Berikan waktu data ke parameter var2: var2=${yyyymmdd}

  • Berikan waktu data ke parameter var3: var3=$[yyyymmdd]

Untuk informasi selengkapnya, lihat Konfigurasikan parameter penjadwalan node dan Sumber dan ekspresi parameter penjadwalan.

Node Python

Node Python menerima parameter penjadwalan sebagai argumen command line. Anda mencantumkan nilai parameter secara berurutan di bagian Scheduling Parameters, dan sistem meneruskannya ke skrip saat waktu proses. Dalam kode, Anda dapat mengakses nilai-nilai ini menggunakan indeks seperti sys.argv[1] dan sys.argv[2].

Catatan

Berbeda dengan node PyODPS, node Python tidak mendukung referensi parameter langsung berdasarkan nama, seperti $var1. Sebagai gantinya, parameter dibaca secara posisional menggunakan sys.argv.

  • Definisikan parameter

    Untuk node Python, Anda memberikan nilai sebagai daftar yang dipisahkan spasi. Nilainya dapat berupa ekspresi atau konstanta, dan dipetakan ke argumen skrip berdasarkan posisi.

    $[yyyymmdd] abc
  • Gunakan parameter

    import sys
    
    # Cetak semua parameter yang diterima
    print("Parameter yang diterima saat ini:", sys.argv)
    
    # Ambil parameter pertama dan kedua
    param1 = sys.argv[1]
    param2 = sys.argv[2]
    print("Parameter 1:", param1)
    print("Parameter 2:", param2)

Seperti yang ditunjukkan pada contoh sebelumnya, berikan nilai ke parameter di bagian Scheduling Parameters, dipisahkan dengan spasi. Kemudian, akses nilai tersebut dalam kode Anda menggunakan indeks seperti sys.argv[1] dan sys.argv[2]. Contoh berikut menunjukkan penetapan tersebut:

  • Berikan waktu penjadwalan ke parameter pertama: $[yyyymmdd].

  • Berikan konstanta abc ke parameter kedua: abc.

Untuk informasi selengkapnya, lihat Konfigurasikan parameter penjadwalan node dan Sumber dan ekspresi parameter penjadwalan.

Node shell umum

Node shell umum menggunakan parameter posisional (seperti $1, $2, dan $3) alih-alih variabel bernama. Untuk parameter setelah yang kesembilan, gunakan sintaks ${10}.

  • Definisikan parameter

    Untuk node shell umum, Anda memberikan nilai sebagai daftar yang dipisahkan spasi. Urutan nilai harus sesuai dengan urutan parameter posisional dalam skrip Anda.

    $bizdate ${yyyymmdd} $[yyyymmdd]
  • Gunakan parameter

    # Parameter posisional: Dapatkan nilai parameter bawaan.
    echo $1
    # Parameter posisional: Dapatkan nilai menggunakan format ${...}.
    echo $2
    # Parameter posisional: Dapatkan nilai menggunakan format $[...].
    echo $3

Setelah memberikan nilai di bagian Scheduling Parameters, Anda mereferensikannya dalam kode Anda sebagai parameter posisional $1, $2, dan $3. Penetapan dalam contoh ini adalah:

  • Berikan waktu data ke parameter posisional $1: $bizdate

  • Berikan waktu data ke parameter posisional $2: ${yyyymmdd}

  • Berikan waktu penjadwalan ke parameter posisional $3: $[yyyymmdd]

Untuk informasi selengkapnya, lihat Konfigurasikan parameter penjadwalan node dan Sumber dan ekspresi parameter penjadwalan.