Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan streamelheti az adatokat az Event Hubsba, és hogyan dolgozhatja fel őket az Azure Stream Analytics használatával. Végigvezeti a következő lépéseken:
- Hozzon létre egy Event Hubs-névteret.
- Hozzon létre egy Kafka-ügyfelet, amely üzeneteket küld az eseményközpontnak.
- Hozzon létre egy Stream Analytics-feladatot, amely adatokat másol az eseményközpontból egy Azure Blob Storage-ba.
Nem kell módosítania a protokoll ügyfeleit, és nem kell saját fürtöket futtatnia, ha az eseményközpont által közzétett Kafka-végpontot használja. Az Azure Event Hubs támogatja az Apache Kafka 1.0-s és újabb verzióját.
Előfeltételek
A rövid útmutató elvégzéséhez győződjön meg arról, hogy teljesülnek az alábbi előfeltételek:
- Egy Azure-előfizetés. Ha még nincs előfizetése, hozzon létre egy ingyenes fiókot, mielőtt hozzákezd.
- Java fejlesztői készlet (JDK) 1.7+.
- Töltsd le és telepítsd a Maven bináris archívumot.
- Git
- Egy Azure Storage-fiók. Ha nem rendelkezik ilyen eszközzel, hozzon létre egyet , mielőtt továbblép. Az útmutatóBan szereplő Stream Analytics-feladat egy Azure Blob Storage-tárolóban tárolja a kimeneti adatokat.
Event Hubs-névtér létrehozása
Event Hubs-névtér létrehozásakor a névtér Kafka-végpontja automatikusan engedélyezve lesz. A Kafka protokollt használó alkalmazásokból eseményeket streamelhet eseményközpontokba. Az Event Hubs-névtér létrehozásához kövesse az Eseményközpont létrehozása az Azure Portallal című témakör részletes utasításait. Ha dedikált fürtöt használ, tekintse meg a Névtér és eseményközpont létrehozása dedikált fürtben című témakört.
Megjegyzés
A Kafkához készült Event Hubs nem támogatott az alapszinten .
Üzenetek küldése a Kafkával az Event Hubsban
Klónozza az Azure Event Hubs for Kafka-adattárat a gépére.
Keresse meg a mappát:
azure-event-hubs-for-kafka/quickstart/java/producer
.Frissítse a gyártó konfigurációs adatait a következő helyen
src/main/resources/producer.config
: . Adja meg az eseményközpont névteréneknevét és kapcsolati sztringét.bootstrap.servers={EVENT HUB NAMESPACE}.servicebus.windows.net:9093 security.protocol=SASL_SSL sasl.mechanism=PLAIN sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="{CONNECTION STRING for EVENT HUB NAMESPACE}";
Navigáljon,
azure-event-hubs-for-kafka/quickstart/java/producer/src/main/java/
és nyissa meg TestDataReporter.java fájlt egy tetszőleges szerkesztőben.Fűzzön megjegyzést a következő kódsorhoz:
//final ProducerRecord<Long, String> record = new ProducerRecord<Long, String>(TOPIC, time, "Test Data " + i);
Adja hozzá a következő kódsort a megjegyzésben szereplő kód helyett:
final ProducerRecord<Long, String> record = new ProducerRecord<Long, String>(TOPIC, time, "{ \"eventData\": \"Test Data " + i + "\" }");
Ez a kód JSON formátumban küldi el az eseményadatokat. Amikor bemenetet konfigurál egy Stream Analytics-feladathoz, a JSON-t kell megadnia a bemeneti adatok formátumaként.
Futtassa a producer-t, és streamelje az Event Hubs-be. Windows rendszerű gépen, amikor Node.js parancssort használ, először váltson abba a
azure-event-hubs-for-kafka/quickstart/java/producer
mappába, mielőtt futtatná ezeket a parancsokat.mvn clean package mvn exec:java -Dexec.mainClass="TestProducer"
Ellenőrizze, hogy az eseményközpont megkapja-e az adatokat
Válassza az Event Hubs lehetőséget azENTITÁSOK területen. Ellenőrizze, hogy megjelenik-e egy teszt nevű eseményközpont.
Győződjön meg arról, hogy üzenetek érkeznek az eseményközpontba.
Eseményadatok feldolgozása Stream Analytics-feladattal
Ebben a szakaszban egy Azure Stream Analytics-feladatot hoz létre. A Kafka-ügyfél eseményeket küld az eseményközpontba. Létrehozhat egy Stream Analytics-feladatot, amely bemenetként veszi fel az eseményadatokat, és egy Azure Blob Storage-ba nyitja ki azokat. Ha nem rendelkezik Azure Storage-fiókkal, hozzon létre egyet.
A Stream Analytics-feladat lekérdezése elemzés nélkül halad át az adatokon. Létrehozhat egy lekérdezést, amely átalakítja a bemeneti adatokat, hogy a kimeneti adatokat más formátumban vagy a szerzett megállapításokkal hozza létre.
Stream Analytics-feladat létrehozása
- Válassza a + Erőforrás létrehozása lehetőséget az Azure Portalon.
- Válassza az Elemzés lehetőséget az Azure Marketplace menüjében, majd válassza a Stream Analytics-feladatot.
- Az Új Stream Analytics lapon hajtsa végre a következő műveleteket:
Adja meg a feladat nevét .
Válassza ki előfizetését.
Válassza a Create new for the resource group ( Új létrehozása az erőforráscsoporthoz ) lehetőséget, és adja meg a nevet. Egy meglévő erőforráscsoportot is használhat .
Válassza ki a feladat helyét .
A feladat létrehozásához válassza a Létrehozás lehetőséget.
Feladatbemenet konfigurálása
Az értesítési üzenetben válassza az Erőforrás megnyitása lehetőséget a Stream Analytics-feladatlap megtekintéséhez.
A bal oldali menü JOB TOPOLOGY szakaszában válassza a Bemenetek lehetőséget.
Válassza a Streambemenet hozzáadása lehetőséget, majd az Event Hub-ot.
Az Event Hub bemeneti konfigurációs lapján hajtsa végre a következő műveleteket:
Adja meg a bemenet aliasát .
Válassza ki az Azure-előfizetését.
Válassza ki a korábban létrehozott eseményközpont-névteret .
Válassza ki a teszt lehetőséget az eseményközpont számára.
Válassza az Mentésgombot.
Feladatkimenet konfigurálása
- Válassza a Kimenetek lehetőséget a menü JOB TOPOLOGY szakaszában.
- Válassza a + Hozzáadás lehetőséget az eszköztáron, és válassza a Blob Storage lehetőséget
- A Blob Storage kimeneti beállításainak lapján hajtsa végre a következő műveleteket:
Adja meg a kimenet aliasát .
Válassza ki az Azure-előfizetését.
Válassza ki az Azure Storage-fiókját.
Adja meg annak a tárolónak a nevét , amely a Stream Analytics-lekérdezésből tárolja a kimeneti adatokat.
Válassza az Mentésgombot.
Lekérdezés definiálása
Miután beállított egy Stream Analytics-feladatot a bejövő adatfolyamok olvasásához, a következő lépés egy olyan átalakítás létrehozása, amely valós időben elemzi az adatokat. Az átalakítási lekérdezést a Stream Analytics lekérdezési nyelvével határozhatja meg. Ebben az útmutatóban egy olyan lekérdezést határoz meg, amely átalakítás nélkül halad át az adatokon.
Válassza a lekérdezést.
A lekérdezési ablakban cserélje le
[YourOutputAlias]
a korábban létrehozott kimeneti aliast.Cserélje le
[YourInputAlias]
a korábban létrehozott bemeneti aliasra.Válassza az eszköztár Save (Mentés) elemét.
Stream Analytics-feladat futtatása
Válassza az Áttekintés lehetőséget a bal oldali menüben.
Válassza az Indítás lehetőséget.
A Feladat indítása lapon válassza a Start lehetőséget.
Várja meg, amíg a feladat állapota a kezdésrőla futtatásra változik.
A forgatókönyv tesztelése
Futtassa újra a Kafka-producert, hogy eseményeket küldjön az eseményközpontnak.
mvn exec:java -Dexec.mainClass="TestProducer"
Ellenőrizze, hogy a kimeneti adatok létrejönnek-e az Azure Blob Storage-ban. Megjelenik egy JSON-fájl a tárolóban 100 sorból, amelyek a következő mintasorhoz hasonlóan néznek ki:
{"eventData":"Test Data 0","EventProcessedUtcTime":"2018-08-30T03:27:23.1592910Z","PartitionId":0,"EventEnqueuedUtcTime":"2018-08-30T03:27:22.9220000Z"} {"eventData":"Test Data 1","EventProcessedUtcTime":"2018-08-30T03:27:23.3936511Z","PartitionId":0,"EventEnqueuedUtcTime":"2018-08-30T03:27:22.9220000Z"} {"eventData":"Test Data 2","EventProcessedUtcTime":"2018-08-30T03:27:23.3936511Z","PartitionId":0,"EventEnqueuedUtcTime":"2018-08-30T03:27:22.9220000Z"}
Az Azure Stream Analytics-feladat bemeneti adatokat kapott az eseményközponttól, és ebben a forgatókönyvben az Azure Blob Storage-ban tárolta őket.
Következő lépések
Ebben a cikkben megtanulta, hogyan streamelhet az Event Hubsba anélkül, hogy módosítaná a protokollklienseket vagy saját fürtöket futtatna. Az Apache Kafkához készült Event Hubsról további információt az Azure Event Hubshoz készült Apache Kafka fejlesztői útmutatójában talál.