Filtrování aktivit v kanálech Azure Data Factory a Synapse Analytics

Aktivitu filtru v kanálu můžete použít k použití výrazu filtru na vstupní pole.

PLATÍ PRO: Azure Data Factory Azure Synapse Analytics

Tip

Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.

Syntaxe

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

Vytvoření aktivity filtru pomocí uživatelského rozhraní

Pokud chcete v kanálu použít aktivitu filtru, proveďte následující kroky:

  1. Jako vstup pro podmínku filtru můžete použít libovolnou proměnnou typu pole nebo výstupy z jiných aktivit . Pokud chcete vytvořit maticovou proměnnou, vyberte pozadí plátna kanálu a pak výběrem karty Proměnné přidejte proměnnou typu pole, jak je znázorněno níže.

    Zobrazuje prázdné plátno kanálu s proměnnou typu pole přidanou do kanálu.

  2. Vyhledejte filtr v podokně Aktivity kanálu a přetáhněte aktivitu filtru na plátno kanálu.

  3. Vyberte novou aktivitu filtru na plátně, pokud ještě není vybraná, a její kartu Nastavení a upravte podrobnosti.

    Zobrazuje uživatelské rozhraní pro aktivitu filtru.

  4. Vyberte pole Položky a pak výběrem odkazu Přidat dynamický obsah otevřete podokno editoru dynamického obsahu.

    Zobrazuje   Přidat dynamický obsah  odkaz pro vlastnost Items.

  5. Vyberte vstupní pole, které chcete filtrovat v editoru dynamického obsahu. V tomto příkladu vybereme proměnnou vytvořenou v prvním kroku.

    Zobrazuje editor dynamického obsahu s proměnnou vytvořenou v prvním kroku.

  6. Pomocí editoru dynamického obsahu znovu zadejte podmínku filtru pro vlastnost Podmínka, jak je znázorněno výše.

  7. Výstup z aktivity Filtru můžete použít jako vstup do jiných aktivit, jako je aktivita ForEach.

Vlastnosti typu

Vlastnost Popis Povolené hodnoty Požaduje se
name Filter Název aktivity. String Ano
type Musí být nastaveno na filtrování. String Ano
condition Podmínka, která se má použít k filtrování vstupu. Výraz Ano
položky Vstupní pole, pro které má být použit filtr. Výraz Ano

Příklad

V tomto příkladu má kanál dvě aktivity: Filter a ForEach. Aktivita filtru je nakonfigurovaná tak, aby filtrovala vstupní pole pro položky s hodnotou větší než 3. Aktivita ForEach pak iteruje filtrované hodnoty a nastaví test proměnné na aktuální hodnotu.

{
    "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": []
    }
}

Projděte si další podporované aktivity toku řízení: