Geodatenverarbeitung mit Node-RED

Sebastian Bechtold

Playlists: 'fossgis2021' videos starting here / audio

Node-RED, ein Open-Source-Tool für visuelle Programmierung, ist v.a. im IoT-Bereich zur Verarbeitung von Sensordaten beliebt. Erweiterungen für typische GIS-Aufgaben gibt es bisher kaum. Wir haben eine Sammlung sogenannter „Nodes“ (Funktionsblöcke für Node-RED) in TypeScript entwickelt, die Node-RED u.a. an GeoServer, OSM Overpass und CKAN anbinden und verschiedene einfache Operationen auf Geodatensätzen ermöglichen.

Node-RED, ein Open-Source-Tool für visuelle Programmierung, ist v.a. im IoT-Bereich zur Verarbeitung von Sensordaten beliebt. Erweiterungen für typische GIS-Aufgaben gibt es bisher kaum. Wir haben eine Sammlung sogenannter „Nodes“ (Funktionsblöcke für Node-RED) in TypeScript entwickelt, die Node-RED u.a. an GeoServer, OSM-Overpass und CKAN anbinden und verschiedene einfache Operationen auf Geodatensätzen ermöglichen.

Grundlage dieser Implementierungen ist eine ebenfalls von uns entwickelte Bibliothek zur einfachen Erstellung von Node-RED-Erweiterungen in TypeScript, die wir in diesem Vortrag ebenfalls kurz vorstellen möchten. Diese Bibliothek stellt eine abstrakte TypeScript-Basisklasse für Node-RED-Funktionsblöcke („Nodes“) mit Typendefinitionen für die wichtigsten Elemente der Node-RED-Extension-API sowie einigen nützlichen Hilfsfunktionen bereit. Alle von uns entwickelten GIS-“Nodes“ bauen darauf auf.

Unsere OSM-Overpass-Nodes ermöglichen den Download von OpenStreetMap-Daten und deren Speicherung als GeoJSON-Dateien oder direkte Weiterverarbeitung in Node-RED-Datenflüssen, sogenannten „Flows“. Mit den GeoServer-Nodes können Geodatensätze im GeoPackage-Format über die GeoServer-REST-API automatisch auf eine GeoServer-Instanz hochgeladen und als Layer (WMS/WFS) publiziert werden. Verschiedene weitere Nodes implementieren GIS-Operationen wie „Linen und Polygone zu Centroiden“, Konvertierung von GeoJSON nach GeoPackage oder räumliche Filter. Der Funktionsumfang ergibt sich in erster Linie aus den Anforderungen unserer Projekte und wird ständig erweitert.

Download

Embed

Share:

Tags