Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
BERLAKU UNTUK: Azure Data Factory
Azure Synapse Analytics
Tips
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 panggilan-alur anak, Anda dapat menggunakan aktivitas Set 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 Pipeline 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 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 pipeline 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 (4 MB).
Ada beberapa opsi untuk jenis nilai, termasuk
Nama Jenis | Deskripsi |
---|---|
String | Nilai string konstanta. misalnya: 'ADF luar biasa' |
Ekspresi | 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 |
Mengapung | Nilai numerik bertipe float. Misalnya: 2.71828 |
Objek | Peringatan hanya untuk kasus penggunaan yang rumit. 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 Jalur Panggilan
Nilai pengembalian alur anak menjadi output aktivitas dari Aktivitas Eksekusi 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 pada aktivitas tunggu.
- Nilai string untuk menentukan URL untuk Aktivitas Web.
- Nilai ekspresi payload untuk aktivitas skrip untuk tujuan pencatatan.
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]. Nomor tersebut diindeks mulai dari nol, artinya dimulai dengan 0.
Catatan
Pastikan bahwa keyName yang Anda rujuk ada di pipeline turunan Anda. Penyusun ekspresi ADF tidak dapat mengonfirmasi pemeriksaan rujukan untuk Anda. Pipeline akan gagal jika kunci yang dirujuk hilang di dalam payload
Pertimbangan Khusus
Meskipun Anda dapat menyertakan beberapa aktivitas Mengatur Nilai Pengembalian Pipeline dalam pipeline, penting untuk memastikan bahwa hanya satu saja yang dieksekusi dalam pipeline.
Untuk menghindari masalah kunci yang hilang yang dijelaskan sebelumnya saat alur panggilan, 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.
Bahasa ekspresi Azure Data Factory tidak secara langsung mendukung objek JSON sebaris. Sebaliknya, perlu untuk menggabungkan string dan ekspresi dengan tepat.
Misalnya, untuk ekspresi JSON berikut:
{ "datetime": "@{utcnow()}", "date": "@{substring(utcnow(),0,10)}", "year": "@{substring(utcnow(),0,4)}", "month": "@{substring(utcnow(),5,2)}", "day": "@{substring(utcnow(),8,2)}" }
Ekspresi Azure Data Factory yang setara adalah:
@{ concat( '{', '"datetime": "', utcnow(), '", ', '"date": "', substring(utcnow(),0,10), '", ', '"year": "', substring(utcnow(),0,4), '", ', '"month": "', substring(utcnow(),5,2), '", ', '"day": "', substring(utcnow(),8,2), '"', '}' ) }
Konten terkait
Pelajari tentang aktivitas alur kontrol terkait lainnya: