Ha Ön a felelős a gyári gépekért, már tudja, hogy a folyamatok és eredmények fejlesztésének következő lépése az eszközök internetes hálózata (IoT). Az első lépés, hogy érzékelőket kell használni a gépeken vagy a gyár padlóján. A következő lépés az adatok használata, amely a jelen dokumentum tárgya. Ez az útmutató technikai áttekintést nyújt a gyakorlatban hasznosítható elemzések IoT-adatelemzésekből való kinyeréséhez szükséges összetevőkről.
Az IoT-elemzési megoldások egy eszközkészletből származó nyers IoT-adatoknak az elemzéshez jobban alkalmas formára való átalakítását célzják. Ha ez megtörtént, ténylegesen elvégezhetjük az elemzést. Néhány példa az elemzésre:
- A telemetria egyszerű vizualizációi, például egy sávdiagram, amely az idő függvényében mutatja a hőmérsékletet
- Egy fő teljesítménymutató (KPI) kiszámítása, például a berendezések általános hatékonysága (OEE)
- Gépi tanulási modellekre épülő prediktív elemzés
Ezek az elemzések viszont olyan megállapításokat nyújtanak, amelyek információkat nyújtanak a műveletekről. A lehetséges műveletek széles körre kiterjednek, és a következőkre terjednek ki:
- Egyszerű parancs küldése egy gépre
- Működési paraméterek finomhangolása
- Művelet végrehajtása másik szoftverrendszeren
- Vállalati szintű üzemeltetési fejlesztési programok megvalósítása
Az alábbi ábrán egy olyan műveletlánc látható, amely egy gyári gép és a végeredmény között történik, amely a kihasználtság irányítópult-ábrázolása, amely egy gráfot és a címkét 87.5%mutatja.

Az ábra kedvéért egy egyszerű KPI számítását használjuk, a gép kihasználtságát, amely az idő azon százaléka, amellyel a gép ténylegesen gyárt alkatrészeket. Ha például nyolc óra van egy műszakban, és a gép hét órán keresztül gyárt alkatrészeket, akkor a műszak géphasználata 87,5% (7/8 x 100).
Módszer
Az IoT-alkalmazások három összetevőből állnak: dolgokból (vagy eszközökből), amelyek elemzések létrehozására szolgáló adatokat vagy eseményeket küldenek, amelyek a vállalkozás vagy folyamat javítására szolgáló műveletek létrehozására szolgálnak.
A gyártóüzem berendezései (dolgok) különböző típusú adatokat küldenek működés közben. Ilyen például egy marógép, amely a hírcsatorna sebességére és hőmérsékletére vonatkozó adatokat küld; Ez annak kiértékelésére szolgál, hogy a gép fut-e vagy sem – egy megállapítás , amely az üzem optimalizálására szolgál – egy műveletet. Végigvezetjük az adatok kinyerésére, irányítópulton való megjelenítésére, új megállapítások kinyerésére és további műveletekre.

A Microsoft közzétett egy magas szintű referenciaarchitektúrát az IoT-alkalmazásokhoz, amely végigvezeti a különböző alrendszereken és az ezekhez az alrendszerekhez ajánlott megközelítéseken. Egy IoT-alkalmazás a következő alrendszerekből áll:
- Olyan eszközök vagy helyszíni peremhálózati átjárók, amelyek olyan eszközök, amelyek biztonságosan regisztrálhatnak üzenetforrásokat (eszközöket) a felhőben. A peremhálózati átjáró natív protokollból egy másik formátumba (például JSON-ba) is átalakíthatja az üzeneteket.
- Felhőátjáró szolgáltatás vagy központ (például Azure IoT Hub vagy Azure Event Hubs) az adatok biztonságos betöltéséhez és az eszközfelügyeleti képességek biztosításához.
- Streamelési adatokat használó streamfeldolgozók. A feldolgozók integrálhatók az üzleti folyamatokkal, és az adatokat tárolóba helyezhetik.
- Az IoT-adatok megjelenítésére és az eszközkezelés megkönnyítésére szolgáló felhasználói felület irányítópult formájában.

Ebben a cikkben az elemzések kinyerésének folyamatára összpontosítunk. Ezek a fő lépések:
- Az adatok elérése és feldolgozása adatfolyamként.
- Feldolgozhatja és tárolhatja az adatokat.
- Az adatok megjelenítése vagy megjelenítése.
Az alábbi ábra egy diagram, amely az adatok áramlását mutatja be az adatforrástól az átalakításig, a betöltésig, a feldolgozásig és tárolásig, a bemutatóig és végül a műveletekig.

Az adatok átalakítása adatfolyammá
Az IoT-adatok idősoros adatok: a "dolgok" értékei, amelyek egy adott időtartam alatt kifejezőbbek lehetnek. Az üzem padlóján lévő berendezések az idő függvényében működnek, és az adott időszakban események történnek. Ha az üzemcsarnokban lévő adatokat nem küldi el egy adatbetöltési szolgáltatásnak, például Azure IoT Hub, rendszeresen le kell kérdeznünk az adatokat a tárolóból ( például egy gyártási végrehajtási rendszerből (MES) vagy egy HTTP-végpontból), és el kell küldenünk az adatokat egy betöltési szolgáltatásnak. Az adatok adatfolyammá alakításához általában a következőt kell tennünk:
- Hozzáférés az adatforráshoz.
- Az adatok átalakítása és bővítése.
- Tegye közzé az adatokat egy olyan végponton, amely betöltheti a streamelési adatokat.
Itt nem tárgyaljuk részletesen az adatforráshoz való hozzáférést, mivel a hozzáférés attól függ, hogy hol találhatók az adatok, és a variációk túl sokak.
Az adatok átalakítása és bővítése
A nyers adatokat általában transzformációs műveleteknek kell alávetni, hogy szabványosíthassa és előkészíthesse azokat a betöltésre. Az egyes átalakítások a használt elemzés típusától függően változnak. Az adatátalakítások gyakori példái az idősoros adatok, ahol a mérések hiányoznak és bevitelre szorulnak, vagy ahol a különböző gépek időskáláit észszerűsíteni kell. Olyan adatrekordokat szeretnénk, amelyek időbélyegzővel vannak eladva (ha a forrás tartalmazza) és név-érték párokban. Az adatok általában hierarchikus formátumban érkeznek, és egybesimított szerkezetté kell alakítani őket.
Az alábbi ábrán egy hierarchikus adatstruktúra látható szaggatott profillal, amely szabványos oszlop- és sorformátumra (blokkra) van konvertálva.

Az adatok általában nem érhetők el az internetről. Gyakori minta, hogy egy peremhálózati átjáróval küldi le az adatokat az üzem padlójáról a betöltési pontra. Az Azure IoT Edge egy olyan szolgáltatás, amely a IoT Hub épül. A IoT Edge-eszközök átjáróként működhetnek, és három mintát fedhetnek le: transzparens átjárót, protokollfordítást és identitásfordítást.
Ha az adatok külsőleg elérhetők és elérhetők az internetről, több Azure-szolgáltatás is használható az adatok eléréséhez, átalakításához és bővítéséhez. Ezek közül a lehetőségek a következők:
- Különböző Azure számítási szolgáltatásokban üzembe helyezett egyéni kód, például App Service, Azure Kubernetes Service (AKS), Container Instances vagy Service Fabric.
- Azure Logic Apps
- Az Azure Data Factory folyamatai és tevékenységei
- Azure Functions
A fenti szolgáltatások mindegyike a forgatókönyvtől függően saját előnyökkel és költségekkel rendelkezik. A Logic Apps például lehetőséget biztosít az XML-dokumentumok átalakítására. Az adatok azonban túlságosan összetett XML-dokumentumok is lehetnek, ezért nem biztos, hogy praktikus egy nagyméretű XSLT-szkriptet fejleszteni az adatok átalakításához. Ebben az esetben előfordulhat, hogy hibrid megoldást fejlesztünk különböző Azure-szolgáltatások több mikroszolgáltatásával. Egy Azure Logic Apps implementált mikroszolgáltatás például lekérdezhet egy HTTP-végpontot, ideiglenesen tárolhatja a nyers eredményt, és értesíthet egy másik mikroszolgáltatást. A másik mikroszolgáltatás – amely átalakítja az üzenetet – lehet Azure Functions Gazdagépen üzemeltetett egyéni kód.

Azt is megteheti, hogy Azure Data Factory által vezényelt munkafolyamatot választ, ahol tevékenységek sorozata hajtja végre az átalakításokat. Az elérhető tevékenységek típusával kapcsolatos további információkért lásd a folyamatokról és a tevékenységekről Azure Data Factory. Az üzenetek időbélyegzhetők a recepción, vagy tartalmazhatnak egy időbélyeget, amely lehetővé teszi több mért érték idősorának rekonstruálását. Ezért az elhanyagolható betöltési késés és a magas átviteli sebesség alapvető fontosságú az információk integritásának és a végleges válaszok időszerűségének garantálásához. A késés minimalizálása érdekében a lehető legközelebb normalizáljuk az időbélyegeket az üzemhez.
Az adatfolyam betöltése
Az adatok streamként való elemzéséhez időablakok alapján lekérdezéseket végezhetünk az adatokon a minták és kapcsolatok azonosítása érdekében. Az Azure platformon számos olyan szolgáltatás található, amely nagy átviteli sebességgel képes adatokat beemészteni. Az alábbi szolgáltatások közötti választás a projekt igényeitől függ, például az eszközkezeléstől, a protokolltámogatástól, a méretezhetőségtől, a csapat programozási modell előnyben részesítésétől stb. Előfordulhat például, hogy a csapat előnyben részesíti a Kafka használatát a tapasztalataik miatt, vagy egy Kafka-közvetítőre van szükség a megoldáshoz. Vagy egy másik esetben a projektnek szüksége lehet az adatbetöltési rendszerre, hogy kihasználhassa IoT Hub Device Provisioning Service TPM-kulcsigazolásának előnyeit az eszközök a betöltési ponthoz való hozzáférésének biztosításához.
Azure IoT Hub egy kétirányú kommunikációs központ az IoT-alkalmazások és az eszközök között. Ez egy skálázható szolgáltatás, amely lehetővé teszi a teljes körű IoT-megoldásokat azáltal, hogy biztonságos kommunikációt, üzenet-útválasztást, integrációt biztosít más Azure-szolgáltatásokkal, valamint felügyeleti funkciókat biztosít az eszközök vezérléséhez és konfigurálásához.
Azure Event Hubs egy nagy léptékű betöltési szolgáltatás, amely telemetriai adatokat gyűjt egyidejű forrásokból rendkívül nagy átviteli sebességgel.
A HDInsight-alapú Apache Kafka egy felügyelt szolgáltatás, amely az Apache Kafkát üzemelteti. Az Apache Kafka egy nyílt forráskódú elosztott streamelési platform, amely üzenetközvetítő funkciókat is biztosít. Az üzemeltetett szolgáltatás 99,9%-os szolgáltatói szerződéssel (SLA) rendelkezik a Kafka üzemidejéről.
Az adatok feldolgozása és tárolása
Az IoT-alkalmazások kihívást jelentenek, mivel eseményvezérelt rendszerek, amelyeknek az előzményadatok megőrzésére és működtetésére is szükségük van. A bejövő adatok egy hozzáfűző típusú adatok, és nagy méretűek lehetnek. Az adatokat hosszabb ideig kell megőrizni, elsősorban az alábbi okok miatt: archiválás, kötegelt elemzés és gépi tanulási (ML) modellek létrehozása. Az eseménystream azonban elengedhetetlen a közel valós idejű elemzéshez az anomáliák észleléséhez, a gördülő időablakok mintázatainak felismeréséhez vagy riasztások aktiválásához, ha az értékek túllépnek egy küszöbértéket. A Microsoft Azure IoT-referenciaarchitektúrája ajánlott adatfolyamot biztosít az eszközökről a felhőbe irányuló üzenetekhez és eseményekhez egy Lambda architektúrát használó IoT-megoldásban. A Lambda architektúra lehetővé teszi a közel valós idejű, streamelt és az archivált adatok elemzését is, ami a legjobb választás a bejövő adatok feldolgozásához.
Lambda architektúra
A Lambda architektúra úgy oldja meg ezt a problémát, hogy két adatfolyam-útvonalat hoz létre. A rendszerbe érkező összes adat ezen a két útvonalon halad végig:
- A kötegelt réteg (ritka elérésű útvonal) az összes bejövő adatot nyers formában tárolja, és kötegelt feldolgozást végez az adatokon. Ennek eredményét kötegelt nézetben tárolja a rendszer. Ez egy lassú feldolgozási folyamat, amely összetett elemzéseket hajt végre, például több forrásból származó adatokat kombinál, hosszabb ideig (órák, napok vagy hosszabbak), és új információkat hoz létre, például jelentéseket, gépi tanulási modelleket stb.
- A sebességréteg (meleg elérési út) valós időben elemzi az adatokat. A réteg késése minimális, ám az eredmények kevésbé pontosak. Ez egy gyorsabb feldolgozási folyamat, amely archiválja és megjeleníti a bejövő üzeneteket, és elemzi ezeket a rekordokat, amelyek rövid távú kritikus információkat és műveleteket, például riasztásokat hoznak létre.
- A kötegréteg egy "kiszolgáló rétegbe" kerül, amely válaszol a lekérdezésekre. A kötegelt réteg indexeli a batch nézetet a hatékony lekérdezés érdekében. A gyors réteg növekményes frissítésekkel frissíti a kiszolgálóréteget a legújabb adatok alapján.
Az alábbi képen öt blokk látható, amelyek az átalakítás fázisait jelölik. Az első blokk az adatfolyam, amely párhuzamosan táplálja a sebességréteget és a kötegréteget. Mindkét réteg táplálja a kiszolgáló réteget, a sebességréteg és a kiszolgáló réteg egyaránt táplálja az elemzési ügyfelet.

Az Azure platform különböző szolgáltatásokat nyújt, amelyek az architektúra implementálásához használhatók. Az alábbi ábra bemutatja, hogyan képezhetők le ezek a szolgáltatások a implementálásukhoz. Az ábrán az átalakítás öt fázisa látható, amelyek mindegyik szakasza releváns Azure-technológiákat tartalmaz. A sötétebb színű mezők azt jelzik, hogy több lehetőség is rendelkezésre áll a feladatok végrehajtásához.

A sebességréteg adatbetöltési szolgáltatásának lehetőségeit az előző, "Az adatfolyam betöltése" című szakasz ismerteti.
A HDInsighton futó Apache Kafka szolgáltatással az adatbetöltési szolgáltatás és a streamfeldolgozás is implementálhatja az adatfolyamot.
Használja az Azure Stream Analyticset (ASA), ha Event Hubsot használ az adatbetöltési szolgáltatáshoz. Az Azure Stream Analytics egy eseményfeldolgozó motor, amely lehetővé teszi az eszközökről streamelt nagy mennyiségű adat vizsgálatát. A bejövő adatok származhatnak eszközökről, érzékelőkről, webhelyekről, közösségimédia-hírcsatornákról, alkalmazásokról és egyebekről. A szolgáltatás emellett támogatja az információk adatfolyamokból való kinyerését, illetve a mintázatok és kapcsolatok azonosítását.
A Stream Analytics-lekérdezések az Azure Event Hubba, Azure IoT Hub vagy egy olyan adattárból származó streamelési adatok forrásával kezdődnek, mint a Azure Blob Storage. Stream vizsgálatához hozzon létre egy Stream Analytics-feladatot, amely meghatározza az adatokat streamelő bemeneti forrást. A feladat emellett megad egy transzformációs lekérdezést, amely meghatározza az adatok, minták és kapcsolatok keresésének módját. A transzformációs lekérdezés egy SQL-szerű lekérdező nyelvet használ, amellyel szűrhetők, rendezhetők, összesíthetők és összekapcsolhatók a streamelési adatok egy adott időszakra vonatkozóan.
Meleg elérési út
A dokumentum példaforgatókönyve egy gépi kihasználtságú KPI (amely az útmutató elején jelenik meg). Választhatjuk az adatok naiv értelmezését, és feltételezhetjük, hogy ha a gép adatokat küld, akkor azt felhasználjuk. Előfordulhat azonban, hogy a gép adatokat küld, miközben nem hoz létre semmit (például tétlen vagy karbantartott). Ez egy nagyon gyakori kihívást jelent, amikor megállapításokat próbál kinyerni az IoT-adatokból: a keresett adatok nem érhetők el a kapott adatokban. A példánkban tehát nem kapjuk meg egyértelműen és egyértelműen az adatokat, hogy a gép termel-e vagy sem. Ezért ki kell következtetnünk a kihasználtságot a kapott adatok más adatforrásokkal való kombinálásával, és szabályokat kell alkalmaznunk annak megállapítására, hogy a gép termel-e vagy sem. Ezen túlmenően ezek a szabályok vállalatról vállalatra változhatnak, mivel eltérő értelmezéseik lehetnek a "termelő" fogalmaknak. A meleg elérési út a rendszeren áthaladó adatok elemzéséről szól. Ezt a streamet közel valós időben dolgozzuk fel, mentjük a meleg tárolóba, és leküldjük az elemzési ügyfeleknek.
Azure Event Hubs egy big data streamelési platform és eseménybetöltési szolgáltatás, amely másodpercenként több millió esemény fogadására és feldolgozására képes. Az Event Hubs képes az elosztott szoftverek és eszközök által generált események, adatok vagy telemetria feldolgozására és tárolására. Az eseményközpontokba elküldött adatok bármilyen valós idejű elemzési szolgáltató vagy kötegelési/tárolóadapter segítségével átalakíthatók és tárolhatók. Az Event Hubs tökéletes egyezést biztosít az adatfolyam meleg útvonalának első lépéséhez.
Az alábbi ábrán a sebességréteg szakasza látható. Ez egy eseményközpontból, egy Stream Analytics-példányból és egy adattárból áll a meleg tároláshoz.

Az Azure-platform számos lehetőséget kínál az eseményközpont eseményeinek feldolgozására, azonban a Stream Analytics használatát javasoljuk. A Stream Analytics adatokat is leküldhet a Power BI szolgáltatás a streamelt adatok megjelenítéséhez.
A Stream Analytics nagy méretekben képes összetett elemzéseket végezni, például átfedésmentes/csúsztatásos/átugró ablakokat, streamösszesítéseket és külső adatforrás-illesztéseket. A még összetettebb feldolgozás érdekében a teljesítmény az Event Hubs, a Stream Analytics-feladatok és az Azure-függvények több példányának kaszkádolt használatával bővíthető, ahogy az alábbi ábrán látható.

A meleg tárolás az Azure platform különböző szolgáltatásaival valósítható meg, például Azure SQL Database. Az Azure Cosmos DB használatát javasoljuk. Ez a Microsoft globálisan elosztott, többmodelles adatbázisa. A rugalmas, sémafüggetlen, automatikus indexelés és gazdag lekérdezési felületek előnyeit kihasználó adathalmazok esetében a legjobb megoldás. A Cosmos DB lehetővé teszi a többrégiós, olvasási/írási feladatátvételt, és az automatikus feladatátvétel mellett a manuális feladatátvételt is támogatja. Emellett a Cosmos DB lehetővé teszi, hogy a felhasználó beállítson egy élettartamot (TTL) az adatain, ami automatikussá teszi a régi adatok lejáratát. Javasoljuk, hogy a funkció használatával szabályozza, hogy a rekordok mennyi ideig maradjanak az adatbázisban, így szabályozva az adatbázis méretét.
A Cosmos DB díjszabása a felhasznált tárterületen és a kiépített kérelemegységeken alapul. A Cosmos DB olyan forgatókönyvek esetén a legalkalmasabb, amelyekhez nem szükséges nagy adathalmazokon keresztül összesítő lekérdezés, mivel ezek a lekérdezések több kérelemegységet igényelnek, mint egy alapszintű lekérdezés, például egy eszköz utolsó eseménye.
A Microsoft Power BI olyan szoftverszolgáltatások, alkalmazások és összekötők gyűjteménye, amelyek egymással együttműködve koherens, vizuálisan tetszetős és interaktív megállapításokat hoznak létre az Ön egymástól független adatforrásaiból. A Power BI segítségével naprakész maradhat az Ön számára fontos információkkal. A valós idejű streamelést Power BI használhatja az adatok szolgáltatásba való leküldéséhez. Ez a valós idejű stream valós idejű streamelési adatforrásként szolgálhat a Power BI irányítópult különböző vizualizációihoz.
Ritka elérésű útvonal
A meleg elérési út az a hely, ahol a streamfeldolgozás a minták időbeli felderítése érdekében történik. Szeretnénk azonban a korábbi időszak kihasználtságát is kiszámítani különböző kimutatásokkal és összesítésekkel, például géppel, vonallal, üzemgel, gyártott alkatrészekkel stb. Ezeket az eredményeket egyesíteni szeretnénk a meleg elérésiút-eredményekkel, hogy egységes nézetet jelenítsünk meg a felhasználó számára. A hideg elérési út tartalmazza a kötegréteget és a kiszolgáló rétegeket. A kombináció hosszú távú áttekintést nyújt a rendszerről.
A ritka elérésű útvonal tartalmazza a megoldás hosszú távú adattárát. A kötegréteget is tartalmazza, amely előre kiszámított összesítő nézeteket hoz létre, hogy hosszú időn keresztül gyors lekérdezési válaszokat biztosítson. Az Ehhez a réteghez elérhető technológiai lehetőségek az Azure platformon meglehetősen változatosak.

A Azure Time Series Insights (TSI) egy idősorozat-adatok elemzési, tárolási és vizualizációs szolgáltatása. SQL-szerű szűrést és összesítést biztosít, ezzel enyhítve a felhasználó által definiált függvények szükségességét. A TSI adatokat fogadhat az Event Hubsból, IoT Hub vagy az Azure Blob Storage-ból. A TSI összes adata a memóriában és az SSD-kben van tárolva, így az adatok mindig készen állnak az interaktív elemzésre. Például egy több tízmillió eseményre jellemző összesítés ezredmásodpercben tér vissza. Emellett vizualizációkat is biztosít, például különböző idősorok átfedéseit, irányítópult-összehasonlításokat, akadálymentes táblázatos nézeteket és hőtérképeket. A TSI legfontosabb funkciói a következők:
- Beépített vizualizációs szolgáltatások olyan megoldásokhoz, amelyeknek nem kell azonnal jelentést adniuk az adatokról. A TSI körülbelül 30–60 másodperces késéssel kérdezi le az adatrekordokat.
- Nagy adathalmazok lekérdezésének képessége.
- Tetszőleges számú felhasználó korlátlan számú lekérdezést hajthat végre további költségek nélkül.
A TSI maximális megőrzési ideje 400 nap, a maximális tárolási korlát pedig 3 TB. Ha hosszabb adatmegőrzési időtartamra vagy nagyobb kapacitásra van szüksége, használjon hideg tárolási adatbázist (szükség szerint cserélje le az adatokat TSI-re a lekérdezéshez).
Az IoT-alkalmazások ritka elérésű tárolói idővel biztosan nagy méretűek lesznek. Ez az a hely, ahol az adatok hosszú távon vannak tárolva, és összesítve lesznek az elemzéshez használt Batch-nézetekben. A ML modellek adatait is itt tárolja a rendszer. A ritka elérésű tároláshoz az Azure Storage ajánlott. Ez egy Microsoft által felügyelt szolgáltatás, amely magas rendelkezésre állású, biztonságos, tartós, méretezhető és redundáns felhőtárhelyet biztosít. Az Azure Storage az Azure Blobs (objektumok), a 2. generációs Azure Data Lake Storage, az Azure Files, az Azure Queues és az Azure Tables szolgáltatásokból áll. A ritka elérésű tároló lehet blobok, Data Lake Storage Gen2 vagy Azure Tables., vagy ezek kombinációja.
Az Azure Table Storage egy olyan szolgáltatás, amely strukturált NoSQL-adatokat tárol a felhőben, és séma nélküli kialakítású kulcs-/attribútumtárolót biztosít. Mivel a Table Storage séma nélküli, könnyen adaptálhatja az adatokat az alkalmazás igényeinek megfelelően. A table Storage adatokhoz való hozzáférés számos alkalmazástípus esetében gyors és költséghatékony, és általában alacsonyabb költséggel jár, mint a hasonló adatmennyiségek hagyományos SQL. Egy táblát használunk a mintákhoz, egy táblát pedig az adatfolyamokból érkező eseményekhez. A partíciókulcs kialakítása különösen fontos fogalom; Mindkét tábla az esemény vagy a minta időbélyegének óráját használja. További információt a Table Service adatmodelljét ismertető témakörben talál.
Az IoT-alkalmazás, a Blob Storage, a Azure Files vagy a Azure Data Lake Storage Gen2 által fogadott feldolgozatlan adatokat tartalmazó nagy mennyiségű strukturálatlan adat, például JSON- vagy XML-dokumentumok tárolása a legjobb megoldás.
Az Azure Blob Storage a világ bármely pontjáról elérhető HTTP- vagy HTTPS-kapcsolaton keresztül biztonságosan. A blobtárolóhoz való hozzáférést a szolgáltatás által használt engedélyezési mechanizmusok egyikével kell engedélyezni. A szolgáltatás több replikációs lehetőséget is biztosít: helyileg redundáns, zónaredundáns, georedundáns és olvasási hozzáférés georedundáns. Emellett három hozzáférési szint is rendelkezésre áll, amelyek a legköltséghatékonyabb megoldásokat teszik lehetővé.
Miután az adatok hideg tárolóba kerülnek, létre kell hozni a Lambda-architektúra kiszolgálórétegének kötegelt nézeteit. Azure Data Factory kiváló megoldás a batch-nézetek kiszolgálórétegen való létrehozásához. Ez egy felhőalapú felügyelt adatintegrációs szolgáltatás, amellyel adatvezérelt munkafolyamatokat hozhat létre a felhőben az adatáthelyezés és adatátalakítás vezényléséhez és automatizálásához. A Azure Data Factory használatával olyan adatvezérelt munkafolyamatokat (úgynevezett folyamatokat) hozhat létre és ütemezhet, amelyek különböző adattárakból képesek adatokat beemészteni. Feldolgozhatja és átalakíthatja az adatokat olyan szolgáltatások használatával, mint az Azure HDInsight Hadoop, a Spark és az Azure Databricks. Így gépi tanulási modelleket hozhat létre, és felhasználhatja őket az elemzési ügyfelekkel.
Például az alábbi ábrán látható módon a Data Factory-folyamatok beolvassák az adatokat a fő adattárból. Egy folyamat összegzi és összesíti az adatokat az Azure Data Warehouse egy példányának feltöltéséhez. A Data Factory-folyamat olyan Azure Databricks-jegyzetfüzettevékenységeket is tartalmaz, amelyek ML modellek létrehozásához használhatók.

