DataWorks memungkinkan Anda mengonfigurasi dependensi penjadwalan antara tugas-tugas yang dijadwalkan per menit, jam, hari, minggu, bulan, atau tahun. Jumlah siklus penjadwalan suatu tugas bervariasi berdasarkan frekuensi penjadwalannya. Setiap siklus penjadwalan menghasilkan sebuah instans untuk tugas tersebut. Topik ini menjelaskan dependensi antara instans tugas leluhur dan keturunan dengan frekuensi penjadwalan yang berbeda.
Informasi latar belakang
Di DataWorks, tugas yang dipicu otomatis menghasilkan instans berdasarkan frekuensi penjadwalan dan jumlah siklus penjadwalan. Misalnya, tugas yang dijadwalkan per jam menghasilkan jumlah instans sesuai dengan jumlah siklus penjadwalan setiap hari. Pada dasarnya, dependensi antara tugas yang dipicu otomatis adalah dependensi antara instans yang dihasilkan untuk tugas-tugas tersebut. Jumlah instans yang dihasilkan untuk tugas leluhur dan keturunan serta dependensi antar instans bervariasi berdasarkan frekuensi penjadwalan mereka.
DataWorks mendukung berbagai skenario dependensi penjadwalan. Anda dapat mengonfigurasi dependensi penjadwalan siklus yang sama atau lintas siklus antara tugas-tugas dalam skenario tertentu. Untuk informasi lebih lanjut tentang dependensi penjadwalan siklus yang sama dan lintas siklus, lihat Konfigurasikan Dependensi Penjadwalan Siklus yang Sama dan Konfigurasikan Dependensi Penjadwalan Lintas Siklus.
Sebelum mengonfigurasi dependensi penjadwalan, perhatikan item-item yang dijelaskan dalam tabel berikut.
No. | Deskripsi | Referensi |
1 | DataWorks mendukung frekuensi penjadwalan berikut: menit, jam, hari, minggu, bulan, dan tahun. Jika frekuensi penjadwalan tugas leluhur dan keturunan berbeda, DataWorks memungkinkan Anda mengonfigurasi dependensi penjadwalan berdasarkan prinsip kedekatan waktu penjadwalan. null
| Prinsip Kedekatan Waktu Penjadwalan untuk Dependensi Penjadwalan |
2 | Setelah mengonfigurasi dependensi penjadwalan antara tugas-tugas di DataWorks, dependensi antara data tugas-tugas tersebut terbentuk. Terlepas dari waktu penjadwalan suatu tugas, tugas tersebut hanya dapat dijalankan setelah semua tugas leluhurnya selesai. | Dampak Dependensi Antara Tugas-Tugas pada Pelaksanaan Tugas-Tugas Tersebut |
3 | Anda dapat memahami prinsip kedekatan waktu penjadwalan untuk dependensi penjadwalan melalui skenario-skenario contoh. |
|
Prinsip kedekatan waktu penjadwalan untuk dependensi penjadwalan
Di DataWorks, sebuah instans dihasilkan untuk tugas yang dipicu otomatis setiap kali tugas tersebut dijadwalkan untuk dijalankan. Instans keturunan bergantung pada instans leluhur, sehingga instans leluhur harus dihasilkan sebelum waktu penjadwalan instans keturunan tiba.
Dalam kebanyakan kasus, jika Anda tidak menentukan instans tempat instans saat ini bergantung, dependensi untuk instans saat ini sesuai dengan prinsip kedekatan waktu penjadwalan. Ini menunjukkan bahwa instans saat ini bergantung pada instans yang waktu penjadwalannya paling dekat tetapi tidak lebih lambat dari waktu penjadwalan instans saat ini dan bukan instans leluhur dari instans lain. Tabel berikut menjelaskan prinsip dependensi dalam skenario yang berbeda.
Jika waktu penjadwalan suatu tugas lebih awal daripada waktu penjadwalan tugas leluhurnya, tugas tersebut tidak dijalankan pada waktu penjadwalan. Tugas tersebut hanya dapat dijadwalkan untuk dijalankan setelah tugas leluhur selesai.
Berdasarkan prinsip kedekatan waktu penjadwalan, jika tugas leluhur suatu tugas tidak memiliki instans yang waktu penjadwalannya lebih awal daripada waktu penjadwalan instans pertama yang dihasilkan untuk tugas tersebut pada hari saat ini, instans pertama tugas tersebut bergantung pada instans pertama yang dihasilkan untuk tugas leluhur pada hari saat ini secara default.
Skenario | Deskripsi | Diagram |
Skenario Dependensi untuk Tugas-Tugas yang Dijadwalkan Per Jam dan Per Menit | Dependensi antara tugas-tugas terkait memengaruhi waktu penjadwalan instans yang dihasilkan untuk tugas-tugas tersebut.
| Diagram-diagram berikut menunjukkan dependensi penjadwalan antara tugas yang dijadwalkan per jam dan tugas yang dijadwalkan per menit dalam berbagai skenario. |
Dependensi antara tugas-tugas tidak terkait dengan waktu penjadwalan instans yang dihasilkan untuk tugas-tugas tersebut. Dalam skenario di mana tugas yang dijadwalkan per jam bergantung pada tugas lain yang dijadwalkan per jam atau tugas yang dijadwalkan per menit bergantung pada tugas lain yang dijadwalkan per menit, pemetaan satu-satu dibentuk antara instans leluhur dan instans keturunan jika jumlah siklus penjadwalan (instans yang dihasilkan pada hari saat ini) untuk tugas leluhur dan keturunan sama. | ||
Skenario di mana tugas yang dijadwalkan harian bergantung pada tugas yang dijadwalkan per jam atau per menit |
|
|
Untuk informasi lebih lanjut tentang dependensi dan situasi pelaksanaan tugas-tugas dalam berbagai skenario dependensi, lihat Lampiran: Skenario Dependensi Kompleks.
Dampak dependensi antara tugas-tugas pada pelaksanaan tugas-tugas tersebut
Setelah mengonfigurasi dependensi antara tugas-tugas, tugas keturunan tidak dapat mulai dijalankan bahkan pada waktu penjadwalan tugas keturunan jika tugas leluhur tidak dalam status Berhasil.
Sebagai contoh, Tugas B yang dijadwalkan per jam bergantung pada Tugas A yang dijadwalkan per hari.
Tugas A: Waktu penjadwalan adalah
07:00.Tugas B: Waktu penjadwalan adalah
00:00,08:00, dan16:00.
Jika Tugas A belum selesai dijalankan, Tugas B tidak dijadwalkan untuk dijalankan ketika waktu penjadwalan 00:00 dari Tugas B tiba. Waktu paling dini Tugas B benar-benar dijalankan adalah 07:00.
Lampiran: Skenario dependensi kompleks
Tabel-tabel berikut menjelaskan dependensi dan situasi pelaksanaan tugas-tugas dengan frekuensi penjadwalan yang berbeda dalam berbagai skenario dependensi.
Jika waktu penjadwalan suatu tugas lebih awal daripada waktu penjadwalan tugas leluhurnya, tugas tersebut tidak dijalankan pada waktu penjadwalan. Tugas tersebut hanya dapat dijadwalkan untuk dijalankan setelah tugas leluhur selesai.
Berdasarkan prinsip kedekatan waktu penjadwalan, jika tugas leluhur suatu tugas tidak memiliki instans yang waktu penjadwalannya lebih awal daripada waktu penjadwalan instans pertama yang dihasilkan untuk tugas tersebut pada hari saat ini, instans pertama tugas tersebut bergantung pada instans pertama yang dihasilkan untuk tugas leluhur pada hari saat ini secara default.
Dependensi untuk tugas-tugas yang dijadwalkan per jam
Skenario dependensi | Deskripsi | Diagram |
Skenario di mana tugas yang dijadwalkan per jam bergantung pada tugas lain yang dijadwalkan per jam |
|
|
Skenario di mana tugas yang dijadwalkan per jam bergantung pada tugas yang dijadwalkan per hari |
|
|
Skenario di mana tugas yang dijadwalkan per jam bergantung pada tugas yang dijadwalkan per menit |
|
|
Dependensi untuk tugas-tugas yang dijadwalkan per hari
Skenario Dependensi | Deskripsi | Diagram |
Skenario di mana tugas harian bergantung pada tugas harian lain dalam siklus penjadwalan yang sama |
|
|
Skenario di mana tugas harian bergantung pada tugas per jam yang dijadwalkan pada hari yang sama |
|
|
Skenario di mana tugas yang dijadwalkan per hari bergantung pada tugas yang dijadwalkan per jam atau menit di hari sebelumnya. |
| Diagram berikut memberikan contoh bagaimana tugas yang dijadwalkan per hari bergantung pada tugas yang dijadwalkan per jam pada hari sebelumnya. |
Dependensi untuk tugas-tugas yang dijadwalkan per menit
Skenario dependensi | Deskripsi | Diagram |
Skenario di mana tugas yang dijadwalkan per menit bergantung pada tugas yang dijadwalkan per jam |
|
|
Skenario di mana tugas yang dijadwalkan per menit bergantung pada tugas yang dijadwalkan per hari |
|
|
Dependensi pada tugas-tugas yang dijadwalkan per minggu, bulan, atau tahun
Jika tugas yang dijadwalkan per hari, jam, atau menit bergantung pada tugas yang dijadwalkan per minggu, bulan, atau tahun, instans uji coba kering dihasilkan untuk tugas yang dijadwalkan per minggu, bulan, atau tahun dalam periode waktu yang jatuh di luar waktu penjadwalan. Instans uji coba kering tidak menghasilkan data, menggunakan sumber daya, atau memblokir tugas keturunan dari dijalankan.
Contoh skenario di mana tugas yang dijadwalkan per hari bergantung pada tugas yang dijadwalkan per minggu dan untuk mana dependensi diri tidak dikonfigurasi:
Tugas yang dijadwalkan per minggu dijadwalkan untuk dijalankan setiap Senin dan Jumat. Instans uji coba kering dihasilkan untuk tugas tersebut setiap Selasa, Rabu, Kamis, Sabtu, dan Minggu. Ketika waktu penjadwalan instans uji coba kering tiba, status instans langsung diatur menjadi berhasil, tetapi kode instans tidak dijalankan. Instans uji coba kering tidak memengaruhi pelaksanaan normal instans keturunan.
Instans dihasilkan untuk tugas yang dijadwalkan per hari setiap hari dan bergantung pada instans yang dihasilkan untuk tugas yang dijadwalkan per minggu setiap hari, termasuk instans uji coba kering. Instans yang dihasilkan untuk tugas yang dijadwalkan per hari dapat dijadwalkan untuk dijalankan setelah instans yang dihasilkan untuk tugas yang dijadwalkan per minggu berhasil dijalankan setiap hari.








