Detailtelemetriespeicher

Abgeschlossen

IoT-Geräte (Internet der Dinge) generieren viele Daten, die durch den zur Verarbeitung bereiten IoT-Hub von Azure aufgenommen werden. Dieser Datenfluss ist für das Generieren sofortiger Einblicke wichtig. Die Anwendungsvorlage des Connected Field Service-Add-In verarbeitet diesen Datenstrom mithilfe des Azure Stream Analytics-Auftrags. Nach Auswertung und Auslösen von Warnmeldungen werden die Daten standardmäßig nicht zur weiteren Verwendung aufbewahrt.

Während der Bereitstellung des Connected Field Service-Add-Ins können Sie wahlweise eine Option für Power BI aktivieren. Diese Option bewirkt, dass ein zweiter Azure Stream Analytics-Auftrag eine Verbindung zum Azure IoT-Hub herstellt und seine eigene Kopie der Gerätedaten herunterlädt. Diese Daten werden in einminütigen Zeitfenstern zusammengefasst und in einer Azure SQL-Datenbank gespeichert, die dann nach Power BI eingespeist wird und mit Power BI Berichtsvorlage für den Connected Field Service angezeigt werden kann. Auch wenn dieser Ansatz unbegrenzt viel Speicherplatz ermöglicht, wird er dem aktuellen Vorlagenszenario angepasst. Wenn Sie Daten verschiedener Geräte zu unterstützen haben, müssten Sie Ihr eigenes Tabellenformat und Ihre eigenen Berichte erstellen.

Azure IoT-Hub und Azure Event-Hub

Ein Azure IoT-Hub hat mehrere Endpunkte; der primäre Endpunkt erhält detaillierte Gerätedaten (Nachrichten vom Gerät an die Cloud) und ist ein Endpunkt, der mit Azure Event-Hubs kompatibel ist. Daher können Services wie Azure Stream Analytics den Datenstrom verarbeiten. Diese Nachrichten sind auf 256 KB beschränkt. Sie können auch zusätzliche benutzerdefinierte Endpunkte definieren und Nachrichten, die die Filterkriterien erfüllen, an sie weiterleiten lassen. Diese Endpunkte können Azure Storage, Event-Hubs oder Service Bus-Warteschlangen und Service Bus-Themen-Endpunkte sein. Das folgende Bild zeigt ein Beispiel, in dem ein Azure Storage-Endpunkt hinzugefügt wird.

Screenshot eines Beispiels, in dem ein Azure Storage-Endpunkt hinzugefügt wird

Wenn Sie zusätzliche Endpunkte haben, bestimmen IoT-Hub-Routen, welche Nachrichten wohin gesendet werden. Der integrierte Endpunkt des Ereignisses erhält nur Nachrichten, die an keine anderen Endpunkte weitergeleitet werden, es sei denn, Sie fügen eine explizite Regel hinzu. Die Route kann mit einer SQL-ähnlichen Sprache gefiltert werden.

Wenn wir beispielsweise eine Kopie jeder Nachricht in Azure Storage speichern möchten, sehen die IoT-Hub-Routen folgendermaßen aus, um sicherzustellen, dass beide Endpunkte jede Nachricht vom Gerät empfangen.

Screenshot beider Endpunkte, die jede Nachricht vom Gerät erhalten

Speichertypen

Um die Diskussion auf ein höheres Niveau zu heben, werfen wir einen Blick zurück auf den gesamten Datenfluss durch unsere IoT-Lösung. Eine der Kategorisierungen, die die Azure IoT-Referenzarchitektur durchführt, ist die Betrachtung der Datenspeicherung entweder als „warm“ oder „kalt“. Der warme Speicher muss Zugriff auf relativ aktuelle Daten haben, bei denen eine geringe Latenzzeit für den Zugriff auf die Daten besteht. Warm Storage bewahrt die Daten möglicherweise nur für einen Tag, eine Woche oder einen Monat auf. Cold Storage nutzt normalerweise kostengünstige Technologien wie Azure Storage und könnte für die längerfristige Aufbewahrung detaillierter Daten verwendet werden. Cold Storage könnte zum Trainieren zukünftiger Machine Learning-Modelle oder einfach für detaillierte Geräteanalysen in Zukunft verwendet werden.

Azure Stream Analytics

Zuvor befassten wir uns mit der Verwendung von Power BI. Die Vorlage verwendet aber eine Azure SQL-Datenbank als Speicher. Ein anderer Ansatz, der eher dem Konzept des „warmen“ Speichers entspricht, wäre einfach die Erstellung einer weiteren Ausgabe im Stream Analytic-Auftrag, der direkt in Power BI geschrieben wurde. Hierbei handelt es sich um eine der Funktionen von Azure Stream Analytics. Mit diesem Ansatz erhalten Sie eine Echtzeitansicht der Daten in Power BI, die jedoch automatisch durch die Kapazität begrenzt sind. Dieser Ansatz weist eine Begrenzung von 200.000 Datensätzen auf. Die Datensätze werden nach der FIFO (First in, first out)-Methode aufbewahrt.

Stream Analytics kann auch in Azure Cosmos DB ausgegeben werden. Dies ist ein weiterer Ansatz, den Sie zum Speichern der detaillierten Daten verwenden könnten. Bei diesem Ansatz werden die Daten in der Azure Cosmos DB vom Stream Analytics-Auftrag persistiert. Sie können diese Daten außerdem mit der Dynamics 365-ID für die Kundenanlage erweitern. Auf diese Weise können Sie den virtuellen Entitätsanbieter für Dynamics 365 Azure Cosmos DB verwenden, um die Detailtelemetrie für die modellgestützten Benutzerfreundlichkeit einzublenden. Daher können die detaillierten Gerätedaten im Kontext der Betrachtung der IoT-Warnung oder von Kundenanlagendatensätzen in Dynamics 365 Field Service angezeigt werden.

Da Sie die Connected Field Service-Vorlagenanwendung für Ihre speziellen Anforderungen anpassen möchten, sollten Sie den Speicher und Verarbeitungsfluss der aufgenommenen detaillierten Gerätedaten berücksichtigen. Es gibt viele Erweiterungspunkte vom IoT-Hub zum Stream Analytics-Auftrag, an denen Sie Detaildaten abrufen und speichern können, die für spätere Analysen nützlich sind oder die sofort angezeigt werden, damit die Mitarbeiter auf IoT-Warnungen reagieren können.