Die Datenbank ist das Herz jeder IT-Infrastruktur

Wer die IT seines Unternehmens fit machen will für die aktuellen Herausforderungen, muss der Datenbank besondere Aufmerksamkeit schenken. Denn sie ist das zentrale Tool für das Datenmanagement. Entsprechend komplex ist das Anforderungsprofil für moderne Datenbank-Plattformen, schreibt Paul Salazar.

Das ideale Unternehmen ist agil, innovativ und verfügt über reichliche Ressourcen. Üppige Budgets und hochqualifiziertes Fachpersonal sind Alltag. Doch das ist ein schöner Traum, denn die Realität sieht meist anders aus: Hohe Kosten und Personalmangel an allen Ecken und Enden verhindern oft das Ausschöpfen der vorhandenen Potenziale. Die Aufgaben und Herausforderungen werden dadurch jedoch nicht geringer. Eine der wichtigsten ist die intensivere Digitalisierung der Prozesse und Geschäftsmodelle. Sie betrifft prinzipiell alle denkbaren Arbeitsbereiche: Forschung und Entwicklung, Marketing und Vertrieb, Produktion und Logistik genauso wie die Horizontalfunktionen, etwa Buchhaltung oder Personalabteilung.

Paul Salazar ist Senior Director Central Europe bei Couchbase

Die Bedeutung der IT-Abteilungen ist damit enorm gestiegen, deren Ausstattung aber leider nicht in gleichem Maße. Statt sich um die wirklich wichtigen, zukunftsträchtigen Themen kümmern zu können, geht es in der Praxis überwiegend um die Aufrechterhaltung des laufenden Betriebs. Für die Erarbeitung und Umsetzung innovativer IT-Konzepte wie Cloud oder Edge Computing bleibt da in der Regel viel zu wenig Zeit. Die in den Unternehmen dringend benötigten modernen IT-Ansätze bekommen so nicht die nötige Aufmerksamkeit. Das heißt im Umkehrschluss, je stärker die IT-Administration durch intelligente Hard- und Software entlastet wird, desto mehr kann sie sich um die digitale Wertschöpfungsoptimierung kümmern.

Die Datenbanken geraten dabei selten in den Fokus. Bedenkt man jedoch, dass hier mit den Daten die häufig wichtigsten Assets eines Unternehmens organisiert und bereitgestellt werden, dann lohnt es sich, diesen Punkt genauer unter die Lupe zu nehmen. Und ihre Bedeutung als zentraler Daten-Pool für verteilte Anwendungen wird noch steigen. Edge Computing, das Internet-of-Things (IoT) und ganz besonders das Industrial-Internet-of-Things (IIoT) sind Datengeneratoren. Quantität und Qualität des Daten-Managements erfahren dadurch einen zusätzlichen Schub, der mit herkömmlichen Datenbank-Systemen kaum bewältigt werden kann.

Flexibilität beginnt beim Datenmodell

Diese Erkenntnis ergibt sich aus der Definition der technischen Herausforderungen und Aufgaben bei der Nutzung von Cloud-, Edge- oder IoT-Szenarien. Sie erfordern neben der oben kolportierten Agilität und Flexibilität auch noch ein hohes Maß an Skalierbarkeit. Und das sowohl für das Up- oder Down-Scaling, als auch horizontal und vertikal. Eine moderne Datenbank „atmet“ also quasi im Takt der gerade benötigten Datenbank-Ressourcen. Die Tabellen-Strukturen relationaler SQL-Datenbanken mit ihren starren Zeilen- und Spalten-Schemata sind damit überfordert. Änderungen im laufenden Betrieb sind viel zu aufwändig, zeitintensiv und häufig gar nicht machbar. NoSQL-Datenbanken dagegen besitzen ein weitaus flexibleres Datenmodell. Änderungen können damit schneller und mit geringerem Aufwand umgesetzt werden. Auch die zunehmende Verbreitung von Microservices (Kubernetes), deren Handling mit SQL-Datenbanken, wenn überhaupt, nur aufwändig umzusetzen ist spricht für den Einsatz moderner NoSQL-Datenbanken.

Bei Edge- und IoT-Konzepten geht es zudem häufig um Echtzeit-Anwendungen, etwa im Produktionsbetrieb. Ein großes Problem sind dabei die Latenzen die entstehen, wenn dort anfallende Daten erst in eine zentrale Datacenter- oder Cloud-Datenbank transferiert, und anschließend wieder re-transferiert werden müssen. Moderne Datenbank-Konzepte integrieren daher schnelle, kleine, funktional sinnvoll abgespeckte Embedded-Datenbanken. Sie besitzen zudem eigene Analytics-Funktionen für das Data Processing in der Peripherie, dort wo die Daten entstehen. Diese werden direkt vor Ort verarbeitet und anschließend im Hintergrund mit der zentralen Datenbank synchronisiert. Der dadurch reduziert Datenverkehr senkt zudem die Netzbelastung.

Automatisierung hilft

Für den sicheren Betrieb und die einfachere Administration sind Automatisierungsfunktionen ein wichtiger Punkt auf der To-do-Liste für Datenbankmanagement-Systeme. Richtschnur dafür sind die im  Operator Framework festgelegten Automatisierungslevel. Die dort definierte höchste Stufe 5 (Full Automation) wird aktuell allerdings nur von einer einzigen NoSQL-Datenbank vollumfänglich erfüllt. Zu den geforderten Fähigkeiten gehören unter anderem die dynamische Skalierbarkeit oder automatisches Failover und Recovery. Neben den technischen Parametern spielt auch das Bereitstellungsmodell eine wichtige Rolle. DBaaS, also die Nutzung einer Datenbank als Cloud-Services wird dabei immer beliebter. Es kann direkt über den Anbieter oder einen Cloud-Provider erfolgen. Um diese Wahlmöglichkeit zu erhalten, und damit das berüchtigte Vendor-Lock-In zu vermeiden, muss die Datenbank Cloud-agnostisch, also Provider-unabhängig sein. Das wird erreicht durch die Fähigkeit zur uni- und bidirektionalen Replikation über mehrere Rechenzentren beziehungsweise Regionen hinweg. Auch dies wird erst mit dem Automatisierungs-Level 5 erfüllt.

Abseits der erwähnten Unterschiede zwischen relationalen SQL- und modernen No-SQL-Datenbanken werden wir auf absehbare Zeit noch lange mit einem Nebeneinander beider Datenbank-Typen leben. Beide werden nach wie vor ihre spezifischen Anwendungsfälle und Nischen haben. Die Zukunft gehört dabei zweifellos den NoSQL-Datenbanken. Trotzdem ist und bleibt es sinnvoll, das reichlich vorhandene SQL-Knowhow weiter zu nutzen, auch für NoSQL-Datenbanken. Mit einer Abfragesprache wie N1QL (SQL for JSON) können SQL-native Statements in einer NoSQL-Datenbank genutzt werden. N1QL bildet so eine leicht begehbare Brücke zwischen der Datenbank-Welt von gestern und den Datenmanagement-Plattformen von morgen.