Zum Hauptinhalt springen

Kontextbroker

Der Kontextbroker ist eine zentrale Komponente der Plattform für Informationen zu einzelnen Objekten, zum Beispiel Sensoren, Parkplätzen, Messstationen oder Anlagen. In der Plattform wird dafür unter anderem Stellio eingesetzt. Die Stärke der Komponente liegt darin, dass zu jedem Objekt der jeweils aktuelle Stand gebündelt bereitsteht. So lässt sich zum Beispiel schnell erkennen, ob ein Parkplatz frei ist, welcher Messwert aktuell vorliegt oder welcher Zustand für eine Anlage gerade gemeldet wird. Gleichzeitig kann auch nachvollziehbar sein, wie sich diese Informationen im Zeitverlauf verändert haben.

Ein Kontextbroker ist vereinfacht gesagt eine zentrale Stelle, an der Informationen zu einzelnen Objekten gesammelt, aktualisiert und bereitgestellt werden. Statt Daten nur als lange Tabellen oder einzelne Dateien abzulegen, werden sie pro Objekt zusammengehalten. Für Nutzende ist vor allem wichtig: Man schaut nicht nur auf einzelne Messwerte, sondern auf das jeweilige Objekt dahinter, etwa einen Sensor, einen Parkplatz oder eine Station.

Die Komponente sammelt Informationen zu einem Objekt an einer Stelle. Wenn neue Daten eintreffen, wird der vorhandene Stand aktualisiert. Andere Systeme können diese Informationen anschließend abrufen und weiterverwenden. In der Praxis bedeutet das: Daten kommen zum Beispiel über eine Schnittstelle oder eine Pipeline in die Plattform, werden dem passenden Objekt zugeordnet und stehen danach in aktueller Form zur Verfügung. Je nach Nutzung der Plattform ist dabei nicht nur der aktuelle Stand relevant, sondern auch der Verlauf über die Zeit. Wichtig ist außerdem: Der Kontextbroker steht nicht losgelöst neben der Datenbank, sondern arbeitet in der Plattform mit Datenbankstrukturen zusammen.

Welche Rolle spielen Smart Data Models?

Smart Data Models sind für Kontextbroker besonders wichtig, weil dort Informationen nicht einfach nur abgelegt, sondern in einer möglichst einheitlichen Struktur beschrieben werden sollen. Sie geben vor, wie typische Objekte wie Sensoren, Parkplätze oder Messstationen aufgebaut sein können, welche Felder üblich sind und wie Informationen benannt werden.

Für die Praxis bedeutet das: Wenn mehrere Datenquellen in denselben Kontextbroker schreiben, helfen Smart Data Models dabei, dass ähnliche Inhalte auch ähnlich aussehen. Dadurch wird es einfacher, Daten wiederzuverwenden, zwischen Projekten zu vergleichen und Anwendungen auf denselben Datenbestand aufzubauen.

Gerade beim Kontextbroker ist das wichtig, weil hier häufig unterschiedliche Quellen zusammenlaufen. Ohne einheitliche Modellierung entstehen schnell viele ähnliche, aber unterschiedlich benannte Objekte und Felder. Smart Data Models helfen dabei, diese Abstimmung nicht jedes Mal neu erfinden zu müssen.

Wann nutze ich sie und wann eher nicht?

Du nutzt den Kontextbroker dann, wenn sich Daten gut auf einzelne Objekte beziehen lassen und der aktuelle Stand wichtig ist. Das ist häufig der Fall bei Sensoren, Füllständen, Belegungen, Zuständen von Anlagen oder digital abgebildeter Infrastruktur. Ebenso ist die Komponente hilfreich, wenn nachvollzogen werden soll, wie sich diese Informationen im Zeitverlauf verändert haben.

Weniger passend ist die Komponente, wenn es vor allem um klassische Tabellenlogik, umfangreiche relationale Auswertungen, Dateien oder Rohdatenablagen geht. In solchen Fällen sind eine direkte Datenbank oder ein S3-Speicher oft die klarere Wahl.

Wie spielt der Kontextbroker mit anderen Komponenten zusammen?

  • Node-RED übernimmt häufig die Integration, Validierung und Transformation vor dem Schreiben in den Kontextbroker
  • Postgres spielt dabei ebenfalls eine Rolle, weil Kontextbroker-Lösungen in der Plattform nicht unabhängig von Datenbankstrukturen gedacht werden, sondern mit ihnen zusammenarbeiten
  • Smart Data Models helfen dabei, Daten einheitlich und verständlich zu strukturieren, damit verschiedene Quellen nicht jeweils ihre eigene Logik mitbringen
  • Grafana, Superset oder andere Auswertungswerkzeuge können indirekt auf bereitgestellte Datenbestände aufsetzen, je nach Gesamtarchitektur
  • aus Nutzersicht zählt hier trotzdem vor allem, dass Informationen pro Objekt gebündelt verwaltet werden statt in klassischen Tabellen

Weiterführende Informationen