全部产品
Search
文档中心

DataWorks:Konfigurasikan dependensi pada siklus sebelumnya (dependensi lintas siklus)

更新时间:Jan 18, 2026

Dependensi pada siklus sebelumnya berarti instans saat ini dari suatu node bergantung pada instans node tertentu dari siklus sebelumnya. Instans saat ini hanya dijalankan setelah instans dari siklus sebelumnya berhasil dijalankan. Anda dapat mengatur dependensi lintas siklus jika suatu node perlu menggunakan data yang dihasilkan oleh node hulu pada hari sebelumnya, atau jika task per jam atau per menit perlu bergantung pada instansnya sendiri dari jam atau menit sebelumnya. Topik ini menjelaskan cara mengonfigurasi dependensi lintas siklus beserta jenis-jenisnya.

Perhatian

Perhatikan hal-hal berikut saat mengonfigurasi dependensi pada siklus sebelumnya.

Kategori

Deskripsi

Informasi terkait

Tampilan dependensi lintas siklus

Dependensi lintas siklus ditampilkan sebagai garis putus-putus dalam Directed Acyclic Graph (DAG) di DataWorks.

Lampiran: Fitur DAG

Konfirmasi apakah dependensi siklus yang sama diperlukan setelah mengatur dependensi lintas siklus

Setelah Anda mengonfigurasi dependensi, node hilir hanya dijalankan setelah semua node leluhurnya berhasil dijalankan.

Fitur penguraian otomatis untuk dependensi siklus yang sama diaktifkan secara default. Jika Anda mengatur dependensi lintas siklus, pastikan apakah dependensi siklus yang sama juga diperlukan. Jika tidak, hapus dependensi siklus yang sama yang diurai secara otomatis agar node hilir berjalan sesuai harapan.

Hapus dependensi

Kapan mengatur dependensi lintas siklus dalam skenario kompleks

Dalam beberapa skenario, jika dependensi siklus yang sama tidak memenuhi kebutuhan Anda, Anda dapat mengatur dependensi lintas siklus.

Misalnya, jika suatu node harian bergantung pada node per jam, secara default node harian tersebut bergantung pada semua instans node per jam untuk hari tersebut. Anda dapat mengonfigurasi self-dependency untuk node per jam tersebut. Hal ini memungkinkan node harian bergantung pada instans node per jam dari siklus tertentu.

Wajib baca: Prinsip dan contoh konfigurasi penjadwalan untuk skenario dependensi kompleks

Pratinjau dependensi node

Untuk mencegah keterlambatan penjadwalan di lingkungan produksi akibat dependensi yang tidak terduga, pratinjau dependensinya sebelum memublikasikan task. Hal ini memastikan hubungan instans untuk setiap siklus sudah benar.

Pratinjau dependensi

Instruksi Penerbitan Tugas

Pastikan bahwa baik node hulu maupun node hilir yang memiliki dependensi lintas siklus telah dipublikasikan ke lingkungan produksi. Setelah dipublikasikan, Anda dapat melihat dependensinya di Operation Center untuk lingkungan tersebut.

Publikasikan task

Titik masuk

Buka halaman pengeditan node di Data Studio. Di panel navigasi sebelah kanan, klik Scheduling Configuration. Di bagian Scheduling Dependency > Previous Cycle, Anda dapat mengonfigurasi dependensi node tersebut.调度依赖

Jenis dependensi

Tabel berikut menjelaskan jenis dependensi pada siklus sebelumnya yang didukung.

Jenis dependensi

Dependensi node

Skenario bisnis

Dependensi pada siklus sebelumnya: Node saat ini (self-dependency)

Instans saat ini dari suatu node bergantung pada hasil instansnya sendiri dari siklus sebelumnya. Instans saat ini hanya dijalankan jika instans dari siklus sebelumnya berhasil dijalankan.

Instans saat ini dari suatu node bergantung pada data bisnis yang dihasilkan oleh instansnya sendiri dari siklus sebelumnya.

Dependensi pada siklus sebelumnya: Node turunan tingkat pertama

Instans saat ini dari suatu node bergantung pada status instans node hilirnya dari siklus sebelumnya. Instans saat ini hanya dijalankan jika instans node hilir dari siklus sebelumnya berhasil dijalankan.

Instans saat ini dari suatu node bergantung pada apakah node hilirnya berhasil memproses data di tabel sink-nya (tabel output) dari siklus sebelumnya.

Dependensi pada siklus sebelumnya: Node lain

Instans saat ini dari suatu node bergantung pada hasil instans node lain dari siklus sebelumnya. Instans saat ini hanya dijalankan jika instans node lain dari siklus sebelumnya berhasil dijalankan.

Instans saat ini dari suatu node secara logis bergantung pada data dari proses bisnis lain, meskipun node tersebut tidak melakukan operasi apa pun terhadap data tersebut.

Dependensi pada siklus sebelumnya: Node saat ini (self-dependency)

