Mengatur Nilai Pengembalian Alur di Azure Data Factory dan Azure Synapse Analytics
BERLAKU UNTUK:Azure Data Factory Azure Synapse Analytics
Tip
Cobalah Data Factory di Microsoft Fabric, solusi analitik all-in-one untuk perusahaan. Microsoft Fabric mencakup semuanya mulai dari pergerakan data hingga ilmu data, analitik real time, kecerdasan bisnis, dan pelaporan. Pelajari cara memulai uji coba baru secara gratis!
Dalam paradigma alur alur-anak panggilan, Anda dapat menggunakan aktivitas Atur Variabel untuk mengembalikan nilai dari alur anak ke alur panggilan. Dalam skenario berikut, kita memiliki alur anak melalui Aktivitas Jalankan Alur. Dan kami ingin mengambil informasi dari alur anak, untuk kemudian digunakan dalam alur panggilan.
Memperkenalkan nilai pengembalian alur, kamus pasangan nilai kunci, yang memungkinkan komunikasi antara alur anak dan alur induk.
Prasyarat - Memanggil Alur Anak
Sebagai prasyarat, desain Anda memerlukan Aktivitas Jalankan Alur yang memanggil alur anak, dengan Tunggu Penyelesaian diaktifkan pada aktivitas.
Mengonfigurasi Nilai Pengembalian Alur di Alur Anak
Kami telah memperluas aktivitas Atur Variabel untuk menyertakan variabel sistem Nilai Pengembalian Alur. Anda tidak perlu menentukannya pada tingkat alur (dibandingkan dengan variabel lain yang Anda gunakan dalam alur).
- Cari Set Variable di panel Aktivitas alur, dan seret aktivitas Atur Variabel ke kanvas alur.
- Pilih aktivitas Atur Variabel pada kanvas jika belum dipilih, lalu tab Variabelnya, untuk mengedit detailnya.
- Pilih Nilai pengembalian alur untuk jenis variabel.
- Pilih Baru untuk menambahkan pasangan nilai kunci baru.
- Jumlah pasangan kunci-nilai yang dapat ditambahkan hanya dibatasi oleh batas ukuran JSON yang dikembalikan (4MB).
Ada beberapa opsi untuk jenis nilai, termasuk
Nama Jenis | Deskripsi |
---|---|
String | Nilai string konstanta. misalnya: 'ADF luar biasa' |
Expression | Ini memungkinkan Anda untuk mereferensikan output dari aktivitas sebelumnya. Anda dapat menggunakan interpolasi string di sini untuk menyertakan nilai ekspresi dalam baris seperti "The value is @{guid()}" . |
Array | Ini mengharapkan array nilai string. Tekan tombol "enter" untuk memisahkan nilai dalam array |
Boolean | Benar atau Salah |
Null | Status tempat penampung sinyal; nilainya adalah null konstanta |
Int | Nilai numerik jenis bilangan bulat. Misalnya 42 |
Float | Nilai numerik dari jenis float. Misalnya: 2.71828 |
Objek | Memperingatkan kasus penggunaan yang rumit saja. Ini memungkinkan Anda menyematkan daftar jenis pasangan nilai kunci untuk nilai |
Nilai jenis objek didefinisikan sebagai berikut:
[{"key": "myKey1", "value": {"type": "String", "content": "hello world"}},
{"key": "myKey2", "value": {"type": "String", "content": "hi"}}
]
Mengambil Nilai dalam Alur Panggilan
Nilai pengembalian alur alur anak menjadi output aktivitas dari Aktivitas Jalankan Alur. Anda dapat mengambil informasi dengan @activity('Execute Pipeline1').output.pipelineReturnValue.keyName. Kasus penggunaan tidak terbatas. Misalnya, Anda dapat menggunakan
- Nilai int dari alur anak untuk menentukan periode tunggu aktivitas tunggu
- Nilai string untuk menentukan URL untuk aktivitas Web
- Payload nilai ekspresi untuk aktivitas skrip untuk tujuan pengelogan.
Ada dua callout yang terlihat dalam mereferensikan nilai pengembalian alur.
- Dengan Jenis objek , Anda dapat memperluas lebih lanjut ke objek json berlapis, seperti @activity('Execute Pipeline1').output.pipelineReturnValue.keyName.nextLevelKey
- Dengan jenis Array , Anda dapat menentukan indeks dalam daftar, dengan @activity('Execute Pipeline1').output.pipelineReturnValue.keyName[0]. Angkanya nol diindeks, artinya dimulai dengan 0.
Catatan
Pastikan keyName yang Anda rujuk ada di alur anak Anda. Penyusun ekspresi ADF tidak dapat mengonfirmasi pemeriksaan referensial untuk Anda. Alur akan gagal jika kunci yang dirujuk hilang dalam payload
Pertimbangan Khusus
Meskipun Anda dapat menyertakan beberapa aktivitas Atur Nilai Pengembalian Alur dalam alur, penting untuk memastikan bahwa hanya satu dari mereka yang dijalankan dalam alur.
Untuk menghindari situasi kunci yang hilang dalam alur panggilan, dijelaskan di atas, kami mendorong Anda untuk memiliki daftar kunci yang sama untuk semua cabang dalam alur anak. Pertimbangkan untuk menggunakan jenis null untuk kunci yang tidak memiliki nilai, di cabang tertentu.
Konten terkait
Pelajari tentang aktivitas alur kontrol terkait lainnya: