Azure Event Hubs – Valós idejű adatstreamelési platform natív Apache Kafka-támogatással
Az Azure Event Hubs egy natív felhőbeli adatstreamelési szolgáltatás, amely másodpercenként több millió eseményt képes streamelni, alacsony késéssel, bármilyen forrásból bármilyen célhelyre. Az Event Hubs kompatibilis az Apache Kafkával, és lehetővé teszi a meglévő Kafka-számítási feladatok kódmódosítások nélküli futtatását.
Az Event Hubs streamelési adatok betöltésére és tárolására való használatával a vállalatok kihasználhatják a streamelési adatok hatékonyságát, így értékes elemzéseket nyerhetnek, valós idejű elemzéseket végezhetnek, és reagálhatnak az eseményekre, így javítva az általános hatékonyságot és az ügyfélélményt.
Az Azure Event Hubs az Azure-ra épülő eseménystreamelési megoldások előnyben részesített eseménybetöltési rétege. Zökkenőmentesen integrálható az Azure-on belüli és kívüli adat- és elemzési szolgáltatásokkal, hogy a teljes adatfolyam-folyamatot a következő használati esetek kiszolgálására hozza létre.
- Valós idejű elemzés az Azure Stream Analyticsszel a streamelési adatok valós idejű elemzéseinek létrehozásához.
- Streamelési adatok elemzése és feltárása az Azure Data Explorerrel.
- Hozzon létre saját natív felhőalkalmazásokat, függvényeket vagy mikroszolgáltatásokat, amelyek streamelési adatokon futnak az Event Hubsból.
- Események streamelése sémaérvényesítéssel egy beépített sémaregisztrációs adatbázis használatával a streamelési adatok minőségének és kompatibilitásának biztosítása érdekében.
Főbb funkciók
Apache Kafka az Azure Event Hubsban
Az Azure Event Hubs egy többprotokollos eseménystreamelési motor, amely natív módon támogatja az AMQP, az Apache Kafka és a HTTPs protokollokat. Mivel támogatja az Apache Kafkát, a Kafka-számítási feladatokat kódmódosítás nélkül hozhatja el az Azure Event Hubsba. Nem kell saját Kafka-fürtöket beállítania, konfigurálnia és felügyelnie, és nem kell olyan Kafka-as-service ajánlatot használnia, amely nem natív az Azure-ban.
Az Event Hubs az alapoktól, felhőbeli natív közvetítőmotorként épül fel. Így a Kafka számítási feladatait jobb teljesítménnyel, jobb költséghatékonysággal és működési többletterhelés nélkül is futtathatja.
További információ: Azure Event Hubs for Apache Kafka.
Sémaregisztrációs adatbázis az Azure Event Hubsban
Az Azure Schema Registry az Event Hubsban egy központosított adattárat biztosít az eseménystreamelési alkalmazások sémáinak kezeléséhez. Az Azure Schema Registry minden Event Hubs-névtérhez ingyenesen elérhető, és zökkenőmentesen integrálható a Kafka-alkalmazásokkal vagy az Event Hubs SDK-alapú alkalmazásokkal.
Adatkompatibilitást és konzisztenciát biztosít az eseménykészítők és a fogyasztók között. A sémaregisztrációs adatbázis zökkenőmentes sémafejlődést, érvényesítést és szabályozást tesz lehetővé, valamint elősegíti a hatékony adatcserét és az interoperabilitást.
A sémaregisztrációs adatbázis zökkenőmentesen integrálható a meglévő Kafka-alkalmazásokkal, és számos sémaformátumot támogat, például az Avro- és JSON-sémákat.
További információ: Azure Schema Registry az Event Hubsban.
Streamelési események valós idejű feldolgozása az Azure Stream Analytics használatával
Az Event Hubs zökkenőmentesen integrálható az Azure Stream Analyticsszel a valós idejű streamfeldolgozás érdekében. A beépített kód nélküli szerkesztővel könnyedén fejleszthet Stream Analytics-feladatokat húzással, kód írása nélkül.
Másik lehetőségként a fejlesztők az SQL-alapú Stream Analytics lekérdezési nyelv használatával valós idejű streamfeldolgozást végezhetnek, és számos függvényt használhatnak a streamelési adatok elemzéséhez.
További információkért tekintse meg a tartalomjegyzék Azure Stream Analytics-integrációs szakaszában található cikkeket.
Streamelési adatok feltárása az Azure Data Explorerrel
Az Azure Data Explorer egy teljes mértékben felügyelt platform a big data-elemzéshez, amely nagy teljesítményt nyújt, és lehetővé teszi nagy mennyiségű adat közel valós idejű elemzését. Az Event Hubs és az Azure Data Explorer integrálásával egyszerűen végezhet közel valós idejű elemzéseket és a streamelési adatok feltárását.
További információ: Adatok betöltése egy eseményközpontból az Azure Data Explorerbe , és cikkek ugyanabban a szakaszban.
Gazdag ökoszisztéma– Azure-függvények, SDK-k és Kafka-ökoszisztéma
Valós időben töltheti be, pufferelheti, tárolhatja és dolgozhatja fel a streameket, hogy a gyakorlatban is használható elemzésekhez jusson. Az Event Hubs egy particionált fogyasztói modellt használ, amely lehetővé teszi, hogy több alkalmazás egyszerre dolgozza fel a streamet, és lehetővé teszi a feldolgozás sebességének szabályozását. Az Azure Event Hubs az Azure Functions szolgáltatással is integrálható kiszolgáló nélküli architektúrákhoz.
Az iparági szabványnak megfelelő AMQP 1.0 protokoll és SDK-k széles körű ökoszisztémája számos nyelven elérhető: .NET, Java, Python, JavaScript, egyszerűen megkezdheti a streamek feldolgozását az Event Hubsból. Az összes támogatott ügyfélnyelv alacsony szintű integrációt biztosít.
Az ökoszisztéma zökkenőmentes integrációt biztosít az Azure Functions, az Azure Spring Apps, a Kafka Csatlakozás ors és más adatelemzési platformok és technológiák, például az Apache Spark és az Apache Flink számára.
Rugalmas és költséghatékony eseménystreamelés
Rugalmas és költséghatékony eseménystreamelést tapasztalhat az Event Hubs különböző szintjeinek – például a Standard, a Premium és a Dedikált – széles választékán keresztül. Ezek a lehetőségek biztosítják az adatstreamelési igényeket néhány MB/s-tól több GB/s-ig, így kiválaszthatja a követelményeknek megfelelő tökéletes egyezést.
Méretezhető
Az Event Hubs szolgáltatással megabájtokban kezdheti az adatstreameket, és onnan továbbléphet a giga- és terabájtokra. Az Automatikus felfújás funkció egyike azon számos lehetőségnek, amely lehetővé teszi az átviteli egységek vagy feldolgozási egységek számának skálázását a használati igényeknek megfelelően.
Streamelési adatok rögzítése hosszú távú megőrzéshez és kötegelt elemzéshez
Közel valós időben rögzítheti adatait egy Azure Blob Storage-ban vagy az Azure Data Lake Storage-ban hosszú távú megőrzés vagy mikroköteg-feldolgozás céljából. Ezt a viselkedést ugyanazon a streamen érheti el, amelyet a valós idejű elemzések származtatásához használ. Az eseményadatok rögzítésének beállítása gyors.
How it works
Az Event Hubs egységes eseménystreamelési platformot biztosít az időmegőrzési pufferrel, leválasztva az eseménygyártókat az eseményfelhasználóktól. A gyártók és a fogyasztói alkalmazások több protokollon keresztül nagy léptékű adatbetöltést végezhetnek.
Az alábbi ábra az Event Hubs-architektúra fő összetevőit mutatja be:
Az Event Hubs fő funkcionális összetevői a következők:
- A gyártói alkalmazások az Event Hubs SDK-k vagy bármely Kafka-gyártói ügyfél használatával betölthetnek adatokat egy eseményközpontba.
- A névtér egy vagy több eseményközpont vagy Kafka-témakör felügyeleti tárolója. Az olyan felügyeleti feladatokat, mint a streamelési kapacitás kiosztása, a hálózati biztonság konfigurálása, a geokatasztrófa-helyreállítás engedélyezése stb. a névtér szintjén kezelik.
- Event Hub/Kafka témakör: Az Event Hubsban eseményközpontba vagy Kafka-témakörbe rendezheti az eseményeket. Csak hozzáfűző, elosztott napló, amely egy vagy több partícióból állhat.
- A partíciók egy eseményközpont skálázására szolgálnak. Olyanok, mint a sávok az autópályán. Ha több streamelési átviteli sebességre van szüksége, további partíciókat kell hozzáadnia.
- A fogyasztói alkalmazások az eseménynaplóban való kereséssel és a fogyasztói eltolódás fenntartásával használnak fel adatokat. A fogyasztók lehetnek Kafka fogyasztói ügyfelek vagy Event Hubs SDK-ügyfelek.
- A Fogyasztói csoport a fogyasztói példányok logikai csoportja, amely egy eseményközpont/Kafka-témakör adatait olvassa be. Lehetővé teszi, hogy több felhasználó egymástól függetlenül, a saját tempójukban és saját eltolásukkal olvassa be ugyanazt a streamelési adatot egy eseményközpontban.
Következő lépések
Az Event Hubs használatának megkezdéséhez tekintse meg az alábbi rövid útmutatókat.
Adatok streamelése az Event Hubs SDK(AMQP) használatával
Az alábbi minták bármelyikével SDK-kkal streamelheti az adatokat az Event Hubsba.
- .NET Core
- Java
- Spring
- Python
- JavaScript
- Go
- C (csak küldés)
- Apache Storm (csak fogadás)
Adatok streamelése az Apache Kafka használatával
Az alábbi minták segítségével adatokat streamelhet a Kafka-alkalmazásokból az Event Hubsba.
Sémaérvényesítés a sémaregisztrációs adatbázissal
Az Event Hubs sémaregisztrációs adatbázisa segítségével sémaellenőrzést végezhet az eseménystreamelési alkalmazásokhoz.