Działanie filtrowania w potokach usług Azure Data Factory i Synapse Analytics

Możesz użyć działania Filtr w potoku, aby zastosować wyrażenie filtru do tablicy wejściowej.

DOTYCZY: Azure Data Factory Azure Synapse Analytics

Napiwek

Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !

Składnia

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

Tworzenie działania Filtrowanie za pomocą interfejsu użytkownika

Aby użyć działania Filtr w potoku, wykonaj następujące kroki:

  1. Możesz użyć dowolnej zmiennej typu tablicy lub danych wyjściowych z innych działań jako danych wejściowych warunku filtru. Aby utworzyć zmienną tablicową, wybierz tło kanwy potoku, a następnie wybierz kartę Zmienne , aby dodać zmienną typu tablicy, jak pokazano poniżej.

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

  2. Wyszukaj pozycję Filtr w okienku Działania potoku i przeciągnij działanie Filtr do kanwy potoku.

  3. Wybierz nowe działanie Filtr na kanwie, jeśli nie zostało jeszcze wybrane, a karta Ustawienia, aby edytować jego szczegóły.

    Shows the UI for a Filter activity.

  4. Wybierz pole Elementy, a następnie wybierz link Dodaj zawartość dynamiczną, aby otworzyć okienko edytora zawartości dynamicznej.

    Shows the  Add dynamic content  link for the Items property.

  5. Wybierz tablicę wejściową, która ma być filtrowana w edytorze zawartości dynamicznej. W tym przykładzie wybieramy zmienną utworzoną w pierwszym kroku.

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

  6. Ponownie użyj edytora zawartości dynamicznej, aby określić warunek filtru dla właściwości Warunek, jak pokazano powyżej.

  7. Możesz użyć danych wyjściowych z działania Filter jako danych wejściowych do innych działań, takich jak działanie ForEach.

Właściwości typu

Właściwości opis Dozwolone wartości Wymagania
name Filter Nazwa działania. String Tak
type Musi być ustawiona na filtr. String Tak
condition Warunek, który ma być używany do filtrowania danych wejściowych. Expression Tak
elementy Tablica wejściowa, w której należy zastosować filtr. Expression Tak

Przykład

W tym przykładzie potok ma dwa działania: Filter i ForEach. Działanie Filtr jest skonfigurowane do filtrowania tablicy wejściowej dla elementów o wartości większej niż 3. Działanie ForEach następnie iteruje przefiltrowane wartości i ustawia test zmiennej na bieżącą wartość.

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

Zobacz inne obsługiwane działania przepływu sterowania: