Filteraktivität in Azure Data Factory- und Synapse Analytics-Pipelines

Sie können eine Filter-Aktivität in einer Pipeline verwenden, um einen Filterausdruck auf ein Eingabearray anzuwenden.

GILT FÜR: Azure Data Factory Azure Synapse Analytics

Tipp

Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. Microsoft Fabric deckt alle Aufgaben ab, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!

Syntax

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

Erstellen einer Filter-Aktivität mit der Benutzeroberfläche

Führen Sie die folgenden Schritte aus, um eine Filter-Aktivität in einer Pipeline zu verwenden:

  1. Als Eingabe für Ihre Filterbedingung können Sie eine beliebige Variable des Typs „Array“ oder Ausgaben anderer Aktivitäten verwenden. Wählen Sie zum Erstellen einer Arrayvariablen den Hintergrund der Pipelinecanvas und anschließend die Registerkarte Variablen aus, um wie unten gezeigt eine Arraytypvariable hinzuzufügen.

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

  2. Suchen Sie im Bereich mit den Pipelineaktivitäten nach Filter, und ziehen Sie eine Filter-Aktivität in den Pipelinebereich.

  3. Wählen Sie in diesem Bereich die neue Filter-Aktivität aus (wenn sie nicht bereits ausgewählt ist), und wählen Sie anschließend die Registerkarte Einstellungen aus, um die Details zu bearbeiten.

    Shows the UI for a Filter activity.

  4. Wählen Sie das Feld Elemente und anschließend den Link Dynamischen Inhalt hinzufügen aus, um den Bereich mit dem Editor für dynamische Inhalte zu öffnen.

    Shows the  Add dynamic content  link for the Items property.

  5. Wählen Sie Ihr Eingabearray aus, das im Editor für dynamische Inhalte gefiltert werden soll. In diesem Beispiel wird die im ersten Schritt erstellte Variable ausgewählt.

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

  6. Verwenden Sie den dynamischen Inhalts-Editor erneut, um eine Filterbedingung für die Condition-Eigenschaft anzugeben, wie oben gezeigt.

  7. Sie können die Ausgabe der Filter-Aktivität als Eingabe für andere Aktivitäten wie die ForEach-Aktivität verwenden.

Typeigenschaften

Eigenschaft BESCHREIBUNG Zulässige Werte Erforderlich
name Der Name der Filter-Aktivität. String Ja
type Muss auf filter festgelegt sein. String Ja
condition Die Bedingung zum Filtern der Eingaben. Ausdruck Ja
items Das Eingabearray, auf das der Filter angewendet werden soll. Ausdruck Ja

Beispiel

In diesem Beispiel enthält die Pipeline zwei Aktivitäten: Filter und ForEach. Die Aktivität „Filter“ wird so konfiguriert, dass das Eingabearray für Elemente mit einem Wert größer als 3 gefiltert wird. Die Aktivität ForEach durchläuft anschließend die gefilterten Werte und legt für die Variable test den aktuellen Wert fest.

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

Informationen zu weiteren unterstützten Ablaufsteuerungsaktivitäten: