Share via


Azure Functions Kimenet az Azure Stream Analyticsből

Azure Functions egy kiszolgáló nélküli számítási szolgáltatás, amellyel igény szerint futtathat kódot anélkül, hogy kifejezetten ki kellene építenie vagy kezelnie kellene az infrastruktúrát. Lehetővé teszi olyan kód implementálását, amelyet az Azure-ban vagy a partnerszolgáltatásokban bekövetkező események váltanak ki. A Azure Functions eseményindítókra való reagálásának képessége természetes kimenetet biztosít az Azure Stream Analytics számára. Ez a kimeneti adapter lehetővé teszi a felhasználók számára a Stream Analytics csatlakoztatását Azure Functions, és szkriptet vagy kódrészletet futtathatnak különböző eseményekre válaszul.

Azure Functions Stream Analytics kimenete nem érhető el a 21Vianet és az Azure Germany (T-Systems International) által üzemeltetett Microsoft Azure-ban. A több-bérlős fürtben futó Stream Analytics-feladatból származó virtuális hálózaton (VNeten) belüli Azure Functions csatlakozása szintén nem támogatott.

Az Azure Stream Analytics HTTP-eseményindítókon keresztül hívja meg a Azure Functions. A Azure Functions kimeneti adapter a következő konfigurálható tulajdonságokkal érhető el:

Tulajdonság neve Description
Függvényalkalmazás A Azure Functions alkalmazás neve.
Függvény A függvény neve a Azure Functions alkalmazásban.
Kulcs Ha egy másik előfizetésből származó Azure-függvényt szeretne használni, ezt a függvény eléréséhez szükséges kulcs megadásával teheti meg.
Köteg maximális mérete Egy tulajdonság, amely lehetővé teszi az Azure-függvénynek küldött összes kimeneti köteg maximális méretének beállítását. A bemeneti egység bájtban van. Alapértelmezés szerint ez az érték 262 144 bájt (256 KB).
Kötegek maximális száma Egy tulajdonság, amellyel megadhatja az egyes kötegekben az Azure Functions küldött események maximális számát. Az alapértelmezett érték 100.

Az Azure Stream Analytics a 200- os HTTP-állapotot várja a Functions alkalmazástól a sikeresen feldolgozott kötegekhez.

Amikor az Azure Stream Analytics 413 ("http Request Entity Too Large") kivételt kap egy Azure-függvénytől, csökkenti a Azure Functions küldött kötegek méretét. Az Azure-függvénykódban ezzel a kivétellel győződjön meg arról, hogy az Azure Stream Analytics nem küld túlméretezett kötegeket. Győződjön meg arról is, hogy a függvényben használt kötegek maximális száma és mérete megegyezik a Stream Analytics portálon megadott értékekkel.

Megjegyzés

A tesztelési kapcsolat során a Stream Analytics egy üres köteget küld a Azure Functions, hogy tesztelje, működik-e a kapcsolat a kettő között. Győződjön meg arról, hogy a Functions-alkalmazás kezeli az üres kötegelt kérelmeket, hogy meggyőződjön arról, hogy a tesztkapcsolat megfelel.

Emellett olyan helyzetben, amikor nincs eseményleszállás egy időablakban, a rendszer nem hoz létre kimenetet. Ennek eredményeként a computeResult függvény nem lesz meghívva. Ez a viselkedés összhangban van a beépített ablakos összesítő függvényekkel.

Particionálás

A partíciókulcs a lekérdezés PARTITION BY záradékán alapul. A kimeneti írók száma a teljesen párhuzamos lekérdezések bemeneti particionálását követi.

Kimeneti köteg mérete

Az alapértelmezett kötegméret 262 144 bájt (256 KB). Az alapértelmezett eseményszám kötegenként 100. A köteg mérete konfigurálható, és a Stream Analytics kimeneti beállításaiban növelhető vagy csökkenthető.

Korlátozás

Azure Functions 100 másodperc alatt kell teljesítenie a kérést, mivel a HTTP-ügyfél 100 másodperc után túllépi az időkorlátot. Ha a Azure Functions több mint 100 másodpercet vesz igénybe egy adat kötegének feldolgozásához, időtúllépés lép fel, amely újrapróbálkozási folyamatot indít el. Ez az újrapróbálkozás duplikált adatokat eredményezhet, mert Azure Functions újra feldolgozni fogja az adatokat, és valószínűleg ugyanazt a kimenetet hozza létre, mivel előfordulhat, hogy az előző kérelemben részben ki lett adva.

Kódminták

A Azure Functions kimenettel üzenetek továbbíthatók nem támogatott adatbázisokba, például a Redisbe, vagy frissíthetők Azure SQL táblái.

Következő lépések