CIM Cache
Der CIM Cache bietet einen standardisierten Zugriff auf ein integriertes Netzmodell
Allgemeine Beschreibung
Der CIM Cache in der openKONSEQUENZ Plattform bietet einen standardisierten Zugriff auf ein integriertes Netzmodell (z.B. Topologie, Schalterstellungen, letzte Messwerte Einspeiser, Stammdaten Betriebsmittel, Stammdaten, Verbraucher, uvm.)
Eine der Ziele von openKONSEQUENZ ist es, neben der Verbesserung von Qualität, die Kosten der Softwareerstellung und der Integration zu reduzieren. Dies wird im Wesentlich durch zwei Maßnahmen erreicht: konsequente Nutzung und Definition von Standards und Wiederverwendung bereits erstellter, fachlicher Funktionalität.
Einen essentiellen, fachlichen Baustein der openKONSEQUENZ-Plattform stellt der CIM Cache dar. Der CIM Cache, bestehend aus aufeinander abgestimmten Domain-Modules, bietet die konsistente Sicht auf integrierte Netzdatenmodelle an. Dabei ist der CIM Cache bewusst so konzipiert, dass der flexible Einsatz in verschiedene Anwendungsszenarien bzw. User-Modules herstellerübergreifend möglich ist. Durch die modulare Architektur und die flexible Erweiterbarkeit wird der schrittweise Ausbau der openKONSEQUENZ‑Plattform und deren Zukunftsfähigkeit ermöglicht. Beim Aufbau der Netzdatenmodelle hilft der CIM Cache, im Gegensatz zu reinen CIM- bzw. Netzmodell-Datenbanken, die Integration der Daten aus unterschiedlichen Quellsystemen zu vereinfachen und deren Konsistenz sicherzustellen. Anpassbare Regelwerke und Importverfahren erlauben es, netzbetreiber- bzw. unternehmensspezifische Besonderheiten zu berücksichtigen. Damit werden Daten und Informationen so aufbereitet, dass sie direkt openKONSEQUENZ-konform nutzbar sind und durch den CIM Cache standardisiert zur Verfügung gestellt werden können. Diese standardisierte Bereitstellung von Informationen ermöglicht erhebliche Verbesserung bzgl. des hersteller- und systemübergreifenden Datenaustauschs. Sie reduziert die Integrationskosten und vermeidet sowohl Missverständnisse als auch Schnittstellenfehler.
Die Entkopplung der User-Module von den Quellsystemen (Source Systems) im Sinne eines Zwischenpuffers (Cache) ist zudem ein enormer Sicherheitsvorteil. Dadurch dass der CIM Cache ein integriertes Datenmodell für alle User-Modules bereit hält, werden die Quellsysteme weniger stark und nur koordiniert mit Anfragen belastet. Zudem braucht nicht jedes User-Module die Anbindung zu den Quellsystemen selbst realisieren.
Der Aufbau des CIM Caches ist so gewählt, dass er als zentrale Komponente die Integration vereinfacht und somit jederzeit ein performanter Zugriff von User- oder Domain-Modules möglich ist. Darüber hinaus ist die gezielte Skalierung rechenintensiver, fachlicher Aspekte einzeln möglich. Abbildung 1 zeigt die Aufteilung der Domain-Module sowie deren Einordnung in das Gesamtkonzept von openKONSEQUENZ.
Abbildung 1: openKONSEQUENZ Multilayer Architecture (AC-Handbook Version 1.3)
Um die Wiederverwendbarkeit und Flexibilität der fachlichen Funktionalität zu erreichen, wird diese im CIM Cache in funktional klar voneinander abgegrenzte, technisch eigenständigen Domain-Modules getrennt. Damit ist es möglich, Teilaspekte und verschiedene fachliche Ausbaustufen des CIM Caches unabhängig zu verwenden und weiterzuentwickeln. Technisch gesehen werden unter dem Begriff CIM Cache folgende logische Bausteine (Domain-Modules) der oK-Plattform zusammengefasst:
- TopologyDataManagement (TDM)
- AssetDataManagement (ADM)
- MeasurementDataManagement (MDM)
Aufbau der CIM Cache Domain-Modules
Um auch den schrittweisen Ausbau und Zukunftssicherheit (z. B. erweiterte Daten, neue Versionen eines Standards) in openKONSEQUENZ zu gewährleisten, wurde auf den inneren Aufbau der Domain-Modules des CIM Caches ein besonderes Augenmerk gelegt. Ziel ist es, einen hohen Grad an Wiederverwendung, leichte Wartbarkeit und Erweiterbarkeit zu unterstützen. Erreicht wird dies durch den in Abbildung klar strukturierten Aufbau mit eindeutig definierter Funktion und Abgrenzung.
Abbildung 2: Aufbau der CIM Cache Domain-Modules
Importer können Daten aus unterschiedlichen Datenquellen und -formaten einlesen (Push- & Pull-Verfahren) und in das interne Modell umwandeln bzw. dieses konsistent verändern. Es ist zur Laufzeit möglich, unterschiedliche Importer gleichzeitig zu aktivieren. In der Regel fragen Importer CIM‑Datenquellen (z. B. oK-Quellsystem-API oder andere Domain-Module) ab.
Das interne Modell eines Domain-Modules hält die fachlich notwendigen Daten vor. Aus Gründen der Optimierung und Entkopplung (z. B. bei Versionsänderungen) ist dies nicht notwendigerweise ein gültiges CIM-Modell. Zur Laufzeit gibt es nur eine Instanz des internen Modells.
Mit Hilfe von Exportern können Daten aus dem internen Modell in ein beliebiges Exportformat umgewandelt und weggeschrieben werden. Dabei spielt es keine Rolle, ob das Ziel des Exports, wie in Abbildung 2 dargestellt, eine Datei, ein Webservice, oder anderes geartetes Ziel ist. Zur Laufzeit ist es möglich, mehrere unabhängige Exporter bereitzustellen und diese getrennt voneinander einzusetzen. Dadurch werden flexible Sicherungs- und Reporting-Funktionen unterstützt.
Publisher stellen Daten aus dem internen Modell im openKONSEQUENZ-Kontext anderen Domain- oder User-Modules zur Verfügung. Dies erfolgt standardmäßig im CIM-Format entsprechend der in openKONSEQUENZ definierten Schnittstellen. Um bei Versions- oder Schnittstellenanpassungen die Abwärtskompatibilität den CIM-Formates sicher stellen zu können, können mehrere Publisher unterschiedlicher Versionen, die denselben Anwendungsfall beschreiben, zur Laufzeit gleichzeitig verwendet werden. Damit haben Schnittstellenanpassungen im Rahmen von Erweiterungen keine Auswirkungen auf bereits bestehende Systeme bzw. oK-Module.