Filtern und Erfassen in Azure Data Lake Storage Gen2 mithilfe des No-Code-Editors von Stream Analytics
In diesem Artikel wird beschrieben, wie Sie den No-Code-Editor verwenden können, um einfach einen Stream Analytics-Auftrag zu erstellen. Er liest kontinuierlich aus Ihren Event Hubs, filtert die eingehenden Daten und schreibt dann die Ergebnisse kontinuierlich in Azure Data Lake Storage Gen2.
Voraussetzungen
- Ihre Azure Event Hubs-Ressourcen müssen öffentlich zugänglich sein und dürfen sich nicht hinter einer Firewall oder in einem virtuellen Azure-Netzwerk befinden.
- Die Daten in Ihrer Event Hubs-Instanz müssen entweder im JSON-, CSV- oder Avro-Format serialisiert werden.
Entwickeln eines Stream Analytics-Auftrags zum Filtern und Erfassen von Echtzeitdaten
Suchen Sie im Azure-Portal nach der Azure Event Hubs-Instanz, und wählen Sie sie aus.
Wählen Sie Features>Daten verarbeiten und dann auf der Karte Filtern und in ADLS Gen2 erfassen die Option Starten aus.
Geben Sie einen Namen für den Stream Analytics-Auftrag ein, und wählen Sie dann Erstellen aus.
Geben Sie im Fenster „Event Hubs“ den Serialisierungstyp Ihrer Daten sowie die Authentifizierungsmethode an, die der Auftrag zum Herstellen einer Verbindung mit Event Hubs verwendet. Wählen Sie dann Verbinden aus.
Wenn die Verbindung erfolgreich eingerichtet wurde und Datenströme bei der Event Hubs-Instanz eingehen, werden sofort zwei Dinge angezeigt:
- Felder, die in den Eingabedaten vorhanden sind. Sie können Feld hinzufügen oder das Symbol mit den drei Punkten neben jedem Feld auswählen, um den Typ zu entfernen, umzubenennen oder zu ändern.
- Ein Livebeispiel für eingehende Daten in der Tabelle Datenvorschau unter der Diagrammansicht. Es wird in regelmäßigen Abständen automatisch aktualisiert. Sie können Streamingvorschau anhalten auswählen, um eine statische Ansicht von Beispieleingabedaten anzuzeigen.
- Felder, die in den Eingabedaten vorhanden sind. Sie können Feld hinzufügen oder das Symbol mit den drei Punkten neben jedem Feld auswählen, um den Typ zu entfernen, umzubenennen oder zu ändern.
Wählen Sie die Kachel Filter aus. Wählen Sie im Filterbereich ein Feld aus, um die eingehenden Daten mit einer Bedingung zu filtern.
Wählen Sie die Kachel Azure Data Lake Storage Gen2 aus. Wählen Sie das Azure Data Lake Gen2-Konto aus, um Ihre gefilterten Daten zu senden:
- Wählen Sie im Dropdownmenü das Abonnement, den Speicherkontonamen und den Container aus.
- Wenn das Abonnement ausgewählt wurde, sollten Authentifizierungsmethode und Speicherkontoschlüssel automatisch ausgefüllt werden. Wählen Sie Verbinden.
Weitere Informationen zu den Feldern und Beispiele für das Pfadmuster finden Sie unter Blobspeicher- und Azure Data Lake Gen2-Ausgabe von Azure Stream Analytics.
Wählen Sie optional Statische Vorschau abrufen/Statische Vorschau aktualisieren aus, um die Datenvorschau anzuzeigen, die von Azure Data Lake Storage Gen2 erfasst wird.
Wählen Sie Speichern und anschließend Starten aus, um den Stream Analytics-Auftrag zu starten.
Um den Auftrag zu starten, geben Sie die Anzahl der Streamingeinheiten (SUs) an, mit denen der Auftrag ausgeführt wird. Streamingeinheiten stellen die Menge an Computeressourcen und Arbeitsspeicher dar, die dem Auftrag zugeordnet ist. Es wird empfohlen, mit drei zu beginnen und die Anzahl dann nach Bedarf anzupassen.
Nachdem Sie Starten ausgewählt haben, wird der Auftrag innerhalb von zwei Minuten gestartet, und die Metriken werden unten im Registerkartenabschnitt geöffnet.
Sie können den Auftrag im Abschnitt „Prozessdaten“ auf der Registerkarte Stream Analytics-Aufträge anzeigen. Wählen Sie Aktualisieren aus, bis der Auftragsstatus als Wird ausgeführt angezeigt wird. Wählen Sie Metriken öffnen aus, um den Auftrag je nach Bedarf anzuhalten oder neu zu starten.
Hier sehen Sie eine Metriken-Beispielseite:
Überprüfen von Daten in Data Lake Storage
Die im von Ihnen angegebenen Container erstellten Dateien sollten angezeigt werden.
Laden Sie die Datei herunter, und öffnen Sie sie, um zu bestätigen, dass nur die gefilterten Daten angezeigt werden. Im folgenden Beispiel werden Daten angezeigt, für die SwitchNum auf US festgelegt ist.
{"RecordType":"MO","SystemIdentity":"d0","FileNum":"548","SwitchNum":"US","CallingNum":"345697969","CallingIMSI":"466921402416657","CalledNum":"012332886","CalledIMSI":"466923101048691","DateS":"20220524","TimeType":0,"CallPeriod":0,"ServiceType":"S","Transfer":0,"OutgoingTrunk":"419","MSRN":"1416960750071","callrecTime":"2022-05-25T02:07:10Z","EventProcessedUtcTime":"2022-05-25T02:07:50.5478116Z","PartitionId":0,"EventEnqueuedUtcTime":"2022-05-25T02:07:09.5140000Z", "TimeS":null,"CallingCellID":null,"CalledCellID":null,"IncomingTrunk":null,"CalledNum2":null,"FCIFlag":null} {"RecordType":"MO","SystemIdentity":"d0","FileNum":"552","SwitchNum":"US","CallingNum":"012351287","CallingIMSI":"262021390056324","CalledNum":"012301973","CalledIMSI":"466922202613463","DateS":"20220524","TimeType":3,"CallPeriod":0,"ServiceType":"V","Transfer":0,"OutgoingTrunk":"442","MSRN":"886932428242","callrecTime":"2022-05-25T02:07:13Z","EventProcessedUtcTime":"2022-05-25T02:07:50.5478116Z","PartitionId":0,"EventEnqueuedUtcTime":"2022-05-25T02:07:12.7350000Z", "TimeS":null,"CallingCellID":null,"CalledCellID":null,"IncomingTrunk":null,"CalledNum2":null,"FCIFlag":null} {"RecordType":"MO","SystemIdentity":"d0","FileNum":"559","SwitchNum":"US","CallingNum":"456757102","CallingIMSI":"466920401237309","CalledNum":"345617823","CalledIMSI":"466923000886460","DateS":"20220524","TimeType":1,"CallPeriod":696,"ServiceType":"V","Transfer":1,"OutgoingTrunk":"419","MSRN":"886932429155","callrecTime":"2022-05-25T02:07:22Z","EventProcessedUtcTime":"2022-05-25T02:07:50.5478116Z","PartitionId":0,"EventEnqueuedUtcTime":"2022-05-25T02:07:21.9190000Z", "TimeS":null,"CallingCellID":null,"CalledCellID":null,"IncomingTrunk":null,"CalledNum2":null,"FCIFlag":null}
Überlegungen bei der Verwendung des Georeplikationsfeatures von Event Hubs
Für Azure Event Hubs wurde kürzlich das Feature Georeplikation in der Public Preview eingeführt. Dieses Feature unterscheidet sich vom Feature Georedundante Notfallwiederherstellung von Azure Event Hubs.
Wenn der Failovertyp Erzwungen und die Replikationskonsistenz Asynchron ist, garantiert der Stream Analytics-Auftrag nicht, dass genau eine Ausgabe in Azure Event Hubs erfolgt.
Als Producer mit einem Event Hub als Ausgabe kann in Azure Stream Analytics eine Wasserzeichenverzögerung für den Auftrag während eines Failovers und während der Drosselung durch Event Hubs auftreten, falls die Replikationsverzögerung zwischen dem primären und dem sekundären Replikat die maximale konfigurierte Verzögerung erreicht.
Als Consumer mit Event Hubs als Eingabe kann in Azure Stream Analytics während eines Failovers eine Wasserzeichenverzögerung auftreten, und es können nach dem Abschluss des Failovers Daten übersprungen werden oder doppelte Daten auftreten.
Aufgrund dieser Nachteile empfehlen wir, den Stream Analytics-Auftrag mit entsprechender Startzeit direkt nach Abschluss des Event Hubs-Failovers neu zu starten. Da sich das Georeplikationsfeature von Event Hubs zudem in der Public Preview befindet, wird derzeit nicht empfohlen, dieses Muster für Stream Analytics-Aufträge in der Produktion zu verwenden. Das aktuelle Stream Analytics-Verhalten wird verbessert, bevor das Event Hubs-Georeplikationsfeature allgemein verfügbar ist und in Stream Analytics-Produktionsaufträgen verwendet werden kann.
Nächste Schritte
Erfahren Sie mehr über Azure Stream Analytics und darüber, wie Sie den von Ihnen erstellten Auftrag überwachen.