Mengatur Aktivitas Variabel 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!

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:

Screenshot of an empty pipeline canvas with the Variables tab selected with an array type variable named TestVariable.

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

  2. Pilih aktivitas Atur Variabel pada 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.

Screenshot of the UI for a Set variable activity.

Mengatur nilai pengembalian alur dengan UI

Kami telah memperluas aktivitas Atur Variabel untuk menyertakan variabel sistem khusus, bernama Nilai Pengembalian Alur, memungkinkan komunikasi dari alur anak ke alur panggilan, dalam skenario berikut.

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

Screenshot with ExecutePipeline Activity.

Properti jenis

Properti Deskripsi Wajib
nama Nama aktivitas dalam alur yes
description Teks yang menjelaskan apa yang dilakukan aktivitas no
jenis Harus diatur ke SetVariable yes
variableName Nama variabel yang ditetapkan oleh aktivitas ini yes
value Nilai objek string literal atau ekspresi yang ditetapkan variabel yes

Menanyai 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 Set variabel kedua mengatur nilai iterator ke variabel sementara. Berikut adalah contoh pola ini:

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

Screenshot shows defining variables.

  • Kemudian Anda menggunakan dua aktivitas untuk menaikkan nilai

Screenshot shows increment variable.

{
    "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 dilingkup pada tingkat alur. 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: