Datenbanktechnologie heute: SQL, aber nicht nur
NoSQL, Compression, Business Intelligence, Master Data – Begriffe, die mehr oder weniger direkt mit der Datenbanktechnologie verknüpft sind und diese jüngst weiterentwickelt haben.
Längst geht es in der Datenbanktechnologie nicht mehr bloss um SQL und relationale Datenmodelle. NoSQL («Not only SQL») ist nur einer der vielen Entwicklungstrends: Unter dem NoSQL-Paradigma verzichten Datenbankplattformen auf Ausfallsicherheit zugunsten schneller Speicherung grosser Datenmengen. Andere interessante Entwicklungen: Mit Kompression und Columnar Storage beschleunigen neue Speicherformate und Indexierungstechniken auch klassische Datenbankanwendungen exorbitant. Business Intelligence und Data Mining bringen inzwischen auch für Nicht-Statistiker neue Erkenntnisse aus Datenbanken zutage. Master Data Management und Quality Management Services helfen, auch die semantische Konsistenz von Datenbeständen zu gewährleisten.
NoSQL – «Not only SQL» für grosse unstrukturierte Datenmengen
Social Networking generiert in immer kürzeren Zeitabschnitten immer grössere Datenmengen. Klassische relationale Datenbanksysteme geraten hier ans Limit: Sie sind auf Hochverfügbarkeit und garantierte Datenkonsistenz ausgelegt, erzeugen für diese Qualitäten aber einen gewissen Overhead. Für die Zugriffs- und Datenmengen im Social Networking liegt dieser Bremseffekt nicht drin. Mit «Not only SQL» wurden alternative Speicherungsmethoden entwickelt, die den spezifischen Anforderungen der Social Networks genügen. NoSQL bedeutet nicht die Abkehr von SQL, sondern die Ergänzung um nicht-relationale und nicht transaktionsgeschützte Konzepte.
NoSQL-Datenbanken gewährleisten schnellste Speicherung grösster Datenmengen. Dafür verzichten sie auf absolute Datenkonsistenz und starke Strukturierung der gespeicherten Daten. Aufwendige Indexierung und Transaktionsabbildung sowie fixe Datenstrukturen sind in NoSQL-Datenbanken nicht anzutreffen. NoSQL war zunächst eine Open-Source-Domäne. Inzwischen bieten alle grossen RDBMS-Produkte NoSQL-Konzepte an, auch wenn sie meist nicht unter dem Titel NoSQL zu finden sind.
Schnellere RDBMS dank optimierter Speicherstrukturen
Die weiterhin meistverbreitete Datenbankarchitektur ist relational. Auch relationale Datenbank-Management-Systeme (RDBMS) werden durch neue Technologien substanziell beschleunigt. Auf Hardwareebene erfolgt dies etwa mit Solid State Storage, Ultra-Shared-Nothing-Architekturen und Database Appliances. Eine Ebene höher, in den relationalen Datenbank-Betriebssystemen, wird das logische und physische Abbilden der Datenspeicherung verbessert. Die Organisation der auf einer Disk gespeicherten Daten beeinflusst die Leistung einer Datenbank massgeblich. Die grossen RDBMS-Anbieter haben in diesem Bereich Optimierungen vorgenommen, die bei niedrigem Wartungsaufwand deutliche Leistungssprünge ermöglichen.
Database Compression
Da wäre zunächst das komprimierte Speichern von Daten. Datenbankkompression hat den primären Nutzen der Leistungssteigerung: Wo weniger Disk-Pages zu lesen sind, muss weniger lange auf ein Ergebnis gewartet werden. Ein Nebeneffekt ist zudem die verkürzte Durchlaufzeit von Back-ups. Das Komprimieren von Datenbanken verringert – entgegen der landläufigen Meinung – auch die Prozessorlast, zumindest in grossen Datenbanken: Da weniger Disk-Pages zu lesen sind, sinkt auch der Verwaltungsaufwand für die Zugriffssteuerung. Der Prozessor-Overhead für den Komprimierungsprozess ist deutlich geringer als die Entlastung dank Komprimierung.
Columnar Storage, Light Indexing
Auch die logische Anordnung von Daten auf Speichermedien beeinflusst die Datenbankleistung. Columnar Storage bringt in diesem Bereich massive Leistungsgewinne. Traditionell speichert ein RDBMS alle Felder eines Datensatzes gemeinsam in einer Disk-Page. Werden nur einzelne Datenfelder gelesen, so sind trotzdem immer ganze Datensätze zu laden. Dies wiederum erhöht die Anzahl zu verarbeitender Disk-Pages unnötig und macht die Datenbankleistung schlechter.
Diesem Problem wurde bis dato mittels differenzierter Indexierung begegnet: Covering Indexes kopieren jene Datenfelder, die für bestimmte Abfragen benötigt werden, in einen separaten Speicherbereich. In grossen Data Warehouses sind oft tausende unterschiedlicher Abfragen zu optimieren. Somit sind nach herkömmlicher Methodik auch tausende Indizes anzulegen und zu verwalten.
Der Aufwand, eine solche Indexlandschaft zu verwalten, ist gross. Nicht aktiv verwaltete – das heisst nicht periodisch reorganisierte – Indizes können Datenbanken wieder langsam machen, weshalb Maintenance in diesem Bereich ein Muss ist. Columnar Storage verspricht nun Abhilfe: Diese Speicherarchitektur ermöglicht den Verzicht auf gros¬se Mengen von Covering Indexes, das heisst sie erlaubt «Light Indexing». Columnar Indexes speichern nicht mehr alle Felder eines Datensatzes gemeinsam, sondern gruppiert sie in der Vertikalen: Für ein bestimmtes Datenfeld werden die Inhalte aller Datensätze einer Tabelle in separaten Disk-Pages gruppiert und gespeichert. Die deshalb geringere Menge an zu lesenden Disk-Pages beschleunigt jede Anwendung, die eine solche Datenbank nutzt. Ein Columnar Index ist zudem viel höher komprimierbar, da die auf einer Disk-Page enthaltenen Daten eines Datenfeldes sich sehr ähnlich sind.
Anders als NoSQL sind Database Compression und Columnar Storage für Client-Applikationen transparent. Ein DBA kann eine Datenbank komprimieren und die Indexorganisation mit Columnar Storage entschlacken, ohne dass dies von den Client-Applikationen wahrgenommen wird oder gar Code anzupassen wäre. Diese Konzepte sind gerade für die Betreiber von Legacy-Applikationen, die nicht einfach zu verändern sind, äusserst interessant.
The Cloud – Rent a Database
Nicht die technische Beschleunigung, sondern die organisatorische Entlastung steht im Zentrum der vielen Cloud-Angebote, die derzeit entstehen. Der Cloud-Begriff impliziert meist einen wesentlichen Unterschied zum Hosting: Gewisse Services und Serviceautomatisierungen sind im Cloud-Angebot inbegriffen. Hohe Automatisierung aller Wartungsaufgaben, das periodische Installieren von Patches oder die implizite Hochverfügbarkeit jedes gemieteten Cloud-Servers sind einige Beispiele.
Ein im Datenbankumfeld interessantes Cloud-Angebot ist «Database-as&Service». Hier wird nicht ein Server gemietet, sondern lediglich eine Datenbank. Der Cloud-Anbieter ist für ausreichende Alimentierung mit Disk, Memory und CPU besorgt, stellt optimale Disk-Layouts sicher, gewährleistet Hochverfügbarkeit, Geo-Replikation und automatisches Patching. Solchermassen gemietete Datenbanken haben die Möglichkeit, automatisch und ohne Wahrnehmung durch den Kunden zu skalieren. Neben dem wegfallenden Administrationsaufwand und dem impliziten Scale Out bieten Cloud-Datenbanken auch für die Nutzer umfangreiche Vorteile: Eine direkt per Internet zugängliche Datenbank kann ohne vorherige VPN- oder sonstige Verbindungen direkt aus Client-Werkzeugen abgefragt und mutiert werden. Interessant ist dies auch für Unternehmen mit viel Aussendienstpersonal.
Von Self Service Business Intelligence bis zur gesicherten Datenqualität
Obwohl der Begriff EDV schon reichlich angestaubt ist, liegt der Fokus des Datenbankbetriebs noch oft auf der reinen Datenverwaltung. Die heute angebotenen Möglichkeiten der Informationsgewinnung aus bestehenden Datenbeständen wird oftmals unterschätzt. Insbesondere auf Stufe der Unternehmensführung, wo Führungsinformationen vielerorts auf herkömmlichem Weg generiert werden: Excel-Daten-Importe und -Formelschlachten oder aufwendig programmierte statische Reports könnten nun in manchen Fällen der Vergangenheit angehören.
Leistungsfähige Datenbanksysteme integrieren heute Business-Intelligence- und Data-Mining-Funktionalität, die auf weiten Strecken auch ohne Programmierer und Hochschulabschluss in Statistik schnell die gewünschte Information erzeugen und darstellen können. Diese Funktionalität wird nun vermehrt in jene Werkzeuge integriert, die die Anwender ohnehin bereits einsetzen – Excel allen voran. Das voraggregieren von Information in OLAP-Cubes oder vorbereiteten Abfragen wurde ebenso vereinfacht wie das Nutzen dieser vorbereiteten Objekte.
Moderne Business-Intelligence-Lösungen können herkömmliches und unflexibles Reporting inzwischen relativ einfach und schnell ersetzen. Dass dem so ist, hat die Managementstufe gerade in mittelgrossen und kleinen Betrieben leider oftmals noch nicht erfahren. Insbesondere dort, wo wenig internes IT-Personal zur Verfügung steht und die Budgets für den Einkauf individualisierter Reports zu knapp sind, könnten die neuen Business-Intelligence-Technologien kostengünstig Abhilfe verschaffen.
Data Mining
Selbst die Algorithmen des Data Mining – der künstlichen Intelligenz angelehnt – werden zunehmend auch für Nicht-Wissenschaftler erschliessbar. Leider wird die Leistungsfähigkeit von Data Mining mancherorts noch unterschätzt oder der Begriff ist noch gänzlich unbekannt. Grosse Onlineshops und Detailhandelsketten könnten ohne Data Mining längst nicht mehr existieren: Das Gewinnen von Erkenntnissen über die inneren Zusammenhänge ihrer Daten steuert Produktdefinition und -platzierung sowohl auf der Website als auch im Regal («An welchem Wochentag müssen wir welches Produkt mit welchem Rabatt anbieten, damit unsere Rendite maximiert wird?» – «Welchen Web-Besucher interessiert um welche Tageszeit welches Werbebanner am meisten?»).
Auch in kleinen Datenbeständen lassen sich solche Korrelationen zum Nutzen eines Unternehmens mit einfachen Mitteln feststellen. Moderne Data-Mining-Werkzeuge sind Bestandteil leistungsfähiger RDBMS und inzwischen auch ohne Informatikstudium bedienbar.
Data Quality und Master Data Management
Eine Anwendung von Data-Mining-Algorithmen ist das Sicherstellen semantischer Datenqualität: Data Quality Services identifizieren beispielsweise Adressduplikate in einzelnen oder auch verteilten und redundanten Datenbanken. Diese zentral betriebenen Dienste laufen unabhängig von bestehenden Client-Applikationen und beobachten die Applikationsdatenbanken «von aussen». Damit erfolgt die Sicherung der Datenqualität für die Applikationen transparent, es ist keine Software anzupassen. Über separate Bedienungsoberflächen erfolgt die Rückmeldung festgestellter Inkonsistenzen und – je nach Umgebung – auch die manuelle Datenkorrektur.
Data Quality Services sind ein weiteres Feature fortgeschrittener RDBMS, das auch in nicht veränderbaren Legacy-Umgebungen zur Verbesserung der Applikationslandschaft führt. Master Data Management schliesst an dieses Gebiet an: In diesem Anwendungsfeld von RDBMS werden Referenzdaten separat verwaltet (beispielsweise Kataloge mit unterschiedlichen Schreibweisen für die gleichen Produktbezeichnungen oder Ortsnamen). Sind Inkonsistenzen in den erfassten Daten einer Datenbank beziehungsweise einer Reihe verteilter Datenbanken nicht zu vermeiden, so lassen sie sich mithilfe von Master Data trotzdem konsistent auswerten. Weitere Anwendungen einer solchen Infrastruktur zeigen direkt in einer Applikation gültige Begriffe an, ähnlich einem Thesaurus. Auch hier gilt: Master Data Management ist keine Hexerei mehr und gehört inzwischen zum Standardumfang jedes leistungsfähigen RDBMS.
Die nächste Version von SQL Server „Denali“ orientiert sich an den letzten Entwicklungstrends. Der
kostenlose Download macht einen Test einfach.
Selbst wenn die Datenbanktechnologie kaum ähnliche Begeisterung auszulösen vermag wie moderne Webtechnologien oder Social Networking – es bewegt sich viel in diesem facettenreichen Fachgebiet der IT. Es lohnt sich, genauer hinzuschauen und von den Neuerungen der jüngsten Vergangenheit zu profitieren.
Mit dem TechNet Newsletter bleiben Sie technisch auf dem neusten Stand.

Wieso die KI nur in Albträumen zum wahren Schrecken wird

OpenAI sichert sich massive Cloud-Kapazitäten von Oracle

Institutionelle Investoren und Krypto – wo stehen wir wirklich?

Digitale Souveränität sichern – Strategien für die Cloud

Finanzwelt von morgen: KI, Sicherheit und das Rückgrat der Rechenzentren

ETH-Spin-off Tinamu ernennt neuen CTO

Wie sich der CFO vom Zahlenhüter zum Zukunftsgestalter mausert

Büsst man mit dem Multi-Cloud-Ansatz Datenhoheit ein?

Wie die Schweiz ihre digitalen Daten besser schützen kann
