Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
PLATÍ PRO:
Azure Data Factory
Azure Synapse Analytics
Doporučení
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 datovou vědu, 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.
Provedení datového kanálu ve službách Azure Data Factory a Azure Synapse definuje instanci provedení datového kanálu. Například si představte, že máte pipeline, který se spouští v 8:00, 9:00 a 10:00. V tomto případě existují tři samostatné běhy kanálu. Každé spuštění pipeline má jedinečný identifikátor spuštění. Identifikátor spuštění GUID jedinečným způsobem definuje konkrétní spuštění pipeline.
Spuštění pipeliny se obvykle vytvářejí předáním argumentů parametrům, které definujete v pipeline. Potrubí můžete spustit ručně nebo prostřednictvím trigger. Tento článek obsahuje podrobnosti o obou způsobech spuštění kanálu.
Vytváření triggerů pomocí uživatelského rozhraní
Pokud chcete potrubí aktivovat ručně nebo nakonfigurovat nový naplánovaný, sestupný časový interval, úložnou událost nebo spoušť vlastní události, vyberte v horní části editoru potrubí možnost Přidat spoušť.
Pokud se rozhodnete spustit pipeline ručně, spustí se okamžitě. Jinak pokud zvolíte Možnost Nový nebo Upravit, zobrazí se výzva s oknem pro přidání triggerů, abyste zvolili existující aktivační událost, kterou chcete upravit, nebo vytvořte novou aktivační událost.
Zobrazí se okno konfigurace triggeru, které vám umožní zvolit typ triggeru.
Přečtěte si další informace o naplánovaných, překlápěcích oknech, událostech úložiště a vlastních událostech níže.
Ruční spuštění
Ruční spuštění datového toku se označuje také jako spuštění na vyžádání.
Předpokládejme například, že máte základní kanál copyPipeline, který chcete spustit. Tento kanál obsahuje jednu aktivitu, která provádí kopírování ze zdrojové složky v úložišti objektů blob v Azure do cílové složky ve stejném úložišti. Následující definice JSON ukazuje tento ukázkový kanál:
{
"name": "copyPipeline",
"properties": {
"activities": [
{
"type": "Copy",
"typeProperties": {
"source": {
"type": "BlobSource"
},
"sink": {
"type": "BlobSink"
}
},
"name": "CopyBlobtoBlob",
"inputs": [
{
"referenceName": "sourceBlobDataset",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "sinkBlobDataset",
"type": "DatasetReference"
}
]
}
],
"parameters": {
"sourceBlobContainer": {
"type": "String"
},
"sinkBlobContainer": {
"type": "String"
}
}
}
}
V definici JSON přijímá kanál dva parametry: sourceBlobContainer a sinkBlobContainer. Do těchto parametrů za běhu předáváte hodnoty.
Ruční spouštění s jinými rozhraními API nebo sadami SDK
Potrubí můžete ručně spustit některým z následujících způsobů:
- .NET SDK
- Modul Azure PowerShell
- REST API
- Python SDK
.NET SDK
Následující ukázkové volání ukazuje, jak ručně spustit pipeline pomocí sady .NET SDK:
client.Pipelines.CreateRunWithHttpMessagesAsync(resourceGroup, dataFactoryName, pipelineName, parameters)
Úplnou ukázku najdete v tématu Rychlý start: Vytvoření datové továrny pomocí sady .NET SDK.
Poznámka:
Sadu .NET SDK můžete použít k vyvolání kanálů ze služby Azure Functions, z webových služeb atd.
Azure PowerShell
Poznámka:
Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Následující ukázkový příkaz ukazuje, jak ručně spustit váš datový tok pomocí Azure PowerShellu.
Invoke-AzDataFactoryV2Pipeline -DataFactory $df -PipelineName "Adfv2QuickStartPipeline" -ParameterFile .\PipelineParameters.json -ResourceGroupName "myResourceGroup"
Parametry předáváte v těle datové části požadavku. V .NET SDK, Azure PowerShell a Python SDK předáváte hodnoty ve slovníku, který se předává jako argument při volání.
{
"sourceBlobContainer": "MySourceFolder",
"sinkBlobContainer": "MySinkFolder"
}
Datová část odpovědi je jedinečný identifikátor běhu potrubí.
{
"runId": "0448d45a-a0bd-23f3-90a5-bfeea9264aed"
}
Úplnou ukázku najdete v tématu Rychlý start: Vytvoření datové továrny pomocí Azure Powershellu.
Python SDK
Kompletní ukázku najdete v tématu Rychlý start: Vytvoření datové továrny a kanálu pomocí Pythonu
REST API
Následující ukázkový příkaz ukazuje, jak ručně spustit váš kanál pomocí rozhraní REST API:
POST
https://management.azure.com/subscriptions/mySubId/resourceGroups/myResourceGroup/providers/Microsoft.DataFactory/factories/myDataFactory/pipelines/copyPipeline/createRun?api-version=2017-03-01-preview
Úplnou ukázku najdete v tématu Rychlý start: Vytvoření datové továrny pomocí rozhraní REST API.
Typy aktivačních událostí
Spouštěče jsou další způsob, jak můžete provést spuštění piplayny. Aktivační události představují jednotku zpracování, která určuje, kdy má být zahájeno spouštění procesního řetězce. Služba v současné době podporuje tři typy triggerů:
Plánovaný spouštěč: Spouštěč, který aktivuje datový kanál podle časového plánu.
Spouštěč pro posuvné okno: Spouštěč, který funguje v pravidelných intervalech a zachovává svůj stav.
Spouštěč založený na události: Spouštěč, který reaguje na událost.
Mezi kanály a spouštěči (kromě triggeru pro skákající okno) mají vztah typu M:N. Více aktivačních událostí může aktivovat jeden kanál a jedna aktivační událost může aktivovat více kanálů. V následující definici aktivační události vlastnost pipelines odkazuje na seznam kanálů aktivovaných konkrétní aktivační událostí. Definice vlastnosti obsahuje hodnoty parametrů kanálu.
Definice základní aktivační události
{
"properties": {
"name": "MyTrigger",
"type": "<type of trigger>",
"typeProperties": {...},
"pipelines": [
{
"pipelineReference": {
"type": "PipelineReference",
"referenceName": "<Name of your pipeline>"
},
"parameters": {
"<parameter 1 Name>": {
"type": "Expression",
"value": "<parameter 1 Value>"
},
"<parameter 2 Name>": "<parameter 2 Value>"
}
}
]
}
}
Spouštěč plánu
Aktivační událost plánovače spouští potrubí na základě časového plánu. Tento spouštěč podporuje periodické i pokročilé možnosti kalendáře. Trigger například podporuje intervaly jako "každý týden" nebo "Pondělí v 17:00 a čtvrtek v 21:00." Naplánovaný trigger je flexibilní, protože vzor datové sady je agnostický a trigger nerozlišuje mezi časovými řadami a daty mimo časovou řadu.
Další informace o programovaných spouštěčích a příklady naleznete v tématu Vytvoření spouštěče, který spouští pipeline podle plánu.
Definice spouště plánování
Při vytváření plánovacího spouštěče určíte časový plán a opakování pomocí definice JSON.
Pokud chcete, aby naplánovaný spouštěč aktivoval spuštění potrubí, zahrňte do definice spouštěče odkaz na příslušné potrubí. Mezi kanalizacemi a triggery existuje mnoho-na-mnoho vztah. Více spouštěčů může zahájit jeden pipeline. Jediný spouštěč může zahájit více pracovních toků.
{
"properties": {
"type": "ScheduleTrigger",
"typeProperties": {
"recurrence": {
"frequency": <<Minute, Hour, Day, Week>>,
"interval": <<int>>, // How often to fire
"startTime": <<datetime>>,
"endTime": <<datetime>>,
"timeZone": "UTC",
"schedule": { // Optional (advanced scheduling specifics)
"hours": [<<0-24>>],
"weekDays": [<<Monday-Sunday>>],
"minutes": [<<0-60>>],
"monthDays": [<<1-31>>],
"monthlyOccurrences": [
{
"day": <<Monday-Sunday>>,
"occurrence": <<1-5>>
}
]
}
}
},
"pipelines": [
{
"pipelineReference": {
"type": "PipelineReference",
"referenceName": "<Name of your pipeline>"
},
"parameters": {
"<parameter 1 Name>": {
"type": "Expression",
"value": "<parameter 1 Value>"
},
"<parameter 2 Name>": "<parameter 2 Value>"
}
}
]}
}
Důležité
Vlastnost parameters elementu pipelines je povinná. Pokud váš kanál nepřijímá žádné parametry, musíte pro vlastnost parameters zahrnout prázdnou definici JSON.
Přehled schématu
Následující tabulka obsahuje přehled hlavních elementů schématu souvisejících s opakováním a plánováním aktivační události:
| Vlastnost JSON | Popis |
|---|---|
| startTime | Hodnota data a času. V případě základních plánů se hodnota vlastnosti startTime vztahuje pouze na první výskyt. U složitějších plánů aktivační událost nezačíná dřív než v čas určený hodnotou startTime. |
| Čas ukončení | Koncové datum a čas pro aktivační událost. Spouštěč se nespustí po zadaném koncovém datu a čase. Hodnota této vlastnosti nemůže být v minulosti. |
| časové pásmo | Časové pásmo. Seznam podporovaných časových pásem najdete v tématu Vytvoření spouštěče, který spouští kanál podle plánu. |
| opakování | Objekt recurrence, který určuje pravidla opakování aktivační události. Objekt recurrence podporuje elementy frequency (frekvence), interval (interval), endTime (koncový čas), count (počet) a schedule (plán). Když je definovaný objekt recurrence, vyžaduje se element frequency (frekvence). Další elementy objektu recurrence jsou volitelné. |
| frekvence | Jednotka frekvence, s jakou se aktivační událost opakuje. Mezi podporované hodnoty patří „minute“ (minuta), „hour“ (hodina), „day“ (den), „week“ (týden) a „month“ (měsíc). |
| interval | Kladné celé číslo označující interval pro hodnotu frequency. Hodnota frequency určuje, jak často se má aktivační událost spouštět. Pokud má například interval hodnotu 3 a frequency hodnotu „week“ (týden), aktivační událost se opakuje každé tři týdny. |
| rozvrh | Plán opakování pro aktivační událost. Spouštěč se zadanou hodnotou frequency mění své opakování na základě harmonogramu opakování. Vlastnost schedule obsahuje úpravy opakování na základě minut, hodin, dní v týdnu, dní v měsíci a čísla týdne. |
Poznámka:
Pro časová pásma s úsporou denního světla se čas spuštění automaticky upraví pro změnu dvakrát ročně, pokud je opakování nastaveno na Dny nebo vyšší. Chcete-li se vyhnout změně letního času, vyberte časové pásmo, které letní čas nepoužívá, například UTC.
Úprava letního času probíhá pouze u spouštěče s opakováním nastaveným na hodnotu Dny nebo vyšší. Pokud je spouštěč nastaven na frekvenci hodin nebo minut , bude se spouštět v pravidelných intervalech.
Příklad plánování aktivační události
{
"properties": {
"name": "MyTrigger",
"type": "ScheduleTrigger",
"typeProperties": {
"recurrence": {
"frequency": "Hour",
"interval": 1,
"startTime": "2017-11-01T09:00:00-08:00",
"endTime": "2017-11-02T22:00:00-08:00"
}
},
"pipelines": [{
"pipelineReference": {
"type": "PipelineReference",
"referenceName": "SQLServerToBlobPipeline"
},
"parameters": {}
},
{
"pipelineReference": {
"type": "PipelineReference",
"referenceName": "SQLServerToAzureSQLPipeline"
},
"parameters": {}
}
]
}
}
Výchozí hodnoty, omezení a příklady schématu
| Vlastnost JSON | Typ | Požaduje se | Výchozí hodnota | Platné hodnoty | Příklad |
|---|---|---|---|---|---|
| startTime | řetězec | Ano | Nic | Data a časy podle normy ISO 8601 | "startTime" : "2013-01-09T09:30:00-08:00" |
| opakování | objekt | Ano | Nic | Objekt opakování | "recurrence" : { "frequency" : "monthly", "interval" : 1 } |
| interval | Číslo | Ne | 1 | 1 až 1 000 | "interval":10 |
| Čas ukončení | řetězec | Ano | Nic | Hodnota data a času představující čas v budoucnosti | "endTime" : "2013-02-09T09:30:00-08:00" |
| rozvrh | objekt | Ne | Nic | Objekt plánu | "schedule" : { "minute" : [30], "hour" : [8,17] } |
Vlastnost startTime
Následující tabulka ukazuje, jakým způsobem vlastnost startTime ovládá spouštění aktivační události:
| Hodnota startTime | Opakování bez plánu | Opakování podle rozvrhu |
|---|---|---|
| Čas začátku je v minulosti | Vypočítá první čas spuštění v budoucnosti následující po čase začátku a v tomto čase se spustí. Spouští následující spuštění vypočítané z posledního času spuštění. Prohlédněte si příklad pod touto tabulkou. |
Aktivační událost se spustí nejdříve ve stanovený čas začátku. První výskyt vychází z plánu a je vypočítaný z času začátku. Zahájí další spuštění podle plánu opakování. |
| Čas začátku je v budoucnosti nebo je aktuální | Spustí se jednou v zadaný čas začátku. Spouští následující spuštění vypočítané z posledního času spuštění. |
Aktivační událost se spustí nejdříve v zadaném čase začátku. První výskyt vychází z plánu a je vypočítaný z času začátku. Zahájí další spuštění podle plánu opakování. |
Podívejme se na příklad toho, co se stane, když je čas začátku v minulosti, je nastaveno opakování, ale žádný rozvrh. Předpokládejme, že aktuální čas je 8. 4. 2017 13:00, čas začátku je 7. 4. 2017 14:00 a opakování je nastaveno na každé dva dny. (Hodnota opakování je definována nastavením vlastnosti frekvence na "den" a vlastnost intervalu na hodnotu 2.) Všimněte si, že hodnota startTime je v minulosti a nastane před aktuálním časem.
Za těchto podmínek dojde k prvnímu spuštění v 9. 4. 2017 ve 14:00. Modul plánovače vypočítá provedení úloh od času začátku. Všechny instance v minulosti se zahodí. Motor použije další příklad, který se vyskytne v budoucnosti. V tomto scénáři je čas začátku 7. 4. 2017 ve 14:00. Další instance nastane o dva dny později, tedy 9. 4. 2017 ve 14:00.
První čas spuštění je stejný, i když má položka startTime hodnotu 2017-04-05 14:00 (5. 4. 2017 ve 14:00) nebo 2017-04-01 14:00 (1. 4. 2017 ve 14:00). Po prvním spuštění se další spuštění vypočítají na základě harmonogramu. Proto následná spuštění proběhnou 11. 4. 2017 ve 14:00, pak 13. 4. 2017 ve 14:00, pak 15. 4. 2017 ve 14:00 atd.
A konečně, pokud hodiny nebo minuty nejsou nastavené v plánu pro trigger, hodiny nebo minuty prvního spuštění se použijí jako výchozí hodnoty.
Vlastnost plánu
Pomocí vlastnosti schedule můžete omezit počet spuštění aktivační události. Pokud má například aktivační událost s měsíční frekvencí naplánované spouštění jenom v 31. den, tato aktivační událost se spustí jenom v měsících, které mají 31 dní.
Pomocí vlastnosti schedule můžete také rozšířit počet spuštění aktivační události. Například aktivační událost s měsíční frekvencí, která má naplánované spouštění na 1. a 2. den v měsíci, se nespustí jednou za měsíc, ale první a druhý den v měsíci.
Pokud je zadáno více prvků plánu , pořadí vyhodnocení je od největšího po nejmenší nastavení plánu: číslo týdne, den v měsíci, den v týdnu, hodina, minuta.
Následující tabulka obsahuje podrobný popis elementů schedule:
| Element JSON | Popis | Platné hodnoty |
|---|---|---|
| minuty | Minuty v hodině, kdy se spouští spouštěč. | – Celé číslo – Pole celých čísel |
| hodiny | Hodiny dne, ve kterých se spouštěč spouští. | – Celé číslo – Pole celých čísel |
| dny týdne | Dny v týdnu, kdy spouštěč běží. Tuto hodnotu je možné zadat jenom při týdenní frekvenci. | – Pondělí – Tuesday (Úterý) – Wednesday (Středa) – Čtvrtek – Friday (Pátek) – Sobota – Neděle – Pole hodnot dní (maximální velikost pole je 7) U hodnot dnů se nerozlišují malá a velká písmena |
| měsíčníchVýskytů | Dny v měsíci, na které se spouštěč spouští. Tuto hodnotu je možné zadat jenom při měsíční frekvenci. | - Pole objektů měsíčních výskytů: – Atribut day představuje den v týdnu, ve kterém se aktivační událost spouští. Například vlastnost monthlyOccurrences s atributem day s hodnotou {Sunday} znamená každou neděli v měsíci. Atribut day je povinný.– Atribut occurrence představuje výskyt zadaného dne (day) v měsíci. Například vlastnost monthlyOccurrences s atributy day a occurrence s hodnotami {Sunday, -1} znamená poslední neděli v měsíci. Atribut occurrence je volitelný. |
| měsíčníDny | Den v měsíci, ve kterém se spouštěč spouští. Tuto hodnotu je možné zadat jenom při měsíční frekvenci. | - Libovolná hodnota <= -1 a >= -31 - Libovolná hodnota >= 1 a <= 31 Pole datových hodnot |
Aktivační událost pro klouzavé okno
Spouštěče s posuvným oknem jsou typem spouštěčů, které se aktivují v pravidelných časových intervalech od určeného počátečního času při zachování stavu. Rolovací okna jsou posloupnost časových intervalů s pevnou velikostí, které se nepřekrývají a jsou souvislé.
Další informace o aktivačních událostech pro přeskakující okno a příklady najdete v tématu Vytvoření aktivační události pro přeskakující okno.
Příklady plánů opakování aktivačních událostí
Tato část obsahuje příklady harmonogramů opakování. Zaměřuje se na objekt schedule a jeho elementy.
Příklady předpokládají, že hodnota intervalu je 1 a že hodnota frekvence je správná podle definice plánu. Například není možné, aby vlastnost frequency měla hodnotu „day“ a zároveň objekt schedule obsahoval úpravu atributu monthDays. Tyto typy omezení jsou popsané v tabulce v předchozí části.
| Příklad | Popis |
|---|---|
{"hours":[5]} |
Běhej každý den v 5:00 ráno. |
{"minutes":[15], "hours":[5]} |
Běhejte každý den v 5:15 ráno. |
{"minutes":[15], "hours":[5,17]} |
Běh v 5:15 ráno a 17:15 odpoledne každý den. |
{"minutes":[15,45], "hours":[5,17]} |
Spuštění každý den v 5:15 ráno, 5:45 ráno, 17:15 odpoledne a 17:45 odpoledne. |
{"minutes":[0,15,30,45]} |
Spustí se každých 15 minut. |
{hours":[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]} |
Spouštěj každou hodinu. Tento spouštěč běží každou hodinu. Minuty se řídí hodnotou startTime, pokud je zadaná. Pokud hodnotu nezadáte, minuty se řídí časem vytvoření. Například, pokud je počáteční čas nebo čas vytvoření (podle potřeby) 12:25 odpoledne, aktivační událost se spustí ve 0:25, 1:25, 2:25, ..., a 23:25. Tento plán je stejný jako aktivační událost s vlastností frequency s hodnotou „hour“ (hodina), vlastností interval s hodnotou 1 a žádným objektem schedule. Tento plán se dá s jinými hodnotami frequency a interval použít k vytvoření jiných aktivačních událostí. Když má například frequency hodnotu „month“ (měsíc), plán se spustí pouze jednou za měsíc, a ne každý den, jako když má frequency hodnotu „day“ (den). |
{"minutes":[0]} |
Běž každou hodinu v celou. Tento spouštěč se spouští každou hodinu přesně, počínaje půlnocí ve 12:00, 1:00, 2:00 atd. Tento plán odpovídá spouštěči, který má vlastnost frequency s hodnotou „hour“ (hodina) a vlastnost startTime s hodnotou nula minut, nemá žádný objekt schedule, ale má vlastnost frequency s hodnotou „day“ (den). Pokud má frequency hodnotu „week“ (týden) nebo „month“ (měsíc), plán se spustí pouze v jeden den v týdnu nebo jeden den v měsíci. |
{"minutes":[15]} |
Spouštět každou hodinu v 15 minut. Tento časovač se spouští každou hodinu v 15 minut po celé hodině, začíná ve 00:15 AM, 1:15 AM, 2:15 AM, a tak dále až do 11:15 PM. |
{"hours":[17], "weekDays":["saturday"]} |
Běh každou sobotu v 17:00. |
{"hours":[17], "weekDays":["monday", "wednesday", "friday"]} |
Spouštějte v 17:00 každé pondělí, středu a pátek. |
{"minutes":[15,45], "hours":[17], "weekDays":["monday", "wednesday", "friday"]} |
Probíhá každý týden v pondělí, středu a pátek v 17:15 a 17:45. |
{"minutes":[0,15,30,45], "weekDays":["monday", "tuesday", "wednesday", "thursday", "friday"]} |
Běží každých 15 minut ve všední dny. |
{"minutes":[0,15,30,45], "hours": [9, 10, 11, 12, 13, 14, 15, 16] "weekDays":["monday", "tuesday", "wednesday", "thursday", "friday"]} |
Jezdí ve všední dny každých 15 minut mezi 9:00 a 16:45. |
{"weekDays":["tuesday", "thursday"]} |
Probíhá každé úterý a čtvrtek v určený začátek. |
{"minutes":[0], "hours":[6], "monthDays":[28]} |
Spustit 28. den každého měsíce v 6:00 (za předpokladu, že frequency má hodnotu „month“). |
{"minutes":[0], "hours":[6], "monthDays":[-1]} |
Spusťte se v poslední den měsíce v 6:00 ráno. Pokud chcete spustit aktivační událost poslední den v měsíci, použijte místo hodnot 28, 29, 30 nebo 31 hodnotu -1. |
{"minutes":[0], "hours":[6], "monthDays":[1,-1]} |
Spustit v 6:00 ráno každý první a poslední den každého měsíce. |
{monthDays":[1,14]} |
Provádějte každý měsíc prvního a čtrnáctého dne ve stanoveném čase začátku. |
{"minutes":[0], "hours":[5], "monthlyOccurrences":[{"day":"friday", "occurrence":1}]} |
Probíhá každý první pátek v měsíci v 5:00 ráno. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":1}]} |
Spouští se každý první pátek v měsíci ve stanoveném čase zahájení. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":-3}]} |
Každý třetí pátek před koncem měsíce ve stanovenou dobu. |
{"minutes":[15], "hours":[5], "monthlyOccurrences":[{"day":"friday", "occurrence":1},{"day":"friday", "occurrence":-1}]} |
Běží každý první a poslední pátek v měsíci v 5:15 ráno. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":1},{"day":"friday", "occurrence":-1}]} |
Spouští se každý první a poslední pátek v měsíci ve stanovený začátek. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":5}]} |
Probíhat každý pátý pátek v měsíci v určeném čase zahájení. Když není v měsíci pátý pátek, pipeline se nespustí. Pokud chcete, aby se aktivační událost spouštěla v poslední pátek v měsíci, můžete jako occurrence místo hodnoty 5 zadat hodnotu -1. |
{"minutes":[0,15,30,45], "monthlyOccurrences":[{"day":"friday", "occurrence":-1}]} |
Každých 15 minut v poslední pátek v měsíci. |
{"minutes":[15,45], "hours":[5,17], "monthlyOccurrences":[{"day":"wednesday", "occurrence":3}]} |
Spuštění každou třetí středu v měsíci v 5:15 ráno, 5:45 ráno, 17:15 odpoledne a 17:45 odpoledne. |
Spouštěč založený na události
Trigger založený na událostech spouští potrubí v reakci na událost. Z hlediska fungování, pokud zastavíte a znovu spustíte spouštěč založený na událostech, obnoví starý vzor spouštění, což může vést k nežádoucímu spuštění pipeline. V tomto případě byste měli odstranit a vytvořit novou aktivační událost založenou na událostech. Nová aktivační událost se spustí znovu bez historie. Existují dvě varianty triggerů založených na událostech.
- Trigger události úložiště spouští pipeline na základě událostí, které se dějí v úložišti Azure, jako je přijetí souboru nebo odstranění souboru v účtu služby Azure Blob Storage.
- Vlastní spouštěč událostí zpracovává a řídí vlastní články ve službě Event Grid
Další informace o triggerech založených na událostech najdete v tématech Úložný trigger události a Vlastní trigger události.
Porovnání typů aktivačních událostí
Spouštěč pro klouzavé okno i časový spouštěč pracují s časovými řízeními. Jaký je mezi nimi rozdíl?
Poznámka:
Trigger posuvného okna čeká na dokončení spuštění potrubí. Jeho stav spuštění odráží stav spuštěného běhu kanálu. Pokud se například zruší aktivované spuštění kanálu, označí se odpovídající spuštění aktivační události přeskakujícího okna jako zrušené. Toto chování se liší od chování "spustit a zapomenout" plánovatelného spouště, který je označen jako úspěšný, pokud se spustí kanál.
Následující tabulka obsahuje porovnání spouštěče pro posuvné okno a časového spouštěče:
| Položka | Aktivační událost pro klouzavé okno | Spouštěč plánu |
|---|---|---|
| Scénáře obnovení dat | Podporováno. Spuštění kanálu je možné naplánovat i pro časové úseky v minulosti. | Nepodporováno Spuštění kanálu je možné provést pouze v časová období od současnosti do budoucnosti. |
| Spolehlivost | 100% spolehlivost. Plánování spuštění kanálu lze provádět pro všechna okna od stanoveného počátečního data bez mezer. | Menší spolehlivost. |
| Možnost opakování | Podporováno. Spuštění kanálů, která selžou, mají výchozí zásadu opakování s hodnotou 0, nebo zásadu zadanou uživatelem v definici spuštění. Automaticky opakuje pokus, když se spuštění potrubí nezdaří kvůli omezením souběžnosti, serveru nebo škrcení (tj. chybové kódy 400: Chyba uživatele, 429: Příliš mnoho požadavků a 500: Vnitřní chyba serveru). | Nepodporováno |
| Souběžnost | Podporováno. Uživatelé můžou pro aktivační událost explicitně nastavit omezení souběžnosti. Umožňuje 1 až 50 souběžně aktivovaných spuštění pipeliny. | Nepodporováno |
| Systémové proměnné | @trigger().scheduledTime Kromě @trigger().scheduledTime a také podporuje použití systémových proměnných WindowStart a WindowEnd. Uživatelé mají v definici aktivační události přístup k trigger().outputs.windowStartTime a trigger().outputs.windowEndTime jako systémovým proměnným aktivační události. Tyto hodnoty se používají v čase začátku okna a v čase konce okna. Například pro aktivační událost pro padající okno, která se spouští každou hodinu, je definice okna od 1:00 do 2:00 následující: trigger().outputs.windowStartTime = 2017-09-01T01:00:00Z a trigger().outputs.windowEndTime = 2017-09-01T02:00:00Z. |
Podporuje pouze výchozí @trigger().scheduledTime hodnoty a @trigger().startTime proměnné. |
| Vztah mezi potrubím a aktivační událostí | Podporuje vztah 1:1. Je možné aktivovat pouze jedno potrubí. | Podporuje vztahy mnoho k mnoha. Více spouštěčů může zahájit jeden pipeline. Jediný spouštěč může zahájit více pracovních toků. |
Související obsah
Projděte si tyto kurzy: