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.
Panduan ini menunjukkan kepada Anda cara menggunakan parameter di alur Data Factory Anda di Fabric. Ini adalah cara sederhana untuk membuat alur kerja Anda lebih fleksibel dan lebih mudah dikelola.
Cara menggunakan parameter, ekspresi, dan fungsi dalam alur untuk Data Factory di Fabric
Panduan ini memandu Anda melalui dasar-dasar pembuatan alur berparameter di Data Factory for Fabric, menggunakan contoh yang jelas di sepanjang jalan. Dengan menggunakan parameter dan ekspresi dinamis, Anda dapat menghemat banyak waktu dan membangun solusi ETL yang fleksibel (Ekstrak, Transformasi, Muat) atau ELT (Ekstrak, Muat, Transformasi). Teknik ini mengurangi pengodean keras dan membantu Anda menggunakan kembali objek dan proses, yang membuatnya lebih mudah untuk mempertahankan alur Anda dan meluncurkan fitur baru lebih cepat.
Konsep parameter dan ekspresi
Anda dapat menggunakan parameter untuk meneruskan nilai eksternal ke pipeline Anda. Setelah parameter diatur, parameter tetap sama sepanjang proses dan tidak dapat diubah. Dengan menggunakan parameter, Anda dapat menggunakan kembali alur yang sama dengan nilai yang berbeda setiap kali. Mereka dapat digunakan sendiri atau di dalam ekspresi, dan nilai-nilai tersebut dapat bersifat tetap atau dihitung saat pipeline berjalan.
Ekspresi dapat ditempatkan di mana saja dalam nilai string dan selalu mengembalikan nilai string lain. Misalnya, jika Anda menggunakan @password, alur memperlakukan kata sandi sebagai parameter. Jika nilainya adalah ekspresi, cukup hapus @ untuk mendapatkan konten aktual. Dan jika Anda memerlukan string yang dimulai dengan @, cukup lepaskan dengan mengetik @@. Di bawah ini adalah beberapa contoh untuk menunjukkan cara kerjanya dalam praktik.
| Nilai parameter | Result |
|---|---|
| "parameters" | Karakter 'parameter' dikembalikan. |
| "parameters[1]" | Karakter 'parameter[1]' dikembalikan. |
| "@@" | String 1 karakter yang berisi '@' dikembalikan. |
| " @" | String 2 karakter yang berisi ' @' dikembalikan. |
Ekspresi juga dapat muncul di dalam string, menggunakan fitur yang disebut interpolasi string di mana ekspresi dibungkus dalam @{ ... }. Misalnya, string berikut menyertakan nilai parameter dan nilai string harfiah:
"Nama Depan: @{pipeline().parameters.firstName} Nama Belakang: @{pipeline().parameters.lastName}"
Menggunakan interpolasi string, hasilnya selalu merupakan string. Misalnya, jika Anda menentukan myNumber sebagai 42 dan myString sebagai foo:
| Nilai parameter | Result |
|---|---|
| "@pipeline().parameters.myString" | Mengembalikan foo sebagai string. |
| "@{pipeline().parameters.myString}" | Mengembalikan foo sebagai string. |
| "@pipeline().parameters.myNumber" | Mengembalikan 42 sebagai angka . |
| "@{pipeline().parameters.myNumber}" | Mengembalikan 42 sebagai string . |
| "Jawabannya adalah: @{pipeline().parameters.myNumber}" | Mengembalikan string Answer is: 42. |
| "@concat('Jawabannya adalah: ', string(pipeline().parameters.myNumber))" | Mengembalikan string Answer is: 42 |
| "Jawabannya adalah: @@{pipeline().parameters.myNumber}" | Mengembalikan string Answer is: @{pipeline().parameters.myNumber}. |
Contoh penggunaan parameter dalam ekspresi
Membuat dan menggunakan parameter
Untuk membuat parameter, pilih latar belakang kanvas editor alur kerja, lalu tab Parameter di jendela properti yang terletak di bagian bawah. Pilih tombol + New untuk menambahkan parameter baru ke alur, beri nama, jenis data, dan nilai default:
Anda kemudian dapat menggunakan parameter di mana saja di alur Anda di mana konten dinamis didukung. Dalam contoh ini, parameter digunakan untuk secara dinamis memberikan nama penyimpanan data Lakehouse di tab Sumber halaman properti aktivitas salin.
Jendela Tambahkan konten dinamis ditampilkan, memungkinkan Anda menentukan segala jenis konten dinamis, termasuk parameter, variabel sistem , fungsi , atau variabel alur. Dalam contoh ini, parameter yang ditentukan sebelumnya dipilih, dan jendela konten dinamis secara otomatis diisi dengan ekspresi yang benar untuk mereferensikan parameter.
Cara memparametrisasi koneksi
Mengparametrisasi koneksi dalam jalur pemrosesan memerlukan penggunaan GUID koneksi yang ingin Anda ganti secara dinamis.
- Sebelum Anda dapat mengubah koneksi secara dinamis di alur kerja Anda, Anda harus mendapatkan GUID untuk koneksi yang ingin Anda atur
- Buka Pengaturan | Mengelola koneksi dan gateway
- Temukan nama koneksi dan klik elipsis di samping nama koneksi
- Pilih Pengaturan dan salin ID Koneksi
- Gunakan parameter string untuk menempelkan GUID dalam parameter tersebut untuk digunakan dalam ekspresi dinamis Anda
Contoh ekspresi kompleks
Contoh berikut menunjukkan contoh kompleks yang mereferensikan subbidang mendalam output aktivitas. Untuk mereferensikan parameter alur yang mengevaluasi ke subbidang, gunakan sintaks [] alih-alih operator dot(.) (seperti halnya subfield1 dan subfield2)
@activity('*activityName*').output.*subfield1*.*subfield2*[pipeline().parameters.*subfield3*].*subfield4*
Editor konten dinamis
Editor konten dinamis secara otomatis meloloskan karakter dalam konten Anda saat Anda selesai mengedit. Misalnya, konten berikut di editor konten adalah interpolasi string dengan fungsi ekspresi:
@{toUpper('myData')}
Editor konten dinamis mengonversi konten sebelumnya ke ekspresi berikut:
MYDATA
Menggunakan fungsi dan variabel dalam ekspresi
Anda dapat memanggil fungsi dan menggunakan variabel dalam ekspresi. Bagian berikut ini menyediakan informasi tentang fungsi yang dapat digunakan dalam ekspresi.
Variabel cakupan dalam jalur proses
Variabel sistem ini dapat dirujuk di mana saja dalam alur JSON.
| Nama Variabel | Description |
|---|---|
| @pipeline().DataFactory | Nama data atau ruang kerja Synapse tempat alur dijalankan |
| @pipeline().Pipeline | Nama jalur |
| @pipeline().RunId | ID jalannya pipeline tertentu |
| @pipeline().TriggerId | ID pemicu yang mengaktifkan pipeline |
| @pipeline().TriggerName | Nama pemicu yang memanggil alur |
| @pipeline().TriggerTime | Waktu eksekusi pemicu yang menjalankan pipeline. Ini adalah waktu di mana pemicu benar-benar dijalankan untuk memanggil pelaksanaan pipeline, dan waktu ini mungkin sedikit berbeda dari waktu yang telah dijadwalkan untuk pemicu tersebut. |
| @pipeline().GroupId | ID grup tempat jalur pipa dieksekusi. Di Microsoft Fabric, 'grup' mengacu pada kumpulan sumber daya terkait yang dapat dikelola bersama- sama. Grup digunakan untuk mengatur dan mengontrol akses ke sumber daya, sehingga lebih mudah untuk mengelola izin dan memantau aktivitas di beberapa alur. |
| @pipeline()?.TriggeredByPipelineName | Nama pipeline yang memicu jalannya pipeline. Berlaku saat alur kerja pipeline dipicu oleh aktivitas *ExecutePipeline*. Evaluasi ke Null ketika digunakan dalam situasi lain. Perhatikan tanda tanya setelah @pipeline() |
| @pipeline()?.TriggeredByPipelineRunId | ID eksekusi dari pipeline yang memicu jalannya pipeline. Berlaku saat alur kerja pipeline dipicu oleh aktivitas *ExecutePipeline*. Evaluasi ke Null ketika digunakan dalam situasi lain. Perhatikan tanda tanya setelah @pipeline() |
Note
Variabel sistem tanggal/waktu terkait pemicu (dalam lingkup alur dan pemicu) mengembalikan tanggal UTC dalam format ISO 8601, misalnya, 2017-06-01T22:20:00.4061448Z.
Fungsi String
Untuk bekerja dengan string, Anda dapat menggunakan fungsi string ini dan juga beberapa fungsi pengumpulan . Fungsi string hanya berfungsi pada string.
| Fungsi string | Task |
|---|---|
| concat | Gabungkan dua string atau lebih, dan kembalikan string gabungan. |
| endsWith | Periksa apakah string berakhir dengan substring yang ditentukan. |
| guid | Buat pengidentifikasi unik global (GUID) sebagai string. |
| indexOf | Mengembalikan posisi awal untuk substring teks. |
| lastIndexOf | Mengembalikan posisi awal untuk kemunculan terakhir dari sebuah substring. |
| replace | Ganti substring dengan string yang ditentukan, dan kembalikan string yang diperbarui. |
| split | Mengembalikan array yang berisi substring, dipisahkan oleh koma, dari string yang lebih besar berdasarkan karakter pemisah tertentu dalam string asli. |
| startsWith | Periksa apakah string dimulai dengan substring tertentu. |
| substring | Mengembalikan karakter dari string, dimulai dari posisi yang ditentukan. |
| toLower | Mengembalikan string dalam format huruf kecil. |
| toUpper | Mengembalikan string dalam format huruf besar. |
| trim | Hapus spasi putih di awal dan akhir dari string, dan kembalikan string yang diperbarui. |
Fungsi pengumpulan
Untuk bekerja dengan koleksi, umumnya array, string, dan terkadang, kamus, Anda dapat menggunakan fungsi koleksi ini.
| Fungsi koleksi | Task |
|---|---|
| contains | Periksa apakah koleksi memiliki item tertentu. |
| empty | Periksa apakah koleksi kosong. |
| first | Mengembalikan item pertama dari koleksi. |
| intersection | Mengembalikan koleksi yang memiliki hanya item umum di seluruh koleksi yang ditentukan. |
| join | Mengembalikan string berisi semua elemen dari array, dipisahkan oleh karakter yang ditentukan. |
| last | Mengembalikan item terakhir dari koleksi. |
| length | Mengembalikan jumlah item dalam string atau array. |
| skip | Hapus item dari depan koleksi, dan kembalikan semua item lainnya. |
| take | Mengembalikan item dari depan koleksi. |
| union | Mengembalikan koleksi yang memiliki semua item dari koleksi yang ditentukan. |
Fungsi logika
Fungsi-fungsi ini berguna dalam kondisi, mereka dapat digunakan untuk mengevaluasi semua jenis logika.
| Fungsi perbandingan logis | Task |
|---|---|
| and | Periksa apakah semua ekspresi benar. |
| equals | Periksa apakah kedua nilai tersebut setara. |
| greater | Periksa apakah nilai pertama lebih besar dari nilai kedua. |
| greaterOrEquals | Periksa apakah nilai pertama lebih besar dari atau sama dengan nilai kedua. |
| if | Periksa apakah ekspresi benar atau salah. Berdasarkan hasilnya, kembalikan nilai yang ditentukan. |
| less | Periksa apakah nilai pertama kurang dari nilai kedua. |
| lessOrEquals | Periksa apakah nilai pertama kurang dari atau sama dengan nilai kedua. |
| not | Periksa apakah ekspresi salah. |
| or | Periksa apakah setidaknya satu ekspresi benar. |
Fungsi konversi
Fungsi-fungsi ini digunakan untuk mengonversi antara masing-masing jenis asli dalam bahasa:
- string
- integer
- float
- boolean
- arrays
- dictionaries
| Fungsi konversi | Task |
|---|---|
| array | Mengembalikan array dari satu input yang ditentukan. Untuk beberapa input, lihat createArray. |
| base64 | Mengembalikan versi yang dikodekan base64 untuk string. |
| base64ToBinary | Mengembalikan versi biner untuk string yang dikodekan base64. |
| base64ToString | Mengembalikan versi string untuk string yang dikodekan base64. |
| binary | Kembalikan representasi biner dari nilai input. |
| bool | Mengembalikan versi Boolean untuk nilai input. |
| coalesce | Mengembalikan nilai non-null pertama dari satu atau beberapa parameter. |
| createArray | Hasilkan array dari berbagai input. |
| dataUri | Mengembalikan URI data untuk nilai input. |
| dataUriToBinary | Mengembalikan versi biner untuk URI data. |
| dataUriToString | Mengembalikan versi string untuk URI data. |
| decodeBase64 | Mengembalikan versi string untuk string yang dikodekan base64. |
| decodeDataUri | Mengembalikan versi biner untuk URI data. |
| decodeUriComponent | Mengembalikan string yang menggantikan karakter escape dengan versi yang didekodekan. |
| encodeUriComponent | Kembalikan string yang mengganti karakter tidak aman pada URL dengan karakter pelolosan. |
| float | Mengembalikan bilangan titik mengambang untuk nilai input. |
| int | Mengembalikan versi bilangan bulat untuk string. |
| json | Mengembalikan nilai atau objek jenis JavaScript Object Notation (JSON) untuk string atau XML. |
| string | Mengembalikan versi string untuk nilai input. |
| uriComponent | Mengembalikan versi yang dikodekan URI untuk nilai input dengan mengganti karakter URL yang tidak aman dengan karakter escape. |
| uriComponentToBinary | Mengembalikan versi biner untuk string yang dikodekan URI. |
| uriComponentToString | Mengembalikan versi string untuk string yang dikodekan URI. |
| xml | Mengembalikan versi XML untuk sebuah string. |
| xpath | Periksa XML untuk simpul atau nilai yang cocok dengan ekspresi XPath (Bahasa Jalur XML), dan kembalikan simpul atau nilai yang cocok. |
Fungsi matematika
Fungsi-fungsi ini dapat digunakan untuk salah satu jenis angka: bilangan bulat dan float .
| Fungsi matematika | Task |
|---|---|
| add | Mengembalikan hasil dari menambahkan dua angka. |
| div | Mengembalikan hasil dari pembagian dua angka. |
| max | Mengembalikan nilai tertinggi dari sekumpulan angka atau array. |
| min | Mengembalikan nilai terendah dari sekumpulan angka atau array. |
| mod | Mengembalikan sisa dari pembagian dua bilangan. |
| mul | Mengembalikan hasil dari perkalian dua angka. |
| rand | Mengembalikan bilangan bulat acak dari rentang tertentu. |
| range | Mengembalikan array bilangan bulat yang dimulai dari bilangan bulat tertentu. |
| sub | Mengembalikan hasil dari mengurangi angka kedua dari angka pertama. |
Fungsi tanggal
| Fungsi tanggal atau waktu | Task |
|---|---|
| addDays | Tambahkan sejumlah hari ke tanda waktu. |
| addHours | Tambahkan sejumlah jam ke tanda waktu. |
| addMinutes | Tambahkan sejumlah menit ke tanda waktu. |
| addSeconds | Tambahkan sejumlah detik ke tanda waktu. |
| addToTime | Tambahkan sejumlah unit waktu ke tanda waktu. Lihat juga getFutureTime. |
| convertFromUtc | Mengonversi tanda waktu dari Universal Time Coordinated (UTC) ke zona waktu target. |
| convertTimeZone | Konversi tanda waktu dari zona waktu sumber ke zona waktu target. |
| convertToUtc | Mengonversi tanda waktu dari zona waktu sumber ke Universal Time Coordinated (UTC). |
| dayOfMonth | Mengembalikan komponen hari dari bulan berdasarkan cap waktu. |
| dayOfWeek | Mengembalikan komponen hari dalam seminggu dari tanda waktu. |
| dayOfYear | Mengembalikan komponen hari dalam setahun dari tanda waktu. |
| formatDateTime | Mengembalikan tanda waktu sebagai string dalam format opsional. |
| getFutureTime | Mengembalikan tanda waktu saat ini ditambah unit waktu yang ditentukan. Lihat juga addToTime. |
| getPastTime | Mengembalikan tanda waktu saat ini dikurangi unit waktu yang ditentukan. Lihat juga subtractFromTime. |
| startOfDay | Mengembalikan awal hari untuk tanda waktu. |
| startOfHour | Mengembalikan awal jam untuk tanda waktu. |
| startOfMonth | Mengembalikan awal bulan untuk cap waktu. |
| subtractFromTime | Kurangi sejumlah unit waktu dari tanda waktu. Lihat juga getPastTime. |
| ticks | Mengembalikan nilai properti ticks untuk tanda waktu tertentu. |
| utcNow | Mengembalikan tanda waktu saat ini sebagai string. |