Memfilter aktivitas di alur Azure Data Factory dan Synapse Analytics

Anda dapat menggunakan aktivitas Filter dalam alur untuk menerapkan ekspresi filter ke array input.

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!

Sintaks

{
    "name": "MyFilterActivity",
    "type": "filter",
    "typeProperties": {
        "condition": "<condition>",
        "items": "<input array>"
    }
}

Membuat aktivitas Filter dengan antarmuka pengguna

Untuk menggunakan aktivitas Filter dalam alur, selesaikan langkah-langkah berikut:

  1. Anda dapat menggunakan variabel jenis larik apa pun atau output dari aktivitas lain sebagai input untuk kondisi filter Anda. Untuk membuat variabel larik, pilih latar belakang kanvas alur, lalu pilih tab Variabel untuk menambahkan variabel jenis larik seperti yang ditunjukkan di bawah ini.

    Shows an empty pipeline canvas with an array type variable added to the pipeline.

  2. Cari Filter di panel Aktivitas alur, dan seret aktivitas Filter ke kanvas alur.

  3. Pilih aktivitas Filter baru di kanvas jika belum dipilih, dan tab Pengaturan, untuk mengedit detail aktivitas.

    Shows the UI for a Filter activity.

  4. Pilih bidang Item lalu pilih tautan Tambahkan konten dinamis untuk membuka panel penyunting konten dinamis.

    Shows the  Add dynamic content  link for the Items property.

  5. Pilih larik input Anda yang akan difilter di editor konten dinamis. Dalam contoh ini, kita memilih variabel yang dibuat pada langkah pertama.

    Shows the dynamic content editor with the variable created in the first step selected

  6. Gunakan penyunting konten dinamis lagi untuk menentukan kondisi filter untuk properti Kondisi, seperti yang ditunjukkan di atas.

  7. Anda dapat menggunakan output dari aktivitas Filter sebagai input untuk aktivitas lain seperti aktivitas ForEach.

Properti jenis

Properti Deskripsi Nilai yang diizinkan Wajib
nama Nama Filteraktivitas. String Ya
jenis Harus diatur ke filter. String Ya
kondisi Kondisi yang akan digunakan untuk memfilter input. Expression Ya
item Array input di mana filter harus diterapkan. Expression Ya

Contoh

Dalam contoh ini, alur memiliki dua aktivitas: Filter dan ForEach. Aktivitas Filter dikonfigurasi untuk memfilter array input untuk item dengan nilai yang lebih besar dari 3. Aktivitas ForEach kemudian melakukan iterasi pada nilai yang difilter dan mengatur pengujian variabel ke nilai saat ini.

{
    "name": "PipelineName",
    "properties": {
        "activities": [{
                "name": "MyFilterActivity",
                "type": "filter",
                "typeProperties": {
                    "condition": "@greater(item(),3)",
                    "items": "@pipeline().parameters.inputs"
                }
            },
            {
            "name": "MyForEach",
            "type": "ForEach",
            "dependsOn": [
                {
                    "activity": "MyFilterActivity",
                    "dependencyConditions": [
                        "Succeeded"
                    ]
                }
            ],
            "userProperties": [],
            "typeProperties": {
                "items": {
                    "value": "@activity('MyFilterActivity').output.value",
                    "type": "Expression"
                },
                "isSequential": "false",
                "batchCount": 1,
                "activities": [
                    {
                        "name": "Set Variable1",
                        "type": "SetVariable",
                        "dependsOn": [],
                        "userProperties": [],
                        "typeProperties": {
                            "variableName": "test",
                            "value": {
                                "value": "@string(item())",
                                "type": "Expression"
                            }
                        }
                    }
                ]
            }
        }],
        "parameters": {
            "inputs": {
                "type": "Array",
                "defaultValue": [1, 2, 3, 4, 5, 6]
            }
        },
        "variables": {
            "test": {
                "type": "String"
            }
        },
        "annotations": []
    }
}

Lihat aktivitas alur kontrol yang didukung lainnya: