Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Stručnosť vyjadrovania je priam nevyhnutná pri komunikácii založenej na vysoko frekventovanom zbere mikrodát z väčšieho množstva zdrojov. Príkladom môže byť všadespomínaný „Internet vecí“, popisovaný často ako svet senzorov odosielajúcich a prijímajúcich malé dátové informácie. Svet mikrodát nie sú len senzory. Existuje aj bez nich. Príkladom sú weby, ktoré chrlia v každej sekunde logy o každej „session“, alebo aplikácie v rýchlom slede ukladajú telemetrické dáta (ako napr. Halo5), či skutočnosť, že do súborových úložísk každou sekundou pribúdajú nové „bloby“ so stručnou popiskou v metadátach. Analyzovanie mikrodát raz za niekoľko dní (dávkovo) rozhodne nereaguje na stav dát v reálnom čase. A práve tu je možnosť použiť službu Azure IoT hub na ich zber a postspracovanie v reálnom čase, pretože:
- Nevyžaduje vystavanie infraštruktúry (serverov, sietí) pre spracovanie veľkého množstva dát prijímaných naraz z rôznych zdrojov
- Ponúka jednoduché škálovanie pridávaním a odoberaním zdrojov (tzv. units) pre alokovanie výkonu a optimalizáciu nákladov
- Umožňuje v reálnom čase mikrodáta konsolidovať a posuvať ich do úložiska alebo do analytickej služby
Pre znalcov Azure Event Hub (predchodca Azure IoT Hub) by v tomto zozname mali byť aj vylepšenia, ktoré IoT Hub prináša v porovnaní so svojim starším súrodencom:
- „Messaging“ nielen z zdroja mikrodát do Azure, ale aj naspäť na zdroj
- Identita pre každé zariadenie
- Podpora nielen .NET a C ale aj .Node.js a Java
Aby sme si vedeli predstaviť (ne)náročnosť vytvorenia „výkonnej zberne malých dát v reálnom čase“, teda základnej funkčnosti Azure IoT Hub-u, krok za krokom si jeden Azure IoT Hub vytvorme. Použijeme ho v ďalšej časti seriálu „Mikrodáta do Azure“ na zber telemetrických dát obsahujúcich informáciu „miesto prihlásenia registrovaného používateľa webovej aplikácie“.
1. Prihláste sa na portál správy Azure služieb https://portal.azure.com Microsoft Account-om (LiveID), ktorý ste použili pri aktivácii Azure benefitu v MSDN alebo BizSpark-u, alebo ho používate v Azure Trial, prípadne v zakúpenej Azure subskripcii.
2. Na hlavnej obrazovke správy vašej Azure subskripcie vyberte vľavo hore menu „New“ .
3. Z zobrazeného submenu vyberte Internet of Things -> Azure IoT Hub.
4. Zadajte názov hub-u, ktorý sa prenesie do jeho DNS mena a "connection string-ov". Vyberte úroveň škálovania a spoplatnenia. Pre vývoj a základné testovanie si vystačíme s bezplatnou úrovňou „F1 Free“, ktorá nám umožní používať iba jednu škálovaciu jednotku (IoT Hub Unit = obsluha 500 zdrojov dát) a dve partície pre správy prichádzajúce zo zdroja mikrodát, pričom správ môže byť v „free“ móde najviac 8 tisíc za deň. Zadajte novú skupinu zdrojov, ktorá bude zgrupovať služby pre náš projekt a zvoľte si dátové centrum pre prevádzkovanie IoT Hub-u. Potvrďte vytvorenie IoT Hubu tlačidlom Create.
Poznámka: Free mód je určený iba na vývoj a testovanie. Nie je ho možné „prepnúť“ na produkčné úrovne Standard. Ak už ale budete mať IoT hub v móde Standard a zistíte, že vybraná úroveň v rámci Standard vám nepostačuje, stačí, aby ste zmenili škálovaciu úroveń na vyššiu, napr. z S1 na S2.
5. Po niekoľkých minútach sa úšpešné vytvorenie IoT Hub-u prejaví zobrazením panela s aktuálnym základným nastavením IoT Hub-u a diagramom aktuálnej spotreby kreditu správ.
6. Nastavenia IoT hub-u nie sú komplikované. Potvrďte v hornom menu Settings a vyberte menu Shared access policies. Nájdete pod ním politiky prístupu do IoT Hub-u s rôznymi právami.
Základným právom umožňujúcim pripojenie zdroja mikrodát je „device connect“. Ak teda senzor, alebo aplikácia odosielajúca telemetrické dáta, bude chcieť poslať dáta do IoT Hub-u, bude musieť použiť na pripojenie "connection string" povoľujúci prístup pre zariadenia/aplikácie „Device connect“.
7. Vyberte z ponuky Settings položku Messaging.
Základné nastavenia pre správy odosielané z zdroja mikrodát a naspäť nám pre vývoj prvého projektu budú stačiť, preto si len objasnime význam troch najdôležitejších:
- Default TTL - čas životnosti správy, ktorá sa má z IoT hubu doručiť na zdroj dát (senzor, aplikácia,...). Ak sa do tejto doby nepodarí správu doručiť, IoT Hub ju odloží ako expirovanú.
- Feedback retention time – centrálna „back-end“ aplikácia, ktorá spolupracuje s IoT Hub-om, niekedy požaduje potvrdenky o doručení správ na zdroj dát alebo potvrdenky o expirácii správ pre možnosť ich opätovného zaslania. Tieto tzv. „feedbacky“ majú tiež svoj čas životnosti a práve hodnota „feedback retention times“ určuje, ako dlho bude IoT Hub držať v sebe informáciu, ktorú si môže centrálna „back-end“ aplikácia načítať.
- Partitions – správy odosielané zo zdroja dát zberá a ukladá IoT Hub v partíciach. Úlohou particiovania je efektívna organizácia dát a ich klasifikácia, čo určuje ako efektívne budú dáta distribuované v streamoch ich odberateľom (napr. službe Azure Stream Analytics).
IoT Hub máme vytvorený, a tak sa v ďalšej časti nášho miniseriálu môžeme zamerať na vytvorenie aplikácie, ktorá bude simulovať odosielanie telemetrie prihlásení do sledovanej webovej aplikácie do IoT hub-u.
Miro
P.S. Ak ste členmi BizSpark programu pre začínajúce vývojárske “startupy” (firmy alebo živnostníkov) , alebo máte kúpené Visual Studio s MSDN, môžete si bezplatne aktivovať Azure benefit v týchto programoch (Microsoft Azure pre členov BizSpark , Microsoft Azure pre MSDN predplatiteľov). Pri registrácii Azure benefitu v MSDN alebo BizSparku nie je požadované overenie platobnou kartou. Ak nie ste členmi týchto programov, môžete si Microsoft Azure bezplatne vyskúšať na dobu 30 dní cez Microsoft Azure Trial.