Azure Functions výstup z Azure Stream Analytics
Azure Functions je bezserverová výpočetní služba, kterou můžete použít ke spouštění kódu na vyžádání, aniž byste museli explicitně zřizovat nebo spravovat infrastrukturu. Umožňuje implementovat kód aktivovaný událostmi, ke kterým dochází v Azure nebo partnerských službách. Díky této schopnosti Azure Functions reagovat na triggery je pro Azure Stream Analytics přirozeným výstupem. Tento výstupní adaptér umožňuje uživatelům připojit Stream Analytics k Azure Functions a spustit skript nebo část kódu v reakci na různé události.
Azure Functions výstup ze stream analytics není k dispozici v Microsoft Azure provozovaném společností 21Vianet a Azure Germany (T-Systems International). Připojení k Azure Functions uvnitř virtuální sítě z úlohy Stream Analytics, která běží v clusteru s více tenanty, se také nepodporuje.
Azure Stream Analytics volá Azure Functions prostřednictvím triggerů HTTP. Výstupní adaptér Azure Functions je k dispozici s následujícími konfigurovatelnými vlastnostmi:
Název vlastnosti | Description |
---|---|
Aplikace funkcí | Název aplikace Azure Functions. |
Funkce | Název funkce v aplikaci Azure Functions. |
Klíč | Pokud chcete použít funkci Azure Functions z jiného předplatného, můžete to udělat tak, že zadáte klíč pro přístup k funkci. |
Maximální velikost dávky | Vlastnost, která umožňuje nastavit maximální velikost pro každou výstupní dávku odeslanou do funkce Azure. Vstupní jednotka je v bajtech. Ve výchozím nastavení je tato hodnota 262 144 bajtů (256 kB). |
Maximální počet dávek | Vlastnost, která umožňuje zadat maximální počet událostí v každé dávce odesílané do Azure Functions. Výchozí hodnota je 100. |
Azure Stream Analytics očekává stav HTTP 200 z aplikace Functions pro dávky, které byly úspěšně zpracovány.
Když Azure Stream Analytics obdrží výjimku 413 (http Request Entity Too Large) z funkce Azure, zmenšuje velikost dávek, které odesílá Azure Functions. V kódu funkce Azure použijte tuto výjimku, abyste zajistili, že Azure Stream Analytics neodesílá nadměrné dávky. Také se ujistěte, že maximální počet dávek a hodnoty velikosti použité ve funkci jsou konzistentní s hodnotami zadanými na portálu Stream Analytics.
Poznámka
Během testování připojení stream analytics odešle prázdnou dávku (POST), aby Azure Functions otestovat, jestli propojení mezi těmito dvěma funkcemi funguje. Ujistěte se, že vaše aplikace Functions zpracovává prázdné dávkové požadavky, aby se zajistilo, že testovací připojení projde.
V situaci, kdy v časovém intervalu nepřistane žádná událost, se nevygeneruje žádný výstup. V důsledku toho se funkce computeResult nevolá. Toto chování je konzistentní s integrovanými agregačními funkcemi v okně.
Dělení
Klíč oddílu je založený na klauzuli PARTITION BY v dotazu. Počet výstupních zapisovačů následuje po dělení vstupu pro plně paralelizované dotazy.
Velikost výstupní dávky
Výchozí velikost dávky je 262 144 bajtů (256 kB). Výchozí počet událostí na dávku je 100. Velikost dávky je konfigurovatelná a v možnostech výstupu Stream Analytics se dá zvětšit nebo zmenšit.
Omezení
Azure Functions by měl svůj požadavek dokončit za méně než 100 sekund, protože po 100 sekundách vyprší časový limit klienta HTTP. Pokud trvá déle než 100 sekund, než Azure Functions zpracovat dávku dat, dojde k vypršení časového limitu, který aktivuje opakování. Tento opakovaný pokus může vést k duplicitním datům, protože Azure Functions data znovu zpracuje a potenciálně vytvoří stejný výstup, protože se v předchozím požadavku částečně vygeneroval.
Ukázky kódů
Výstup Azure Functions lze použít k přenosu zpráv do nepodporovaných databází, jako je Redis, nebo k aktualizaci tabulek v Azure SQL.
Další kroky
- Rychlý start: Vytvoření úlohy Stream Analytics pomocí webu Azure Portal
- Rychlý start: Vytvoření úlohy Azure Stream Analytics pomocí Azure CLI
- Rychlý start: Vytvoření úlohy Azure Stream Analytics pomocí šablony ARM
- Rychlý start: Vytvoření úlohy Stream Analytics pomocí Azure PowerShell
- Rychlý start: Vytvoření úlohy Azure Stream Analytics pomocí sady Visual Studio
- Rychlý start: Vytvoření úlohy Azure Stream Analytics v editoru Visual Studio Code