Dependensi penjadwalan di DataWorks adalah hubungan ketergantungan antara node pemicu otomatis leluhur dan keturunan. Node-node tersebut dijadwalkan secara berurutan untuk dijalankan berdasarkan dependensi penjadwalan. Node keturunan mulai berjalan setelah node leluhur selesai. Ini memastikan bahwa data bisnis yang valid dihasilkan pada kesempatan tercepat. Topik ini menjelaskan cara mengonfigurasi dependensi penjadwalan untuk sebuah node guna mencegah pengecualian data akibat konfigurasi yang salah. Kami menyarankan Anda membaca topik ini sebelum mengonfigurasi dependensi penjadwalan.
Informasi latar belakang
Dependensi penjadwalan di DataWorks mendefinisikan hubungan antar node dalam skenario penjadwalan. Setelah Anda mengonfigurasi dependensi penjadwalan untuk sebuah node, node tersebut hanya dapat mulai berjalan setelah node leluhurnya berhasil dijalankan. Dependensi penjadwalan memastikan bahwa sebuah node dapat memperoleh data yang diperlukan dari node leluhurnya. Jika node leluhur berhasil dijalankan, DataWorks mendeteksi bahwa data terbaru dihasilkan oleh node leluhur berdasarkan statusnya. Kemudian, node tersebut memperoleh data yang dihasilkan, mencegah kegagalan dalam memperoleh data yang diperlukan.
Perhatian
Setelah Anda mengonfigurasi dependensi penjadwalan untuk sebuah node, node tersebut hanya dapat mulai berjalan setelah node leluhurnya berhasil dijalankan. Jika tidak, masalah kualitas data mungkin terjadi ketika node memperoleh data dari node leluhurnya.
Waktu sebuah node dijalankan ditentukan oleh waktu penjadwalan (waktu berjalan yang diharapkan dalam skenario penjadwalan) dan waktu node leluhurnya selesai berjalan. Ini berarti waktu berjalan aktual dari node juga bergantung pada waktu penjadwalan node leluhurnya. Jika node leluhur belum selesai berjalan, node tersebut tidak dapat mulai berjalan tepat waktu meskipun waktu penjadwalannya lebih awal daripada node leluhurnya. Untuk informasi tentang kondisi berjalan sebuah node, lihat Gunakan fitur Diagnosis Cerdas.
Panduan untuk mengonfigurasi dependensi penjadwalan
Dependensi penjadwalan antar node di DataWorks memastikan bahwa node keturunan dapat memperoleh data valid dari node leluhur. Ini menunjukkan adanya garis keturunan kuat antara tabel yang dihasilkan oleh node leluhur dan keturunan. Anda dapat menentukan apakah akan mengonfigurasi dependensi penjadwalan untuk sebuah node berdasarkan garis keturunan antara tabel yang dihasilkan oleh node dan node leluhurnya sesuai dengan kebutuhan bisnis Anda. Gambar berikut menunjukkan prosedur untuk mengonfigurasi dependensi penjadwalan untuk sebuah node.
Metode 1: Konfigurasikan dependensi penjadwalan kustom
Anda dapat mengonfigurasi dependensi penjadwalan untuk sebuah node berdasarkan kebutuhan bisnis dalam skenario berikut: Skenario 1: Tidak ada garis keturunan kuat antara node dan node leluhurnya. Sebagai contoh, node tersebut tidak sepenuhnya bergantung pada data di partisi tertentu dari tabel output node leluhurnya, tetapi hanya bergantung pada data di partisi dengan nilai kunci partisi terbesar. Skenario 2: Node bergantung pada data tabel yang tidak dihasilkan oleh node pemicu otomatis. Contohnya, node bergantung pada data tabel yang diunggah dari mesin lokal Anda. Gunakan metode berikut untuk mengonfigurasi dependensi penjadwalan sesuai kebutuhan bisnis Anda:
Tentukan node akar ruang kerja sebagai node leluhur
Sebagai contoh, gunakan node akar ruang kerja sebagai node leluhur jika node sinkronisasi data bergantung pada data dari database bisnis lain atau jika node SQL memproses data tabel yang dihasilkan oleh node sinkronisasi waktu nyata.
Tentukan node beban nol sebagai node leluhur
Dalam ruang kerja, jika alur kerja mencakup sejumlah besar node atau memiliki hubungan kompleks antar node, Anda dapat menggunakan node beban nol untuk mengelola node dalam alur kerja secara terpusat. Tentukan node beban nol sebagai node leluhur dari node yang ingin Anda kelola. Dengan cara ini, jalur penerusan data dalam ruang kerja menjadi lebih jelas. Sebagai contoh, gunakan node beban nol untuk menentukan waktu penjadwalan bagi node dalam alur kerja, serta menjadwalkan atau membekukan node dalam alur kerja secara terpusat.
Metode 2: Konfigurasikan dependensi penjadwalan untuk sebuah node berdasarkan garis keturunan data tabel
Jika Anda mengonfigurasi dependensi penjadwalan untuk sebuah node berdasarkan garis keturunan data tabel, sistem menentukan bahwa ada garis keturunan kuat antara data tabel. Ini menunjukkan bahwa data tabel yang dihasilkan oleh node bergantung pada data tabel yang dihasilkan oleh node leluhurnya. Sebelum mengonfigurasi dependensi penjadwalan untuk node berdasarkan garis keturunan tabel, Anda harus memeriksa apakah ada garis keturunan kuat antara data tabel yang dihasilkan oleh node dan node leluhurnya. Untuk memeriksa apakah ada garis keturunan kuat, Anda dapat memeriksa apakah node dapat memperoleh data valid jika node leluhur gagal menghasilkan data. Jika node gagal memperoleh data valid, maka ada garis keturunan kuat.
No. | Tujuan | Deskripsi |
1 dan 2 | Periksa apakah ada garis keturunan kuat antara data tabel yang dihasilkan oleh node saat ini dan node leluhurnya. | Untuk memastikan bahwa node saat ini dapat dijalankan pada waktu penjadwalannya, Anda dapat memeriksa apakah ada garis keturunan kuat antara data tabel yang dihasilkan oleh node saat ini dan node leluhurnya, serta menentukan apakah akan mengonfigurasi dependensi penjadwalan untuk node saat ini berdasarkan garis keturunan antara data tabel. |
3 | Periksa apakah data tabel tempat node saat ini bergantung dihasilkan oleh node pemicu otomatis. | DataWorks menentukan apakah data tabel dari node pemicu otomatis dihasilkan berdasarkan status node. Namun, DataWorks tidak dapat menentukan apakah data tabel dari node non-pemicu otomatis dihasilkan berdasarkan status node. Jika Anda menggunakan tabel yang tidak dihasilkan oleh node pemicu otomatis, konfigurasi dependensi penjadwalan tidak didukung. |
4, 5, dan 6 | Tentukan dan konfigurasikan dependensi penjadwalan untuk node saat ini berdasarkan garis keturunan data tabel. | Anda dapat menentukan apakah akan mengonfigurasi dependensi penjadwalan siklus-saat-ini atau siklus-sebelumnya antara node saat ini dan node leluhurnya berdasarkan kondisi berikut: Apakah node saat ini perlu bergantung pada data yang dihasilkan oleh node leluhurnya pada hari sebelumnya atau hari saat ini, dan apakah instance yang dihasilkan untuk node saat ini dalam siklus saat ini perlu bergantung pada instance yang dihasilkan untuk node tersebut dalam siklus sebelumnya jika node saat ini dijadwalkan per jam atau per menit. |
7, 8, dan 9 | Pratinjau dependensi penjadwalan. | Setelah Anda mengonfigurasi dependensi penjadwalan, Anda dapat melakukan operasi berikut untuk memeriksa apakah dependensi penjadwalan node dalam lingkungan produksi memenuhi kebutuhan bisnis Anda: pratinjau dependensi penjadwalan node saat ini setelah konfigurasi dependensi penjadwalan, gunakan fitur perbandingan hasil penguraian kode sebelum Anda menyebarkan node, dan lihat node saat ini di halaman Node Pemicu Otomatis di Operation Center setelah Anda menyebarkan node ke lingkungan produksi. |
Konfigurasikan dependensi penjadwalan untuk sebuah node berdasarkan garis keturunan data tabel
Di DataWorks, garis keturunan data tabel ditunjukkan oleh dependensi penjadwalan antara node yang menghasilkan data tabel. Setelah Anda mengonfirmasi bahwa ada garis keturunan kuat antara data tabel yang dihasilkan oleh node dan node leluhurnya, Anda dapat menentukan apakah akan mengonfigurasi dependensi penjadwalan siklus-saat-ini atau siklus-sebelumnya antara node berdasarkan kondisi berikut: Apakah node saat ini perlu bergantung pada data yang dihasilkan oleh node leluhurnya pada hari sebelumnya atau hari saat ini, dan apakah instance yang dihasilkan untuk node saat ini dalam siklus saat ini perlu bergantung pada instance yang dihasilkan untuk node tersebut dalam siklus sebelumnya jika node saat ini dijadwalkan per jam atau per menit.
DataWorks memungkinkan Anda mengonfigurasi dependensi penjadwalan antara node yang memiliki frekuensi penjadwalan berbeda. Jumlah instance dari sebuah node ditentukan oleh frekuensi penjadwalan dan jumlah siklus penjadwalan node. Jumlah siklus penjadwalan node leluhur mungkin berbeda dari node keturunan. Dalam siklus penjadwalan yang berbeda, dependensi penjadwalan antara instance leluhur dan keturunan mungkin berbeda. Untuk memastikan bahwa dependensi penjadwalan memenuhi kebutuhan bisnis Anda, kami menyarankan Anda menggunakan fitur pratinjau untuk melihat dependensi penjadwalan antara instance leluhur dan keturunan jika jumlah siklus penjadwalan dan waktu penjadwalan instance leluhur berbeda dari instance keturunan. Untuk informasi lebih lanjut, lihat Prinsip dan Contoh Konfigurasi Penjadwalan dalam Skenario Dependensi Kompleks.
Pemilihan dan konfigurasi dependensi penjadwalan berdasarkan skenario spesifik
Ketika sebuah node dijadwalkan, parameter penjadwalan dari node dalam kode node digunakan untuk menentukan instance leluhur spesifik tempat instance node saat ini bergantung. Gambar berikut menunjukkan logika penentuan.
Parameter penjadwalan node secara otomatis diganti dengan nilai spesifik berdasarkan cap waktu data dan waktu penjadwalan node serta format nilai parameter penjadwalan. Dengan cara ini, nilai parameter penjadwalan diganti secara dinamis pada waktu penjadwalan node. Ini juga mengimplementasikan perubahan data yang diquery dan data partisi yang dihasilkan.
Untuk mengonfigurasi dependensi penjadwalan untuk sebuah node berdasarkan garis keturunan data tabel, lakukan operasi berikut:
Konfirmasi Garis Keturunan Data Tabel
Untuk memastikan bahwa data tabel yang dihasilkan oleh node memenuhi kebutuhan bisnis Anda, Anda harus memastikan bahwa node leluhurnya menghasilkan data bisnis yang diperlukan pada hari saat ini. Ini menunjukkan bahwa data yang diperoleh node pada hari saat ini dihasilkan oleh node leluhur pada hari saat ini.
Jika node dijadwalkan per jam atau per menit, Anda harus memastikan bahwa setiap instance dari node menghasilkan data partisi tabel yang diperlukan.
Untuk informasi tentang cara mengonfirmasi garis keturunan data tabel dalam skenario di mana Anda tidak dapat melihat konfigurasi parameter penjadwalan node leluhur, seperti ketergantungan pada node leluhur yang berada di ruang kerja lain, lihat Konfirmasi Garis Keturunan Tabel.
Pilih Jenis Dependensi Penjadwalan Berdasarkan Garis Keturunan Tabel
Tabel berikut menjelaskan jenis dependensi penjadwalan yang dapat Anda pilih berdasarkan garis keturunan antar tabel.
Jenis dependensi penjadwalan
Garis keturunan
Node keturunan bergantung pada data tabel yang dihasilkan oleh node leluhur pada hari saat ini.
Node keturunan bergantung pada data tabel yang dihasilkan oleh node leluhur pada hari sebelumnya.
Skema dependensi khusus untuk node yang dijadwalkan per jam dan per menit:
Instance yang dihasilkan untuk node yang dijadwalkan per jam atau per menit dalam siklus saat ini bergantung pada instance yang dihasilkan untuk node yang sama dalam siklus sebelumnya. Untuk informasi lebih lanjut, lihat Ketergantungan pada instance yang dihasilkan untuk node saat ini dalam siklus sebelumnya.
Node A yang dijadwalkan per jam bergantung pada Node B yang dijadwalkan per jam, dan waktu penjadwalan kedua node sama. Anda dapat mengonfigurasi dependensi penjadwalan lintas-siklus untuk Node A untuk memungkinkan instance yang dihasilkan untuk Node A pada 02:00 bergantung pada instance yang dihasilkan untuk Node B pada 01:00. Logika yang sama berlaku untuk node yang dijadwalkan per menit dan bergantung pada node lain yang dijadwalkan per menit.
Skenario di mana dependensi penjadwalan tidak dapat dikonfigurasi
Dependensi penjadwalan antara node pemicu otomatis di DataWorks dikonfigurasi untuk memastikan bahwa tabel yang dihasilkan oleh node diperbarui secara berkala pada titik waktu tertentu, dan node pemicu otomatis keturunan memperoleh data valid dari node pemicu otomatis leluhur. Oleh karena itu, DataWorks tidak dapat memantau tabel yang tidak dihasilkan oleh node pemicu otomatis di DataWorks. Tabel yang datanya tidak dihasilkan berdasarkan penjadwalan periodik di DataWorks mencakup tetapi tidak terbatas pada tabel berikut:
Tabel yang dihasilkan oleh node sinkronisasi waktu nyata
Tabel yang diunggah dari mesin lokal ke DataWorks
Tabel dimensi
Tabel yang dihasilkan oleh node pemicu manual
Tabel yang datanya diperbarui secara berkala tetapi tidak dihasilkan oleh node pemicu otomatis di DataWorks
Untuk node yang data tabelnya tidak dihasilkan berdasarkan penjadwalan periodik di DataWorks, Anda dapat mengonfigurasi dependensi penjadwalan kustom untuk node tersebut. Untuk informasi lebih lanjut, lihat bagian Konfigurasikan Dependensi Penjadwalan dalam topik ini.
Konfirmasi dependensi penjadwalan
Setelah Anda mengonfigurasi dependensi penjadwalan untuk node, Anda dapat menggunakan metode yang dijelaskan dalam tabel berikut untuk memeriksa apakah dependensi penjadwalan memenuhi kebutuhan bisnis Anda.
Metode | Deskripsi |
Pratinjau Dependensi Penjadwalan Node Ketika Anda Mengonfigurasi Dependensi Penjadwalan | Anda dapat menggunakan fitur pratinjau untuk memeriksa apakah dependensi penjadwalan saat ini dari node memenuhi kebutuhan bisnis Anda. DataWorks memungkinkan Anda mengonfigurasi dependensi penjadwalan antara node yang dijadwalkan per menit, jam, hari, minggu, bulan, atau tahun. Jumlah siklus penjadwalan node bervariasi berdasarkan frekuensi penjadwalan node. Sebuah instance dihasilkan untuk node dalam setiap siklus penjadwalan. Ketergantungan antara instance leluhur dan keturunan bervariasi berdasarkan frekuensi penjadwalan node leluhur dan keturunan yang menghasilkan instance. Anda dapat menggunakan metode ini dalam skenario berikut: Node yang dijadwalkan per hari bergantung pada node yang dijadwalkan per jam, node yang dijadwalkan per jam bergantung pada node yang dijadwalkan per menit, atau Anda ingin mengonfigurasi dependensi penjadwalan lintas-siklus. Metode ini memastikan bahwa node dapat dijadwalkan sesuai harapan, dan mencegah ketergantungan penjadwalan yang tidak terduga menunda berjalannya node. Untuk informasi tentang cara mengonfigurasi dependensi penjadwalan dalam skenario dependensi kompleks, lihat Prinsip dan Contoh Konfigurasi Penjadwalan dalam Skenario Dependensi Kompleks. |
Bandingkan Hasil Penguraian Kode Ketika Anda Mengirimkan Node | Anda dapat menggunakan fitur perbandingan hasil penguraian kode untuk mengonfirmasi apakah modifikasi yang Anda buat pada dependensi penjadwalan saat ini dari node memenuhi kebutuhan bisnis Anda, serta mengonfirmasi dampak modifikasi terhadap data dalam lingkungan produksi. Jika Anda mengaktifkan fitur penguraian otomatis dan Anda memodifikasi dependensi penjadwalan node yang diperoleh berdasarkan fitur penguraian otomatis, Anda harus mengonfirmasi modifikasi yang Anda buat ketika Anda mengirimkan node. Ini memastikan bahwa data dihasilkan sesuai harapan dalam lingkungan produksi. Metode ini memastikan bahwa modifikasi terhadap dependensi penjadwalan tidak memengaruhi pembuatan data node dalam lingkungan produksi. |
Lihat Detail Node di Halaman Node Pemicu Otomatis Setelah Anda Menyebarkan Node | Anda dapat menggunakan metode ini untuk memeriksa apakah dependensi penjadwalan node dalam lingkungan produksi memenuhi kebutuhan bisnis Anda di Operation Center setelah Anda menyebarkan node.
|
Informasi tambahan
Bagian ini menjelaskan skenario dependensi penjadwalan umum. Untuk informasi tentang pertanyaan yang sering diajukan tentang dependensi penjadwalan, lihat Dependensi Penjadwalan.
Node uniqueness
Sebuah node dapat memiliki konfigurasi dependensi penjadwalan berbeda dalam lingkungan pengembangan dan produksi tetapi node tersebut harus unik.
Sebelum Anda menghapus penyebaran sebuah node, Anda harus menghapus semua node keturunan dari node tersebut baik dari lingkungan pengembangan maupun produksi. Karena kesatuan node, sebelum Anda menghapus penyebaran sebuah node di DataWorks, Anda harus menghapus semua node keturunan dari node tersebut, mengonfigurasi ulang node sebagai node leluhur dari node keturunan, dan kemudian mengirimkan serta menyebarkan operasi tersebut. Ini memastikan bahwa node keturunan dapat memperoleh data valid dan dijalankan sesuai harapan. Pastikan bahwa dependensi penjadwalan node dalam lingkungan pengembangan dan produksi dihapus sebelum Anda menghapus penyebaran node.
Mode Pembuatan Instance
Saat Anda membuat sebuah node, pastikan bahwa parameter Mode Pembuatan Instance disetel ke nilai yang sama untuk node dan node leluhurnya. Jika Anda menyetel parameter tersebut ke Segera Setelah Penyebaran untuk node leluhur dan ke Hari Berikutnya untuk node, node tersebut mungkin menjadi node terisolasi.
Anda mengubah frekuensi penjadwalan node yang ada dan menyetel parameter Mode Pembuatan Instance ke Segera Setelah Penyebaran. Setelah Anda memodifikasi dependensi penjadwalan sebuah node, instance yang dihasilkan untuk node tersebut tidak dapat dihapus secara otomatis. Akibatnya, dependensi penjadwalan instance yang dihasilkan untuk node pada hari saat ini menjadi kompleks. Untuk informasi lebih lanjut, lihat Dampak pada Dependensi Penjadwalan Instance yang Dihasilkan untuk Node pada Hari Saat Ini jika Anda Mengubah Nilai Parameter Mode Pembuatan Instance ke Segera Setelah Penyebaran.
Lebih dari 200 ketergantungan hulu saat Anda memanggil Operasi API untuk memperbarui pekerjaan
Pesan kesalahan: 'Satu file tidak boleh memiliki lebih dari 200 input'.
Gunakan DataStudio untuk menambahkan node beban nol antara node leluhur dan keturunan guna mengurangi jumlah ketergantungan hulu langsung dari node saat ini. Untuk informasi lebih lanjut tentang cara mengonfigurasi node beban nol, lihat Buat dan Gunakan Node Beban Nol.