All Products
Search
Document Center

DataWorks:Waktu penjadwalan

Last Updated:Aug 06, 2026

Siklus penjadwalan menentukan seberapa sering sebuah node berjalan secara otomatis di lingkungan produksi. Berdasarkan siklus tersebut, sistem penjadwalan DataWorks menghasilkan instans berulang dan menjalankannya sesuai dengan dependensi node serta waktu terjadwal masing-masing instans.

Konsep utama

  • Instans berulang: Untuk setiap timestamp data, sistem penjadwalan menghasilkan entitas runtime untuk tugas yang dipicu otomatis berdasarkan konfigurasi penjadwalannya—misalnya, berjalan pada pukul 00:00 setiap hari. Entitas ini disebut instans berulang. Waktu proses, status, dan log node dikaitkan dengan instans ini.

  • Dependensi lintas siklus: Di DataWorks, node dengan siklus penjadwalan berbeda dapat saling bergantung. Misalnya, node downstream harian dapat bergantung pada node upstream per jam. Dependensi antar-node merupakan dependensi antar instans berulangnya. Untuk informasi lebih lanjut, lihat Cross-cycle dependencies.

  • Dry-run: Untuk node yang tidak berjalan setiap hari, seperti node mingguan, bulanan, atau tahunan, sistem penjadwalan menghasilkan instans dry-run pada hari-hari non-terjadwal. Saat instans ini mencapai waktu terjadwalnya, statusnya langsung berubah menjadi "Success", tetapi tidak menjalankan logika kode di dalam node tersebut. Tujuan utama dry-run adalah menyelesaikan dependensi dan memastikan bahwa node downstream harian dapat dipicu dengan benar.

    • Status instans adalah "Success", waktu eksekusi 0 detik, dan tidak menghasilkan log.

    • Tidak menggunakan sumber daya penjadwalan atau komputasi.

    • Tidak menghalangi eksekusi node downstream. Bahkan jika node upstream berupa instans dry-run, node downstream tetap berjalan sesuai jadwal setelah kondisi eksekusinya terpenuhi.

Prinsip dasar dan skenario

Kondisi untuk eksekusi terjadwal

Instans berulang hanya berjalan setelah kedua kondisi berikut terpenuhi. Kedua kondisi ini dapat terpenuhi dalam urutan apa pun.

  • Semua instans upstream-nya telah berhasil berjalan. Ini mencakup instans yang selesai sebagai dry-run.

  • Instans tersebut telah mencapai waktu terjadwalnya.

Oleh karena itu, waktu terjadwal yang dikonfigurasi hanyalah waktu terjadwal yang diharapkan. Waktu eksekusi aktual suatu node dipengaruhi oleh faktor-faktor seperti waktu penyelesaian node upstream, ketersediaan sumber daya komputasi, dan kondisi eksekusi spesifik node tersebut.

Catatan

Periode sekitar 00:00 setiap hari merupakan puncak waktu penjadwalan DataWorks, ketika sejumlah besar task dipicu secara bersamaan. Jika task Anda dijadwalkan pada 00:00, biasanya terjadi penundaan selama beberapa menit antara waktu terjadwal dan waktu mulai eksekusi aktual. Hal ini merupakan perilaku yang diharapkan.

Jika task Anda sensitif terhadap waktu mulainya, kami menyarankan agar Anda mengatur waktu terjadwal pada waktu setelah 00:00 untuk menghindari periode puncak (misalnya, 00:10 atau 01:00). Jika bisnis Anda mengharuskan task dimulai pada 00:00 (misalnya, task lapisan pertama dalam pipeline pemrosesan gudang data T+1), pertimbangkan penundaan ini dalam penilaian ketepatan waktu downstream Anda.

Skenario penjadwalan alur kerja

Dalam alur kerja yang terdiri dari node A, B, dan C (A→B→C), konfigurasi waktu terjadwal memengaruhi eksekusi seluruh alur kerja:

Skenario 1: Waktu mulai seragam

Seluruh alur kerja harus dimulai setelah pukul 03:00. Untuk mencapai hal ini, atur waktu terjadwal node awal A menjadi 03:00. Meskipun node downstream B dan C memiliki waktu terjadwal default 00:00, keduanya harus menunggu node A berhasil berjalan pada pukul 03:00 sebelum dapat dimulai.

Skenario 2: Waktu mulai berbeda untuk setiap node

Node A dijadwalkan berjalan pada pukul 03:00, node B tidak boleh berjalan sebelum pukul 05:00, dan node C tidak boleh berjalan sebelum pukul 06:00. Anda perlu mengatur waktu terjadwal node A, B, dan C masing-masing menjadi 03:00, 05:00, dan 06:00.

Skenario 3: Waktu mulai spesifik untuk beberapa node

Node A dijadwalkan berjalan pada pukul 03:00, node B tidak boleh berjalan sebelum pukul 05:00, dan node C tidak memiliki persyaratan waktu khusus. Atur waktu terjadwal node A menjadi 03:00 dan node B menjadi 05:00. Node C akan menunggu node B berhasil berjalan setelah pukul 05:00, lalu memulai eksekusi.

Dampak pembaruan waktu terjadwal

Setelah Anda mengubah waktu terjadwal suatu node di Scheduling Settings dan menerapkan ulang node tersebut, dampaknya bergantung pada mode pembuatan instans yang dipilih:

  • Mode A: Hari berikutnya (T+1, default): Setelah memilih opsi ini dan menerapkan node, waktu terjadwal instans yang telah dihasilkan untuk dua hari terakhir (T dan T-1), termasuk instans yang telah selesai maupun yang tertunda, diperbarui ke waktu baru yang dikonfigurasi. Instans mendatang yang belum dihasilkan akan dibuat dengan waktu baru tersebut.

  • Mode B: Segera setelah penerapan: Memilih opsi ini akan segera menghasilkan instans baru berdasarkan konfigurasi baru. Waktu terjadwal instans historis tetap tidak berubah.

Konfigurasi jenis penjadwalan

DataWorks mendukung enam siklus penjadwalan: menit, jam, hari, minggu, bulan, dan tahun. Pada halaman pengeditan node di DataStudio, klik Scheduling Settings di sisi kanan, lalu konfigurasikan pengaturan di bagian Scheduling time.

Catatan

Cara Anda mengonfigurasi waktu terjadwal bergantung pada cara node diorganisasikan:

  • Node alur kerja: Jika node diorganisasikan dalam alur kerja, waktu terjadwal dikonfigurasi di tingkat alur kerja. Node individual dalam alur kerja tidak dapat memiliki konfigurasi waktu terjadwal sendiri. Untuk mengubah waktu terjadwal, buka konfigurasi penjadwalan alur kerja tersebut.

  • Node mandiri: Jika node tidak termasuk dalam alur kerja apa pun, waktu terjadwal dikonfigurasi secara independen pada node itu sendiri.

Penjadwalan tingkat menit

Catatan

Interval minimum untuk penjadwalan tingkat menit adalah 1 menit.

Contoh konfigurasi

Tujuan: Node dijadwalkan setiap 30 menit antara 00:00 dan 23:59 setiap hari.

Catatan

Ekspresi cron dihasilkan secara otomatis berdasarkan waktu yang dipilih dan tidak dapat dimodifikasi secara manual.

Atur tanggal efektif menjadi Permanent. Ekspresi cron yang dihasilkan secara otomatis adalah 00 */30 00-23 * * ?.

Detail penjadwalan

Konfigurasi di atas menghasilkan 48 instans berulang per hari, dengan waktu terjadwal 00:00, 00:30, 01:00, ..., 23:30. Data timestamp (bizdate) setiap instans adalah hari yang sama.

Catatan

Untuk skenario dependensi penjadwalan tingkat menit lainnya, lihat Cross-cycle dependencies for minute-level scheduling.

Penjadwalan per jam

Catatan

  • Rentang waktu mengikuti prinsip inklusif-inklusif. Misalnya, jika Anda mengonfigurasi node untuk berjalan setiap 1 jam antara 00:00 dan 03:00, sistem penjadwalan menghasilkan 4 instans dengan waktu terjadwal 00:00, 01:00, 02:00, dan 03:00.

  • Anda dapat mengatur rentang waktu dan interval, atau langsung menentukan beberapa waktu eksekusi spesifik.

Contoh konfigurasi

Tujuan: Node dijadwalkan setiap 6 jam antara 00:00 dan 23:59 setiap hari.

Catatan

Ekspresi cron dihasilkan secara otomatis berdasarkan waktu yang dipilih dan tidak dapat dimodifikasi secara manual.

Atur Scheduling Cycle menjadi Hour, pilih tab Hour Range, atur Effective Date menjadi Permanent. Ekspresi cron yang dihasilkan secara otomatis adalah 00 00 00-23/6 * * ?.

Detail penjadwalan

Sistem penjadwalan menghasilkan 4 instans per hari, dengan waktu terjadwal 00:00, 06:00, 12:00, dan 18:00.

Catatan

Untuk skenario dependensi penjadwalan per jam lebih lanjut, lihat Dependensi Lintas Siklus untuk Penjadwalan Per Jam.

Penjadwalan harian

Node yang dijadwalkan harian berjalan sekali per hari pada waktu terjadwal yang ditentukan. Saat membuat node, waktu terjadwal default dihasilkan secara acak dalam rentang 00:00–00:30 untuk mencegah sejumlah besar task dimulai secara bersamaan pada 00:00. Anda dapat mengubahnya sesuai kebutuhan.

Contoh konfigurasi

Tujuan: Node berjalan sekali per hari pada 13:00.

Catatan

Ekspresi cron dihasilkan secara otomatis berdasarkan waktu yang dipilih dan tidak dapat dimodifikasi secara manual.

Atur Effective Date menjadi Permanent.

Detail penjadwalan

Sistem penjadwalan menghasilkan satu instans per hari untuk task ini, dengan waktu terjadwal pukul 13:00 pada hari yang sama.

Catatan

Untuk skenario dependensi penjadwalan harian lainnya, lihat Cross-cycle dependencies for daily scheduling.

Penjadwalan mingguan

Pada hari-hari non-terjadwal, node yang dijadwalkan mingguan memicu dry-run untuk memastikan dependensi downstream dapat berjalan normal. Untuk informasi lebih lanjut, lihat Dry-run.

Contoh konfigurasi

Tujuan: Task berjalan pada waktu yang ditentukan setiap hari Senin dan Jumat. Instans yang dihasilkan pada hari Senin dan Jumat dijadwalkan dan berjalan secara normal, sedangkan instans pada hari lainnya merupakan instans dry-run.

Catatan

Ekspresi cron dihasilkan secara otomatis berdasarkan waktu yang dipilih dan tidak dapat dimodifikasi secara manual.

Atur Scheduling time menjadi 00:00, atur Effective Date menjadi Permanent. Ekspresi cron yang dihasilkan secara otomatis adalah 00 00 00 ? * 1,5.

Detail penjadwalan

Sistem penjadwalan secara otomatis menghasilkan dan menjalankan instans untuk task tersebut.

Catatan

Saat menggunakan fitur backfill data, perhatikan data timestamp yang dipilih. Di DataWorks, data timestamp = tanggal terjadwal - 1. Misalnya, untuk melakukan backfill task mingguan yang berjalan pada hari Senin, pilih hari Minggu minggu sebelumnya sebagai data timestamp. Jika Anda memilih tanggal lain, instans backfill akan menjadi instans dry-run.

Penjadwalan bulanan

Pada hari-hari non-terjadwal, node bulanan memicu dry-run untuk memastikan dependensi downstream dapat berjalan dengan baik. Untuk informasi lebih lanjut, lihat Dry-run.

Penjadwalan bulanan memungkinkan Anda mengatur Specified time menjadi Last day of every month.

Contoh konfigurasi

Tujuan: Node berjalan pada waktu yang ditentukan pada hari terakhir setiap bulan. Instans yang dihasilkan pada hari terakhir setiap bulan berjalan sesuai jadwal, sedangkan instans pada hari lainnya merupakan dry-run.

Catatan

Ekspresi cron dihasilkan secara otomatis berdasarkan waktu yang dipilih dan tidak dapat dimodifikasi secara manual.

Atur Scheduling Cycle menjadi Month, dan atur waktu spesifik menjadi 00:00 pada hari terakhir setiap bulan.

Detail penjadwalan

Sistem penjadwalan secara otomatis menghasilkan dan menjalankan instans untuk node tersebut.

Catatan

Saat menggunakan fitur backfill data, perhatikan data timestamp yang dipilih. Di DataWorks, data timestamp = tanggal terjadwal - 1. Misalnya, untuk melakukan backfill node akhir bulan yang berjalan pada 31 Januari, atur data timestamp menjadi 30 Januari. Jika Anda memilih tanggal berbeda, instans backfill akan menjadi dry-run.

Penjadwalan tahunan

Pada hari-hari non-terjadwal, node tahunan memicu dry-run untuk memastikan dependensi downstream dapat berjalan dengan baik. Untuk informasi lebih lanjut, lihat Dry-run.

Contoh konfigurasi

Tujuan: Node berjalan pada tanggal 1 dan hari terakhir bulan Januari, April, Juli, dan Oktober setiap tahun. Instans yang dihasilkan pada tanggal yang ditentukan berjalan sesuai jadwal, sedangkan instans pada tanggal lainnya merupakan dry-run.

Dalam formulir, atur Scheduling time menjadi 00:00, dan atur Effective Date menjadi Permanent. Ekspresi cron yang sesuai adalah 00 00 00 L,1 1,4,7,10 ?.

Detail penjadwalan

Sistem penjadwalan secara otomatis menghasilkan dan menjalankan instans untuk node tersebut.

Catatan

Untuk skenario dependensi lainnya, lihat Cross-cycle dependencies.