In dieser 4-teiligen Blogreihe widmen wir uns genauer dem ArcGIS GeoEvent Server. An einem konkreten Anwendungsbeispiel werden wir den Weg von der Datenintegration bis zur Veröffentlichung einer interaktiven Kartenanwendung Schritt für Schritt gemeinsam durchgehen. Im ersten Teil möchten wir zunächst die grundlegenden Aspekte der Arbeit mit Echtzeitdaten erklären sowie den Use Case vorstellen, den wir in den weiteren Teilen gemeinsam technisch umsetzen.
Echtzeitdaten und Anwendungsbeispiele
Die Nutzung von Echtzeitdaten hat in den letzten Jahren erheblich an Bedeutung gewonnen. Dank Echtzeitinformationen, die durch verschiedene IoT Sensoren gesendet werden, können wir in deutlich effizienter handeln, sobald wir rechtzeitig darüber informiert werden.
Echtzeitdaten sind Daten, die in dem Moment dargestellt und analysiert werden, in dem sie erfasst werden. Die Erfassung findet durch Sensoren und IoT Geräte statt. Daher sind Echtzeitdaten eventbasiert. Dies bedeutet, dass jede Messung eines Sensors wird als Event verarbeitet und sofort an den Nutzenden weitergeleitet.
Generell wird zwischen mehreren Arten von Echtzeitdaten unterschieden:
- Bewegende Objekte wie Flugzeuge, Schiffe, Fahrzeuge, Tiere, Stürme oder Menschen
- Stationäre Objekte ohne Bewegungsfaktor wie z.B. Wetterstationen, Pegelstellen oder Stationen zur Messung der Luftqualität usw.
- Ereignisse, die spontan passieren. Darunter zählen z.B. Unfälle, Verbrechen, Blitzschläge oder auch Social-Media-Posts.
Bereits aus diesen Beispielen schweben mir verschiedene Anwendungsfälle im Kopf: Wo ist gerade ein Unfall passiert und welches der Einsatzfahrzeuge ist am nächsten zum Einsatzort? Wo und wann im Stromnetzwerk hat die Spannung plötzlich abgenommen? Wie groß ist der Aktionsradius der des getrackten Viehbestandes? Wo tritt ein Hochwasserereignis auf und wie hoch ist das Pegelniveau dort gerade? Wie sehen, dass es verschiedene Bereiche gibt, wo der Einsatz von Echtzeitdaten sinnvoll ist.
Ob Sicherheitsinfrastruktur und Katastrophenschutz oder Verkehr und Baustellenmanagement bis hin zum Umweltschutz – überall tragen Sensoren zu einer besseren, datenbasierten Entscheidung bei. Dabei ist es oft wichtig nicht nur zu wissen, dass ein Ereignis aufgetreten ist, sondern auch wo dieses stattgefunden hat. Damit die richtigen Entscheidungspersonen und Einsatzkräfte schnellstmöglich benachrichtigt werden.
Für andere Anwendungsfälle bietet das Speichern dieser Daten als Zeitreihe und deren Analyse Aufschlüsse über zeit-räumliche Muster. So können wir erkennen, ob ein Ereignis regelmäßig auftritt oder eine besondere Situation darstellt.
Wichtige Funktionalitäten im Echtzeitkontext
Alle oben beschrieben Use Cases müssen natürlich technisch umgesetzt werden. Hier können unterschiedliche technologische Lösungen zum Einsatz kommen, aber folgende Funktionalitäten sind in jedem Anwendungsfall essenziell:
- Integration der Sensordaten. Es gibt viele verschiedene Protokolle und Datenformate, über die Echtzeitdatenströme bereitgestellt werden. Ein System soll in der Lage sein, Echtzeitdaten in jeder Form zu empfangen und diese auf ein einheitliches Format für die weitere Verarbeitung zu bringen. Darüber hinaus ist es von Vorteil, wenn im System auch andere Daten vorhanden sind, die die Echtzeitdaten mit weiteren Informationen anreichern können.
- Räumliche Echtzeitanalyse und Benachrichtigungen. Meistens ist es nicht ausreichend die Daten nur einzulesen, sondern wir wollen die Daten auch sofort in Echtzeit analysieren und entsprechende Benachrichtigungen aussenden: Wo hat ein Sensor den Grenzwert überschritten? Wie viele Schiffe befinden sich gerade in diesem Bereich und wie lange verweilen sie dort? Wie viele Busse sind in meiner Stadt gerade verspätet? Der große Mehrwert im Real-Time GIS ist hierbei die Berücksichtigung der räumlichen Komponenten z.B. als GeoFences.
- Speicherung und Analyse der raum-zeitlichen Muster. In sehr vielen Fällen ist es sinnvoll, den Analyseoutput zu speichern, um diese im Nachgang zu analysieren. Durch die Analyse werden raum-zeitliche Muster aufgedeckt, wodurch ganz neue Erkenntnisse entstehen. Echtzeitdaten sind allerdings dafür prädestiniert, sehr große Datenmengen zu verursachen. Meistens befinden wir uns damit im Bereich der Big Data. Dementsprechend ist es auch wichtig, dass ein System eine effiziente Speicher- und Analysemöglichkeit für große Mengen an Geodaten zur Verfügung stellt.
- Bereitstellung der Daten und Visualisierung der Analyseergebnisse. Da prinzipiell jeder Sensor einen Raumbezug hat, ist die Visualisierung der Daten auf einer Karte am anschaulichsten. Deshalb bringen interaktive Kartenanwendungen und Dashboards viele Vorteile mit sich, weil wir sofort wissen, wo ein Ereignis aufgetreten ist und gleichzeitig alle notwendigen Informationen über die Attribute abrufen können. Zusätzlich müssen in kritischen Situationen entsprechende Personen über Drittsysteme benachrichtigt werden, um sofort Maßnahmen einleiten zu können.
Wichtige Überlegungen für die Planung der Echtzeitlösung
Bei der Planung Ihrer IoT Anwendung stellen sich außerdem auch weitere Fragen:
- Wie schnell sollen Daten ankommen? Einige Sensoren senden Daten jede Sekunde oder alle paar Sekunden, während andere Sensoren beispielsweise alle fünf Minuten Daten übermitteln. Im ersten Fall handelt es sich um Echtzeitinformationen, vor allem hier ist der Einsatz von GeoEvent Server sinnvoll. Im zweiteren Fall um Nah-Echtzeitdaten, die Sie auch z.B. mit einem ArcGIS Notebook regelmäßig abfragen können.
- Welches Datenvolumen wird erwartet? Schätzen Sie im Vorfeld ab, wie viele Events pro Sekunde ankommen werden, um die Speicheroptionen besser zu planen. Bei hochfrequentiertem Datenfluss kann das Speichervolumen sehr schnell wachsen, was Konsequenzen für die spätere Auswertung hat.
- Welche Datenprotokolle werden verwendet? Bestimmen Sie nach Möglichkeit im Vorfeld über welche Schnittstelle und in Welchen Format Sensordaten bereitgestellt werden. Im GeoEvent Manager und in der Add-On Gallery stehen Ihnen viele fertige Konnektoren für die gängigen Protokolle wie http, WebSockets, MQTT, Kafka usw. und Datenformate wie JSON, GeoJSON, Text, XML oder RSS zur Verfügung. Sie können aber mit dem mitgelieferten SDK auch eigene Konnektoren problemlos erstellen.
- Welche zusätzlichen Daten benötige ich? Die Echtzeitdaten können auch on-the-fly mit Daten aus Ihren bereits existierenden Daten in Form eines Feature Layers oder einer CSV-Tabelle angereichert werden. Außerdem können Sie auch kostenfreie Daten aus dem ArcGIS Living Atlas, wie z.B. Live-Daten zur Verkehrslage, Pegelinformationen oder Luftverschmutzung, für Ihre Analysen (ob in Echtzeit oder nachgelagert) nutzen um Ihre Ereignisse besser in Kontext zu setzen.
ArcGIS GeoEvent Server als Werkzeug für die Echtzeitdaten
Mit ArcGIS haben Sie zwei Möglichkeiten Echtzeitdaten zu verarbeiten: mithilfe von ArcGIS GeoEvent Server oder ArcGIS Velocity. ArcGIS GeoEvent Server ist ein optionaler Server für ArcGIS Enterprise und somit unsere on-premise Lösung. ArcGIS Velocity ist eine Erweiterung für ArcGIS Online und unsere SaaS Lösung für Echtzeitdaten (mehr über ArcGIS Velocity können Sie in diesem Blogbeitrag nachlesen).
Der GeoEvent Server kann hochfrequentierte Datenströme in unterschiedlichsten Formaten von verschiedensten Quellen in Echtzeit empfangen, diese auf ein einheitliches Datenschema zu bringen und in verschiedenen Formaten weitersenden.
Zu den Hauptstärken von ArcGIS GeoEvent Server gehört die Möglichkeit der unmittelbaren räumlichen Analyse und der Durchführung von Aktionen sofort in Echtzeit. Beim Eintreten einer definierten Bedingung kann dabei eine oder mehrere Aktionen ausgeführt werden. Als Bedingung kann z.B. das Überschreiten eines Sensorwerts oder das Verlassen bzw. Betreten von definierten Gebieten (sog. Geofencing) gelten. Mithilfe von GeoEvent Server können die Echtzeitdaten sowie die Analyseergebnisse in einem Datastore gespeichert werden, welcher extra für große Datenmengen konzipiert wurde. Auf diese Weise können Sie Ihre Daten auch nachträglich analysieren, um zusätzliche Erkenntnisse zu gewinnen.
Somit eignet sich der GeoEvent Server hervorragend für vielfältige Fragestellungen, die in erster Linie mit Echtzeitdaten und deren Analyse zu tun haben.
Sie wollen tiefer in die Welt der Geospatial Analytics eintauchen?
Geospatial Analytics – die Verbindung von Data Science und räumlichen Daten – spielt eine entscheidende Rolle bei der Enthüllung von Mustern, Trends und Zusammenhängen, die in herkömmlichen Analysen oft verborgen bleiben.
In unserem E-Book erfahren Sie im Detail, welche Chancen und Möglichkeiten Ihnen Geoanalysen bieten.
Use Case
In den nächsten Teilen dieser Blogreihe werden wir untersuchen, wie wir Echtzeitdaten mit dem GeoEvent Server einbinden (Teil 2), prozessieren (Teil 3) sowie Ergebnisse im Big Data Store speichern und im Portal visualisieren (Teil 4) können.
In unserem fiktiven Use Case möchte der Auftraggeber ein interaktives Dashboard für das Verkehrsmonitoring in Münster erstellen. Dieses Dashboard soll aktuelle Buspositionen auf einer Karte anzeigen, einschließlich Verspätungen, der aktuellen Parksituation sowie Baustellen. Neben der Kartendarstellung soll die aktuelle Anzahl an Bussen und freien Parkplätze sowie durchschnittliche Busverspätung angezeigt werden. Außerdem will der Auftraggeber auch dritte Quellen wie z.B. Live-Bilder und aktuelle Busmeldungen in das Dashboard einbinden.
Als Quelle für die Echtzeitdaten werden wir Daten zu den aktuellen Buspositionen in Münster verwenden, die von den Stadtwerken Münster in Zusammenarbeit mit unserem Partner con terra GmbH als Open Data zur Verfügung stehen.
Für weitere Informationen:
Viele Infos finden Sie in der englischsprachigen Dokumentation für ArcGIS Entersprise und im Community Blog von Esri Inc.
Informationen zu den letzten Neuerungen im GeoEvent Server können Sie in diesem Blog nachlesen Neuerungen im ArcGIS GeoEvent Server | Analytics Solutions.