Relationen oder Performance - SQL versus NoSQL
Alle Unternehmen setzen bereits seit Jahren Datenbanksysteme, zumeist klassische RDBMS (Relational Database Management Systeme), ein. Die Voraussetzungen, unter denen diese angeschafft wurden, unterscheiden sich jedoch stark von denen, die heute unter IoT-Bedingungen herrschen. Daher stoßen konventionelle RDBMS schnell an ihre Grenzen, sobald es an die relationale Verarbeitung geht - da sowohl die Kosten als auch die Skalierung Schwierigkeiten bereiten.
Gerade in Bezug auf eine hohe Performance bei der Abarbeitung vieler Transaktionen bietet sich daher der Einsatz von Not-Only-SQL-Datenbanken (NoSQL-DB) an. Dieses Datenbankmodell verzichtet sowohl auf relationale Datenbankmodelle als auch auf vordefinierte Schemata und nutzt statt Spalten und Zeilen - zum Beispiel Wertepaare oder Objekte -, um die Daten zu organisieren. Dadurch sind sie bei der Datenbearbeitung performant einsetzbar und können auf verteilten Systemen agieren.
Dennoch ist der Einsatz von NoSQL-DB in IoT-Projekten nicht uneingeschränkt empfehlenswert. NoSQL eignet sich zwar hervorragend für das Abspeichern von Daten und das Abarbeiten von linearen Befehlen, aber weniger dafür, große Datenmengen miteinander zu verknüpfen - etwa durch Aggregationen und Joins oder individuell definierte, analytische Funktionen.
Optimalerweise fällt die Wahl daher auf Datenbanken, die die Performance und Skalierbarkeit von NoSQL-Systemen mit der relationalen SQL-Arbeitsweise verknüpfen. Dieses Vorgehen würde es auch ermöglichen, weiterhin das bereits vorhandene SQL-Know-how weiter zu verwenden. Der Markt bietet hier verschiedene Lösungen von verteilt arbeitenden Datenbanken mit einem Shared-Nothing-Ansatz an ohne SQL und mit Standard SQL an.
Bei shared-nothing handelt es sich um ein Vorgehen, bei dem jeder Knoten der verteilten Architektur autonom arbeitet und dadurch auf ausschließlich ihm zur Verfügung stehende Ressourcen, wie etwa Prozessorleistung, Betriebssystem und Arbeitsspeicher, zugreift. Dadurch werden alle Anfragen zur Berechnung auf die verfügbaren Knoten verteilt und können entsprechend schnell abgearbeitet werden, während das zugehörige Management-System automatisch das Ausbalancieren der Workloads durchführt.
Diese Parallelisierung ist es, die dem System eine schnelle und unkomplizierte Skalierung ermöglicht. Auf diese Weise lässt sich der Performance-Nachteil, den normalerweise SQL-Systeme gegenüber NoSQL-Datenbanken haben, nicht nur ausgleichen, sondern man verbindet das beste beider Welten.
Ist ein betriebsfertige IT-Komplettlösung für das IIoT sinnvoll?
Zurück zur Ausgangsfrage, ob es betriebsfertige IIoT-Komplettlösungen geben kann. Wie bereits angedeutet, verlangt die IoT-Praxis die Integration und die Verarbeitung von Daten aus mitunter sehr verschiedenen Quellen und in unterschiedlichen Formaten. Die Leistungsfähigkeit, die die zum Einsatz kommenden Datenbanksysteme hierbei erbringen müssen, ist beeindruckend.
Um damit nachhaltige Möglichkeiten zur Produktverbesserung und Effizienzsteigerung innerhalb der Fertigungsprozesse zu schaffen, muss nicht nur die Verarbeitung, sondern auch die Auswertung relevanter Maschinendaten in Echtzeit geschehen. Daher ist es auch - und vor allem im Bereich des IIoT - sinnvoll, eine auf diese Ansprüche zugeschnittene Datenbank und dazu passende individuelle Serviceleistungen aufeinander abzustimmen, um das Ergebnis zu optimieren.