Instans saat ini dari suatu node bergantung pada data bisnis yang dihasilkan oleh instansnya sendiri dari siklus sebelumnya. Gambar berikut menunjukkan contoh pengaturan dependensi dan hubungan yang dihasilkan.依赖上一周期:本节点

Catatan

Hasil eksekusi instans untuk task per jam dan per menit saling memengaruhi di berbagai siklus.

Jika suatu task harian bergantung pada task per jam atau per menit, waktu eksekusi task harian tersebut dipengaruhi oleh apakah self-dependency diatur untuk task per jam atau per menit tersebut:

  • Task per jam atau per menit tanpa self-dependency

    Secara default, task harian bergantung pada semua instans task per jam atau per menit untuk hari tersebut. Task harian kemudian mengagregasi dan memproses seluruh data tabel yang dihasilkan oleh task per jam atau per menit untuk hari tersebut.

  • Task per jam atau per menit dengan self-dependency

    Task harian menempel pada instans per jam atau per menit dengan waktu penjadwalan terdekat, berdasarkan prinsip kedekatan waktu penjadwalan. Task tersebut tidak bergantung pada semua instans per jam atau per menit untuk hari tersebut.

Untuk informasi lebih lanjut tentang dependensi spesifik, lihat Lampiran: Ringkasan skenario dependensi kompleks.

Catatan

Saat Anda melakukan backfill data untuk task dengan self-dependency, instans datanya mungkin dijalankan secara berurutan berdasarkan urutan kronologis. Untuk informasi lebih lanjut, lihat Backfill data untuk task dengan self-dependency.

Dependensi pada siklus sebelumnya: Node turunan tingkat pertama

Instans saat ini dari suatu node bergantung pada apakah node hilirnya berhasil memproses data tabelnya dari siklus sebelumnya.

Misalnya, Node C memiliki dua node hilir: Node A dan Node B. Dependensi pada node turunan tingkat pertama berarti Node C bergantung pada hasil Node A dan Node B dari siklus sebelumnya. Dalam gambar, siklus saat ini adalah T dan siklus sebelumnya adalah T-1. Instans saat ini dari Node C hanya dijalankan setelah instans Node A dan Node B dari siklus sebelumnya berhasil dijalankan.依赖上一周期:一级子节点

Dependensi pada siklus sebelumnya: Node lain

Instans node saat ini hanya dijalankan jika instans node lain dari siklus sebelumnya berhasil dijalankan.

Misalnya, Node A dan Node B adalah dua node hilir dari Node C. Dependensi pada node lain berarti Node B bergantung pada hasil Node D dari siklus sebelumnya. Dalam gambar, siklus saat ini adalah T dan siklus sebelumnya adalah T-1. Instans saat ini dari Node B hanya dijalankan setelah instans Node D dari siklus sebelumnya berhasil dijalankan.依赖上一周期:其他节点

Warisi properti dry-run dari node hulu

Konfigurasi ini biasanya digunakan bersama branch node.

  • Titik Masuk

    Di bagian Scheduling Dependency, Anda dapat mengatur Skip Dry-Run Property of Upstream Node ke Yes. Pengaturan ini mencegah node hilir terpengaruh oleh properti dry-run node ini dari siklus sebelumnya.沿用空跑属性

  • Skenario aplikasi

    Suatu node memiliki beberapa node hilir. Saat eksekusi task, beberapa node hilir diatur ke status dry-run. Jika node hilir dry-run dikonfigurasi dengan self-dependency pada siklus sebelumnya, properti dry-run-nya diwariskan ke node anaknya. Hal ini menyebabkan node tersebut terus-menerus berada dalam status dry-run. Jika Anda tidak ingin node anak mewarisi properti dry-run dari node hulu, atur Skip Dry-Run Property of Upstream Node ke Yes di bagian Scheduling Dependency.

  • Example scenario

    • Asumsikan Assign_Node adalah assignment node, Branch_Node adalah branch node, dan Shell_Node1 serta Shell_Node2 adalah node hilir dari Branch_Node. Semua node ini dijadwalkan berjalan setiap hari.

    • Saat runtime, Shell_Node1 diatur ke dry-run, sedangkan Shell_Node2 berjalan normal.

    • Node Shell_Node1 dikonfigurasi dengan self-dependency pada siklus sebelumnya.

    • Pada siklus saat ini (T), instans berulang yang dihasilkan untuk node Shell_Node1 diberi nama Shell_Node1'.

    • Pada siklus sebelumnya (T-1), instans berulang yang dihasilkan untuk node Shell_Node1 diberi nama Shell_Node1.

    Advanced configuration exampleInstans berulang Shell_Node1 pada epoch saat ini (T) bergantung pada instans berulang Shell_Node1 dari epoch sebelumnya (T-1) untuk dijalankan. Node `Shell_Node1` selalu melakukan dry-run karena merupakan node turunan dan mewarisi properti `dry-run` dari node leluhurnya.

Pratinjau dependensi

Setelah menyelesaikan konfigurasi, Anda dapat mempratinjau dependensi node tersebut. Untuk informasi lebih lanjut, lihat Selanjutnya: Konfirmasi bahwa dependensi sesuai harapan Anda.