Bagikan melalui


Atur Aktivitas Variabel di Azure Data Factory dan Azure Synapse Analytics

Azure Data Factory Azure Synapse Analytics

Tips

Data Factory di Microsoft Fabric adalah generasi Azure Data Factory berikutnya, dengan arsitektur yang lebih sederhana, AI bawaan, dan fitur baru. Jika Anda baru menggunakan integrasi data, mulailah dengan Fabric Data Factory. Beban kerja ADF yang ada dapat ditingkatkan ke Fabric untuk mengakses kemampuan baru di seluruh ilmu data, analitik real time, dan pelaporan.

Gunakan aktivitas Atur Variabel untuk mengatur nilai variabel jenis String, Bool, atau Array yang ada yang ditentukan dalam alur Data Factory atau Synapse atau gunakan aktivitas Atur Variabel untuk mengatur nilai pengembalian alur (pratinjau).

Membuat aktivitas Atur Variabel dengan UI

Untuk menggunakan aktivitas Atur Variabel dalam alur, selesaikan langkah-langkah berikut:

  1. Pilih latar belakang kanvas alur dan gunakan tab Variabel untuk menambahkan variabel:

Cuplikan layar kanvas alur kosong dengan tab Variabel dipilih dengan variabel jenis array bernama TestVariable.

  1. Cari Set Variable di panel Aktivitas alur, dan seret aktivitas Atur Variabel ke kanvas alur.

  2. Pilih aktivitas Atur Variabel di kanvas jika belum dipilih, lalu pilih tab Pengaturan untuk mengedit detailnya.

  3. Pilih variabel alur untuk Jenis variabel Anda.

  4. Pilih variabel untuk properti Nama.

  5. Masukkan ekspresi untuk mengatur nilai untuk variabel. Ekspresi ini dapat berupa ekspresi string harfiah, atau kombinasi ekspresi dinamis , fungsi, variabel sistem, atau output dari aktivitas lain.

Cuplikan layar UI untuk aktivitas Atur variabel.

Mengatur nilai pengembalian alur dengan UI

Kami telah memperluas aktivitas Set Variable untuk menyertakan variabel sistem khusus, bernama Nilai Pengembalian Jalur, yang memungkinkan komunikasi dari jalur bawahan ke jalur induk dalam skenario berikut.

Anda tidak perlu menentukan variabel, sebelum menggunakannya. Untuk informasi selengkapnya, lihat Nilai Pengembalian Alur

Cuplikan layar dengan Aktivitas ExecutePipeline.

Jenis properti

Kekayaan Deskripsi Wajib
nama Nama aktivitas dalam alur ya
deskripsi Deskripsi teks yang menjelaskan apa yang dilakukan oleh aktivitas tersebut. tidak
jenis Harus diatur ke SetVariable ya
variableName Nama variabel yang ditetapkan oleh aktivitas ini ya
nilai Nilai objek string literal atau ekspresi yang ditetapkan variabel ya

Menambah variabel

Skenario umum yang melibatkan variabel adalah menggunakan variabel sebagai iterator dalam aktivitas Until atau ForEach . Dalam aktivitas Atur variabel, Anda tidak dapat mereferensikan variabel yang diatur di value bidang , yaitu, tidak ada referensi mandiri. Untuk mengatasi batasan ini, atur variabel sementara lalu buat aktivitas Set variabel kedua. Aktivitas kedua Set variabel mengatur nilai iterator ke variabel sementara. Berikut adalah contoh pola ini:

  • Pertama, Anda menentukan dua variabel: satu untuk iterator, dan satu untuk penyimpanan sementara.

Cuplikan layar menunjukkan pendefinisian variabel.

  • Kemudian Anda menggunakan dua kegiatan untuk meningkatkan nilai

Cuplikan layar memperlihatkan variabel kenaikan.

{
    "name": "pipeline1",
    "properties": {
        "activities": [
            {
                "name": "Increment J",
                "type": "SetVariable",
                "dependsOn": [],
                "policy": {
                    "secureOutput": false,
                    "secureInput": false
                },
                "userProperties": [],
                "typeProperties": {
                    "variableName": "temp_j",
                    "value": {
                        "value": "@add(variables('counter_i'),1)",
                        "type": "Expression"
                    }
                }
            },
            {
                "name": "Set I",
                "type": "SetVariable",
                "dependsOn": [
                    {
                        "activity": "Increment J",
                        "dependencyConditions": [
                            "Succeeded"
                        ]
                    }
                ],
                "policy": {
                    "secureOutput": false,
                    "secureInput": false
                },
                "userProperties": [],
                "typeProperties": {
                    "variableName": "counter_i",
                    "value": {
                        "value": "@variables('temp_j')",
                        "type": "Expression"
                    }
                }
            }
        ],
        "variables": {
            "counter_i": {
                "type": "Integer",
                "defaultValue": 0
            },
            "temp_j": {
                "type": "Integer",
                "defaultValue": 0
            }
        },
        "annotations": []
    }
}

Variabel dicakup pada tingkat pipeline. Ini berarti bahwa mereka tidak aman utas dan dapat menyebabkan perilaku yang tidak terduga dan tidak diinginkan jika diakses dari dalam aktivitas iterasi paralel seperti perulangan ForEach, terutama ketika nilai juga sedang dimodifikasi dalam aktivitas foreach tersebut.

Pelajari tentang aktivitas alur kontrol terkait lainnya: