Nastavení aktivity proměnných ve službě Azure Data Factory a Azure Synapse Analytics
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.
Pomocí aktivity Nastavit proměnnou můžete nastavit hodnotu existující proměnné typu String, Bool nebo Array definované v kanálu Data Factory nebo Synapse nebo použít aktivitu Nastavit proměnnou k nastavení návratové hodnoty kanálu (Preview).
Vytvoření aktivity Nastavit proměnnou pomocí uživatelského rozhraní
Pokud chcete v kanálu použít aktivitu Nastavit proměnnou, proveďte následující kroky:
- Vyberte pozadí plátna kanálu a pomocí karty Proměnné přidejte proměnnou:
Vyhledejte v podokně Aktivity kanálu proměnnou a přetáhněte aktivitu Nastavit proměnnou na plátno kanálu.
Vyberte aktivitu Nastavit proměnnou na plátně, pokud ještě není vybraná, a pak výběrem karty Nastavení upravte podrobnosti.
Jako typ proměnné vyberte proměnnou kanálu.
Vyberte proměnnou pro vlastnost Name.
Zadejte výraz, který nastaví hodnotu proměnných. Tento výraz může být literálový řetězcový výraz nebo libovolná kombinace dynamických výrazů, funkcí, systémových proměnných nebo výstupů z jiných aktivit.
Nastavení návratové hodnoty kanálu pomocí uživatelského rozhraní
Rozšířili jsme aktivitu Nastavit proměnnou tak, aby zahrnovala speciální systémovou proměnnou s názvem Hodnota vrácení kanálu, která umožňuje komunikaci z podřízeného kanálu do volajícího kanálu v následujícím scénáři.
Před použitím proměnné ji nemusíte definovat. Další informace najdete v tématu Návratová hodnota kanálu.
Vlastnosti typu
Vlastnost | Popis | Povinní účastníci |
---|---|---|
name | Název aktivity v kanálu | ano |
description | Text popisující, co aktivita dělá | ne |
type | Musí být nastavená na SetVariable. | ano |
variableName | Název proměnné, která je nastavena touto aktivitou | ano |
hodnota | Řetězcový literál nebo hodnota objektu výrazu, ke které je proměnná přiřazena | ano |
Zvýšení proměnné
Běžným scénářem zahrnujícím proměnnou je použití proměnné jako iterátoru v rámci aktivity Until nebo ForEach . V aktivitě Nastavit proměnnou nemůžete odkazovat na proměnnou, která se nastavuje v value
poli, tj. bez odkazování na sebe. Pokud chcete toto omezení obejít, nastavte dočasnou proměnnou a pak vytvořte druhou aktivitu set proměnných . Druhá aktivita nastavit proměnnou nastaví hodnotu iterátoru na dočasnou proměnnou. Tady je příklad tohoto vzoru:
- Nejprve definujete dvě proměnné: jednu pro iterátor a jednu pro dočasné úložiště.
- Pak pomocí dvou aktivit zvýšíte hodnoty.
{
"name": "pipeline1",
"properties": {
"activities": [
{
"name": "Increment J",
"type": "SetVariable",
"dependsOn": [],
"policy": {
"secureOutput": false,
"secureInput": false
},
"userProperties": [],
"typeProperties": {
"variableName": "temp_j",
"value": {
"value": "@add(variables('counter_i'),1)",
"type": "Expression"
}
}
},
{
"name": "Set I",
"type": "SetVariable",
"dependsOn": [
{
"activity": "Increment J",
"dependencyConditions": [
"Succeeded"
]
}
],
"policy": {
"secureOutput": false,
"secureInput": false
},
"userProperties": [],
"typeProperties": {
"variableName": "counter_i",
"value": {
"value": "@variables('temp_j')",
"type": "Expression"
}
}
}
],
"variables": {
"counter_i": {
"type": "Integer",
"defaultValue": 0
},
"temp_j": {
"type": "Integer",
"defaultValue": 0
}
},
"annotations": []
}
}
Proměnné jsou vymezeny na úrovni kanálu. To znamená, že nejsou bezpečné z více vláken a můžou způsobit neočekávané a nežádoucí chování, pokud se k nim přistupuje z aktivity paralelní iterace, jako je smyčka ForEach, zejména v případě, že se hodnota v rámci této aktivity foreach upravuje.
Související obsah
Další informace o další související aktivitě toku řízení: