Dela via


Filtrera aktivitet i Azure Data Factory- och Synapse Analytics-pipelines

Du kan använda en filteraktivitet i en pipeline för att tillämpa ett filteruttryck på en indatamatris.

GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics

Dricks

Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!

Syntax

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

Skapa en filteraktivitet med användargränssnittet

Utför följande steg för att använda en filteraktivitet i en pipeline:

  1. Du kan använda valfri matristypvariabel eller utdata från andra aktiviteter som indata för filtervillkoret. Om du vill skapa en matrisvariabel väljer du bakgrunden för pipelinearbetsytan och väljer sedan fliken Variabler för att lägga till en matristypvariabel enligt nedan.

    Visar en tom pipelinearbetsyta med en matristypvariabel som lagts till i pipelinen.

  2. Sök efter Filter i fönstret Pipelineaktiviteter och dra en filteraktivitet till pipelinearbetsytan.

  3. Välj den nya filteraktiviteten på arbetsytan om den inte redan är markerad och fliken Inställningar för att redigera dess information.

    Visar användargränssnittet för en filteraktivitet.

  4. Välj fältet Objekt och välj sedan länken Lägg till dynamiskt innehåll för att öppna fönstret redigerare för dynamiskt innehåll.

    Visar   Lägg till dynamiskt innehåll  länk för egenskapen Objekt.

  5. Välj den indatamatris som ska filtreras i redigeraren för dynamiskt innehåll. I det här exemplet väljer vi variabeln som skapades i det första steget.

    Visar redigeraren för dynamiskt innehåll med variabeln som skapades i det första steget valt

  6. Använd redigeraren för dynamiskt innehåll igen för att ange ett filtervillkor för egenskapen Villkor, som du ser ovan.

  7. Du kan använda utdata från filteraktiviteten som indata till andra aktiviteter som ForEach-aktiviteten.

Typegenskaper

Property beskrivning Tillåtna värden Obligatoriskt
name Namnet på Filter aktiviteten. String Ja
type Måste anges till filter. String Ja
villkor Villkor som ska användas för att filtrera indata. Uttryck Ja
objekt Indatamatris på vilken filter som ska användas. Uttryck Ja

Exempel

I det här exemplet har pipelinen två aktiviteter: Filter och ForEach. Filteraktiviteten är konfigurerad för att filtrera indatamatrisen för objekt med ett värde större än 3. ForEach-aktiviteten itererar sedan över de filtrerade värdena och anger variabeltestet till det aktuella värdet.

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

Se andra kontrollflödesaktiviteter som stöds: