Referenční metadata triggeru v spuštěních kanálu

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.

Tento článek popisuje, jak se dají při spuštění kanálu použít metadata triggeru, například čas spuštění triggeru.

Kanál někdy potřebuje pochopit a číst metadata z triggeru, který ho vyvolá. Například při spuštění triggeru pro přeskakující okno na základě počátečního a koncového času okna kanál zpracuje různé datové řezy nebo složky. Ve službě Azure Data Factory používáme parametrizaci a systémovou proměnnou k předávání meta dat z triggeru do kanálu.

Tento vzor je užitečný zejména pro aktivační událost pro přeskakující okno, kde trigger poskytuje čas spuštění a ukončení okna a vlastní aktivační událost, kde trigger parsuje a zpracovává hodnoty ve vlastním definovaném datovém poli.

Poznámka:

Různé typy aktivačních událostí poskytují různé informace o meta datech. Další informace naleznete v tématu Systémová proměnná.

Uživatelské rozhraní Data Factory

V této části se dozvíte, jak předat informace o meta datech z triggeru do kanálu v rámci uživatelského rozhraní služby Azure Data Factory.

  1. Přejděte na plátno pro vytváření obsahu a upravte kanál.

  2. Výběrem na prázdném plátně zobrazíte nastavení kanálu. Nevybírejte žádnou aktivitu. Možná budete muset stáhnout panel nastavení ze spodní části plátna, protože byl pravděpodobně sbalený.

  3. Výběr oddílu Parametry a výběr + Nový pro přidání parametrů

    Screen shot of pipeline setting showing how to define parameters in pipeline.

  4. Kliknutím na + Trigger přidejte triggery do kanálu.

  5. Vytvořte nebo připojte trigger ke kanálu a vyberte OK.

  6. Po výběru možnosti OK se zobrazí další stránka Nová aktivační událost se seznamem parametrů zadaných pro kanál, jak je znázorněno na následujícím snímku obrazovky. Na této stránce vyplňte metadata triggeru pro každý parametr. K načtení informací o aktivační události použijte formát definovaný v systémové proměnné . Nemusíte vyplňovat informace pro všechny parametry, jenom ty, které budou předpokládat hodnoty metadat triggeru. Tady například přiřadíme čas spuštění triggeru parameter_1.

    Screenshot of trigger definition page showing how to pass trigger information to pipeline parameters.

  7. Pokud chcete použít hodnoty v kanálu, v definicích kanálu využijte parametry @pipeline().parameters.parameterName, nikoli systémová proměnná. Například v našem případě ke čtení času spuštění triggeru budeme odkazovat @pipeline().parameters.parameter_1.

Schéma JSON

Pokud chcete předat informace o triggeru spuštění kanálu, musí se aktivační událost i json kanálu aktualizovat oddílem parametrů .

Definice kanálu

V části vlastnosti přidejte definice parametrů do oddílu parametrů .

{
    "name": "demo_pipeline",
    "properties": {
        "activities": [
            {
                "name": "demo_activity",
                "type": "WebActivity",
                "dependsOn": [],
                "policy": {
                    "timeout": "7.00:00:00",
                    "retry": 0,
                    "retryIntervalInSeconds": 30,
                    "secureOutput": false,
                    "secureInput": false
                },
                "userProperties": [],
                "typeProperties": {
                    "url": {
                        "value": "@pipeline().parameters.parameter_2",
                        "type": "Expression"
                    },
                    "method": "GET"
                }
            }
        ],
        "parameters": {
            "parameter_1": {
                "type": "string"
            },
            "parameter_2": {
                "type": "string"
            },
            "parameter_3": {
                "type": "string"
            },
            "parameter_4": {
                "type": "string"
            },
            "parameter_5": {
                "type": "string"
            }
        },
        "annotations": [],
        "lastPublishTime": "2021-02-24T03:06:23Z"
    },
    "type": "Microsoft.DataFactory/factories/pipelines"
}

Definice triggeru

V části Kanály přiřaďte hodnoty parametrů v oddílu parametrů . Nemusíte vyplňovat informace pro všechny parametry, jenom ty, které budou předpokládat hodnoty metadat triggeru.

{
    "name": "trigger1",
    "properties": {
        "annotations": [],
        "runtimeState": "Started",
        "pipelines": [
            {
                "pipelineReference": {
                    "referenceName": "demo_pipeline",
                    "type": "PipelineReference"
                },
                "parameters": {
                    "parameter_1": "@trigger().startTime"
                }
            }
        ],
        "type": "ScheduleTrigger",
        "typeProperties": {
            "recurrence": {
                "frequency": "Minute",
                "interval": 15,
                "startTime": "2021-03-03T04:38:00Z",
                "timeZone": "UTC"
            }
        }
    }
}

Použití informací o triggeru v kanálu

Pokud chcete použít hodnoty v kanálu, v definicích kanálu využijte parametry @pipeline().parameters.parameterName, nikoli systémová proměnná.

Podrobné informace o aktivačních událostech najdete v tématu Spouštění kanálů a triggery.