Azure SQL Database vagy Azure SQL Data Warehouse a legjobb lehetőség a kötegelt nézetek üzemeltetésére. Ezek a szolgáltatások előre kiszámított és összesített nézeteket szolgálnak ki a fő adatokon.
A Azure SQL Database (SQL DB) egy szolgáltatásként nyújtott relációs adatbázis, amely a Microsoft SQL Server adatbázismotor legújabb verzióján alapul. A SQL DB egy nagy teljesítményű, megbízható és biztonságos adatbázis, a segítségével adatvezérelt alkalmazásokat és webhelyeket hozhat létre. Azure-szolgáltatásként nincs szükség az infrastruktúrájának kezelésére. Az adatmennyiség növekedésével a megoldás elkezdhet technikákat használni az adatok összesítésére és tárolására a lekérdezések felgyorsítása érdekében. Az aggregációk előszámítása egy jól ismert technika, különösen a csak hozzáfűző adatok esetében. A költségek kezeléséhez is hasznos.
Azure SQL Data Warehouse számos további funkciót biztosít, amelyek bizonyos esetekben hasznosak lehetnek. Ez egy felhőalapú vállalati adattárház, amely nagymértékben párhuzamos feldolgozást használva gyorsan futtat összetett lekérdezéseket több petabájtnyi adat között. Ha petabájtnyi adatot kell tárolnia, és gyorsan szeretné futtatni a lekérdezéseket, javasoljuk, SQL Data Warehouse.
Az adatok vizualizációja
Ebben a rétegben szeretnénk egyesíteni a két adatfolyamot (meleg és hideg útvonalakat), hogy egységes nézetet jelenítsünk meg az adatokról. Ebben a példában több metrikát használtunk arra, hogy a gép kihasználtságát meleg és hideg útvonalakon is le tudjuk következtetni. Az elemzési szakaszban olyan vizualizációkat biztosítunk, amelyek egyesítik az ezen útvonalakból származó adatokat.
A Microsoft Power BI és Azure Time Series Insights beépített adatvizualizációkat biztosít. A Power BI olyan üzleti elemzési megoldás, amellyel megjelenítheti adatait, és megoszthatja az elemzéseket a szervezeten belül, vagy beágyazhatja őket az alkalmazásba vagy a webhelybe. A Power BI Desktop egy ingyenes és hatékony eszköz a jelentések és azok mögöttes adatforrásainak modellezéséhez. A Power BI vizualizációkat beágyazó alkalmazások az asztali eszköz által készített és a Power BI szolgáltatásban üzemeltetett jelentéseket használják.
A Time Series Elemzések rendelkezik egy adatkezelővel az adatok, valamint a REST lekérdezési API-k megjelenítéséhez és lekérdezéséhez. Emellett egy JavaScript-vezérlőtárat is elérhetővé tesz, amellyel TSI-alapú diagramokat ágyazhat be egyéni alkalmazásokba. Az alábbiakban egy alapszintű hőtérkép nézetet mutatunk be a TSI-n a bejövő adatokhoz, amely közelítően közelíti a gépek kihasználtságát az üzlethelyiségben, csupán a megfigyelt minták számának megtekintésével.
Ha olyan böngészőalapú felhasználói felületre van szüksége, amely több forrásból származó adatokat összesít, a TSI- és Power BI-szolgáltatások is lehetővé teszik a vizualizációs vezérlők beágyazását. Mindkettő REST API-kat (Power BI Rest API, TSI REST API) és JavaScript SDK-kat (Power BI JavaScript SDK, TSI JavaScript SDK) is biztosít, amelyek széles körű testreszabást biztosítanak.
A szoftverminőség alappillérei (PoSQ)
A sikeres felhőalkalmazások a szoftverminőség ezen alappilléreire épülnek: méretezhetőség, rendelkezésre állás, rugalmasság, felügyelet és biztonság. Ebben a szakaszban röviden bemutatjuk ezeket az alappilléreket az egyes összetevőkhöz, ha szükséges. Nem foglalkozunk a rendelkezésre állással, a rugalmasságmal, a felügyelettel és a DevOpsszal, mivel ezek a megvalósítási szinten vannak megoldva, és szeretnénk megemlíteni, hogy az Azure platform széles körű eszközöket biztosít az API-k, eszközök, diagnosztikák és naplózás révén történő megvalósításához. Az említett pilléreken kívül a költséghatékonyságról is szó lesz.
Tekintsük át gyorsan ezeket az alappilléreket:
- A méretezhetőség a rendszer azon képessége, hogy kezelni tudja a megnövekedett terhelést. Az alkalmazásokat két fő módszerrel lehet skálázni. A vertikális skálázás (felskálázás) az erőforrások kapacitásának növelését jelenti, például egy nagyobb méretű virtuális gép használatával. A horizontális skálázás (bővítés) új erőforráspéldányok hozzáadását jelenti, például virtuális gépeket vagy adatbázis-replikákat. A skálázhatósági pillér magában foglalja a teljesítményt és a terhelés kezelésére vonatkozó képességet is.
- A rendelkezésre állás a rendszer működésének és működésének időaránya. Általában az üzemidő százalékában mérik. Az alkalmazáshibák, infrastruktúraproblémák és a rendszerterhelés egyaránt csökkenthetik a rendelkezésre állást. A Microsoft Azure szolgáltatások szolgáltatásiszint-szerződései közzé vannak téve, és elérhetők a szolgáltatásiszint-szerződésekben. A rendelkezésre állás az egyetlen jelentéssel bíró mérőszám a rendszer szintjén. A különálló összetevők hozzájárulnak a rendszer általános rendelkezésre állásához.
- A rugalmasság a rendszer azon képessége, hogy helyreálljon a hibákból, és továbbra is működjön. A rugalmasság célja, hogy az alkalmazás egy hibát követően teljesen működőképes állapotba térjen vissza. A rugalmasság szorosan kapcsolódik a rendelkezésre álláshoz.
- Felügyelet és DevOps. Ez a pillér azokat a működési folyamatokat takarja, amelyek biztosítják egy alkalmazás futását az éles környezetben. Az üzemelő példányoknak megbízhatónak és kiszámíthatónak kell lenniük. Automatizálni kell őket az emberi hibák esélyének csökkentése érdekében. Gyors és rutinszerű folyamatoknak kell lenniük, amelyek nem lassulnak le az új funkciók vagy hibajavítások megjelenésekor. Hasonlóan fontos, hogy ha egy frissítéssel problémák adódnak, a rendszer képes legyen gyorsan visszaállni vagy továbblépni.
- A biztonságnak a megoldások teljes életciklusának fő fókuszpontjának kell lennie, a tervezéstől és a megvalósítástól az üzembe helyezésig és a műveletekig. Az identitáskezelés, az infrastruktúra védelme, az alkalmazásbiztonság, az engedélyezés, az adatelkonvertség és a titkosítás, a naplózás mind olyan átfogó területek, amelyekkel foglalkozni kell.
PoSQ: Az adatok átalakítása adatfolyammá
Méretezhetőség: Két szemszögből közelíthetjük meg a méretezhetőséget. Először is, az összetevő szempontjából, másodszor, a forrásadatokat biztosító rendszer szempontjából.
Minden Azure-szolgáltatás lehetőséget biztosít a vertikális és horizontális skálázásra. Határozottan javasoljuk, hogy a megoldás tervezésekor mérlegelje a méretezhetőségi követelményeket.
Ami a forrásadatokat biztosító rendszereket illeti, ügyelnünk kell arra, hogy ne terheljük túl a rendszert, és alapvetően szolgáltatásmegtagadásos (DoS-) támadást okozunk a rendszeren, ha túl gyakran kérdezzük le őket. Ha lekérdezi a rendszert, ne feledje, hogy a lekérdezési gyakoriság módosításának két hatása van: az adatok részletessége (minél gyakrabban kérdezi le, annál közelebb kerül a valós idejűhez) és a távoli rendszeren létrehozott terhelés.
Biztonság: Ha a távoli rendszerhez szimmetrikus vagy aszimmetrikus kulcsok férnek hozzá, javasoljuk, hogy a titkos kulcsokat az Azure Key Vault tárolja.
PoSQ: Meleg elérési út
Méretezhetőség: Ha a Azure Event Hubs a betöltési alrendszerben használatos, a fő méretezhetőségi mechanizmus az átviteli egységek. Az Event Hubs lehetővé teszi az átviteli egységek statikus vagy automatikus feltöltési funkcióval történő beállítását.
A Stream Analytics streamelési egységei (SU-k) a feladatok végrehajtásához lefoglalt számítási erőforrásokat jelölik. Minél magasabb az SU-k száma, annál több processzor- és memória-erőforrás van lefoglalva a feladathoz. Ez a kapacitás lehetővé teszi, hogy a lekérdezési logikára összpontosítson, és elvonja a hardver felügyeletének szükségességét a Stream Analytics-feladat időben történő futtatásához. A termékváltozatok mellett a lekérdezések megfelelő párhuzamosításával rendkívül fontos a hatékony használatuk.
Az Azure Cosmos DB-implementációkat a megfelelő átviteli sebességű paraméterekkel és megfelelő particionálási kialakítással kell kiépíteni. Az átviteli sebesség kiépítése a tároló vagy az adatbázis szintjén érhető el, és kérelemegységekben (KÉRELEM) kifejezve. A Cosmos DB eszközt biztosít a kérelemegységek becsléséhez. Az átviteli sebesség kiépítése mellett az adatbázis hatékony particionálása is kulcsfontosságú.
Biztonság: Az ügyfelek Azure Event Hubs a közös hozzáférésű jogosultságkódok (SAS)-jogkivonatok és az ügyfél-hitelesítéshez használt esemény-közzétevők kombinációján keresztül férhetnek hozzá. A háttéralkalmazások biztonsága ugyanazokat a fogalmakat követi, mint a Service Bus témakörök. Az Event Hubs biztonsági modelljének részletes leírása az Event Hubs hitelesítési és biztonsági modell áttekintésében található.
A Cosmos DB-adatbázisok biztonságossá tétele szabályozott hozzáférést biztosít az adatokhoz, és titkosítást biztosít inaktív állapotban. További információ: Azure Cosmos DB-adatbázis biztonsága.
Költséghatékonyság: Az Event Hubs díjszabása a termékváltozat (standard vagy prémium) függvénye, valamint a fogadott események milliói, valamint az átviteli egységek. Az optimális kombináció a bejövő üzenetek által diktált adatbetöltési arány alapján érhető el.
A Cosmos DB használata esetén azt javasoljuk, hogy a kérelemegység-kihasználtságon keresztül megfigyelje a tároló optimális használatát. A Cosmos DB rendelkezik az adatmegőrzés szabályozására szolgáló funkcióval is, ahogyan azt korábban említettük, azt javasoljuk, hogy a funkcióval szabályozhassa, hogy a rekordok mennyi ideig maradjanak az adatbázisban, így szabályozva az adatbázis méretét.
PoSQ: Ritka elérésű útvonal
Méretezhetőség: a Azure Time Series Insights (TSI) a "capacity" (kapacitás) nevű metrikával van skálázva, amely a bejövő forgalom sebességére, a tárolási kapacitásra és a termékváltozathoz kapcsolódó költségekre alkalmazott szorzó.
Azure Time Series Insights több termékváltozata is van, amelyek közvetlen hatással vannak a függőleges skálára. A méretarányos részletekért tekintse meg a Azure Time Series Insights környezet megtervezése című dokumentumot. Sok más Azure-szolgáltatáshoz hasonlóan a TSI-t is szabályozni kell a "zajos szomszéd" probléma elkerülése érdekében. A zajos szomszéd egy alkalmazás megosztott környezetben /azure/sql-database/sql-database-service-tiers-vcore? WT.mc_id=iotinsightssoln-docs-ercenk, amely monopolizálja az erőforrásokat, és éhezteti a többi felhasználót. A szabályozás kezeléséhez tekintse meg a TSI dokumentációját .
A tárfiókok méretezhetőségi céljait az Azure Storage méretezhetőségi és teljesítménycélok dokumentálják. Az egyetlen tárfiók kapacitásán túli adatok tárolásának gyakori technikája a több tárfiók közötti particionálás.
Azure SQL Database a vásárlási modelltől (DTU- és virtuálismag-alapú) függően számos lehetőség áll rendelkezésre a méretezhetőség kezelésére, mind függőlegesen, mind vízszintesen. Javasoljuk, hogy további kutatásokkal keresse meg a legjobb megoldást egy jövőbeli megoldáshoz a témakör SQL Database dokumentációjának használatával.
Biztonság: A TSI-környezetek hozzáférési szabályzatokat biztosítanak a felügyeleti hozzáféréshez és az egymástól független adathozzáféréshez. A definiált adatforrásokon kívül más TSI-környezetbe nem lehet közvetlenül adatokat felvenni. A felügyeleti hozzáférési szabályzatok a környezet konfigurálásához kapcsolódó engedélyeket biztosítanak. Az adathozzáférési házirendek a következőkhöz biztosítanak engedélyeket: adatlekérdezések kiadása, referenciaadatok módosítása a környezetben, valamint a környezethez társított mentett lekérdezések és perspektívák megosztása.
Azure Data Factory szolgáltatás több módszert is kínál az adattár hitelesítő adatainak védelmére a felügyelt tárolóban vagy az Azure Key Vault. Az átvitel közbeni adattitkosítás az adattár átvitelétől függ (pl. HTTPS vagy TLS). Az inaktív adatok titkosítása az adattáraktól is függ. További részletekért tekintse meg az Azure Data Factory adatáthelyezési biztonsági szempontjait.
SQL Database számos biztonsági funkciót biztosít az adatokhoz való hozzáféréshez, a monitorozáshoz és a naplózáshoz, valamint az inaktív adatok titkosításához. Részletekért tekintse meg a Security Centert SQL Server adatbázismotorral és Azure SQL Database.
Költséghatékonyság: Minden elemzési megoldás középpontjában a tárolás áll. Az elemzési motoroknak sebességre, hatékonyságra, biztonságra és átviteli sebességre van szükségük az adatmennyiségek ésszerű időn belüli feldolgozásához. A költségek hatékony kezeléséhez olyan mechanizmusok kialakítása, amelyek a lehető legjobban kihasználják a mögöttes platformot az adatok összesítésével és összegzésével, valamint a többplatformos tárolók hatékony használatával. Mivel az Azure egy felhőplatform, vannak módszerek az erőforrások programozott módon történő leszerelésére, újraküldésére és átméretezésére. A Létrehozás vagy frissítés művelet például lehetővé teszi a Azure SQL Database adatbázisméretének módosítását.
Következő lépések
Sok fogalomról volt szó, és szeretnénk az olvasónak kiindulópontot adni, hogy többet tudjon meg, és alkalmazza a technikákat a saját követelményeinek megfelelően. Íme néhány oktatóanyag, amelyekről úgy gondoljuk, hogy erre a célra hasznosak lehetnek.
Az adatok átalakítása adatfolyammá:
- Ütemezés szerint futó logikai alkalmazás létrehozása
- Példakódok a Logic Apps adatműveleteihez
- A Azure Functions egy tárolóban való futtatása az Azure-függvény üzemeltetéséhez több helyen történik. Függvény létrehozása Linuxon egyéni rendszerkép használatával, függvények futtatása bármely platformon, Docker-rendszerképek Azure Functions Runtime-hoz
- Különböző kötések használata Azure Functions
Gyakori elérésű elérési út:
- Az Event Hubs, az Azure Stream Analytics és a Power BI használatát bemutató, végpontok közötti oktatóanyagok. Lásd: Az Azure Event Hubs küldött valós idejű események adatanomáliáinak vizualizációja, valamint Stream Analytics-feladat létrehozása a telefonhívások adatainak elemzéséhez és az eredmények megjelenítéséhez egy Power BI-irányítópulton. -Az Azure Cosmos DB használata a .NET-tel
Ritka elérésű útvonal:
Elemző ügyfelek:

