Datenbanken – Herausforderung zwischen physikalischem Speicher und logistischem Zentrum
Datenbanken blicken in der elektronischen Datenverarbeitung auf eine lange Geschichte zurück und stehen nach wie vor im Mittelpunkt des Interesses der Unternehmens-IT. Verständlich, sind sie doch der Hort der Unternehmensdaten und damit Grundlage des geschäftlichen Alltags.
Als der Kommandant der Apollo 11 Mission, Neil Armstrong, am 19. Juli 1969 als erster Mensch seinen Fuß auf die Oberflache des Mondes setzte, hatte der Astronaut nicht nur in der Geschichte der Raumfahrt einen Meilenstein gesetzt, sondern auch in der Datenverarbeitung. Die Apollo-Mission der Amerikaner hatte als Nebenprodukt auch zur ersten Entwicklung strukturierter Datenspeicher geführt. Damit war eine Anwendung der Informationstechnik geboren, die wir seither als Datenbank kennen.
Apollo 11 Mondlandung 1969
Im Auftrag der NASA hatte in den 60er Jahren die North American Aviation (NAA, heute Rockwell International) eine Software entwickelt, die unter der Bezeichnung GUAM (Generalized Update Access Methode) in die Geschichte der Computerindustrie einging. Es galt, das Problem der NASA-Wissenschaftler zu lösen, dass es damals noch keine Form von Datenspeicherung gab, die mit der riesigen Fülle von Informationen der Apollo-Mission, vor allem mit den vielen Stücklisten von Rakete und Mondlandesystem, fertig werden konnte.
Die Software basierte auf einem Konzept, demzufolge kleinere Teile als Untermenge von größeren Komponenten galten, bis ein fertiges Produkt zusammengefügt werden konnte. Diese Systematik wurde hierarchische Struktur genannt. Als Mitte der 60er IBM mit der Raumfahrt zusammenarbeitete, entstand daraus die erste hierarchische Datenbank für IBM-Mainframes, IMS (Information Management System) und damit das erste „Daten Bank Management System“ (DBMS) als kommerzielles Softwareprodukt.
Ebenfalls Mitte der 60er Jahre gab es ein zweites bedeutendes Projekt zum Thema Datenbanken, die Entwicklung der Software IDS (Integrated Data Store) von General Electric. Unter der Leitung von Charles Bachmann entstand ein Datenbanktyp, der als „networked database“ bekannt wurde. Er sollte komplexere Beziehungen der Daten untereinander erlauben als das hierarchische Modell. Daraus entstand ein erstes Standardkonzept, CODASYL (Conference of Data Systems Languages) genannt mit einem dreiteiligen Grundschema (Aufbau des Datenmodells – Verwaltung der Datensätze und Zugriff darauf von Anwendungsprogrammen aus).
Relationale Datenbanken erobern den Markt
Die entscheidenden Arbeiten für den Aufbau der Datenbankprogramme wie wir sie heute kennen, erfolgten in den 70er Jahren. Pionier war Edgar F. Codd vom IBM Research Laboratory, dessen Arbeitspapiere die Grundlage für zahlreiche Entwicklungsschritte dieses Jahrzehnts bildeten. Vor allem aus den Ideen zum relationalen Datenmodell entstanden die Erstausgaben der großen Datenbanken aller bekannten Hersteller, wie sie bis heute in den Unternehmen eingesetzt werden.
IBM-Forscher E.F. Codd
Das relationale Modell
Im relationalen Modell sind alle Daten in ein logisches Beziehungsmodell eingebunden, das in Form von Tabellen dargestellt wird. Jede Beziehung hat einen Namen und besteht aus benannten Attributen. Sie werden durch die Spalten der Tabelle repräsentiert. Jede Zeile enthält pro Attribut einen Wert. Der Vorteil des relationalen Datenmodells liegt in seiner einfachen logischen Struktur sowie darin, dass innerhalb einer Datenbanktabelle keine physikalischer Plattenpointer gebraucht werden, wie sie im hierarchischen- und im Netzwerk- Modell notwendig waren.
Fachleute sind sich einig, dass das „relationale Modell“ bis heute die beste theoretische Grundlage für die Darstellung von Datenbankinhalten ist. Dieser „Touch“ fehlte bei den Hierarchischen- und Netzmodellen der Vorgängergeneration. Relationale Datenbank Management Systeme (RDBMS) sind bis heute die vorherrschende Gruppe aller Softwareprodukte in der Unternehmens-IT unserer Tage.
Doch die ersten Implementierungen von relationalen Datenbanken waren trotz ihrer unübersehbaren Vorteile nicht leistungsstark und wurden deshalb kaum kommerziell eingesetzt. Dies änderte sich 1987 als es Tandem Computers unter der Leitung von Jim Grey und unter Beobachtung von Codd gelang, einen Benchmark zu setzen, der neben der linearen Skalierbarkeit vor allem den Nachweis erbrachte, dass relationale Datenbanken ebenso performant wie etwa hierarchische sein konnten.
Ab diesem Zeitpunkt begann für alle Hersteller relationaler Datenbanken der Wettlauf um immer noch bessere Performance-Werte, der bis heute anhält. Dabei gilt es zu bedenken, dass Datenbanken wegen des Wertes der darin gespeicherten Unternehmensdaten ein höchst konservatives Geschäft sind, das sich nur langsam verändert – ein Thema Herz-Lungen-Maschinen.
Objektorientierte Datenbanken
Ende der 80er Jahre verstärkte sich in der IT-Industrie und den damit verbundenen Programmiersprachen eine Tendenz, die unter dem Fachbegriff „Objektorientierung“ bekannt wurde. Ziel der Entwickler war es, mit Objekten eine bessere Wiederverwendung von Programmmodulen zu erreichen. So sollten sowohl teure Entwicklungszeit verkürzt, wie auch die Kosten für Wartung und Pflege deutlich gesenkt werden.
Während sich bei den Programmiersprachen der Trend der Objektorientierung (OO) schon früh durchsetzten konnte (C, C++ und Java), gelang es nicht, diese Technologie wegen mangelnder Performance auch in der Datenbankwelt zu verankern. Dies bedauern Softwareentwickler bis heute, besteht doch dadurch immer noch ein Bruch zwischen den Vorteilen der Objektorientierung bei der Entwicklung von Anwendungen und der Speicherung ihrer Daten.
Gelöst wird das Problem durch ein OR-Mapper genanntes Softwarewerkzeug. Dieses bildet die im Programm gewollt genutzte Objektsicht in Relationen (Tabellen) in der Datenbank ab oder verfährt entsprechend umgekehrt. OR-Mapper werden heute in erster Linie von den Datenbankherstellern als integraler Bestandteil des jeweiligen DBMS angeboten. Es gibt aber auch sehr erfolgreiche Produkte von Drittherstellern, beispielsweise das aus der Open Source Community kommende Produkt „Hibernate“.
Businesskritische Anwendungen
War historisch der Flug zum Mond die erste Anwendung für Datenbanken, so hatten damals Firmen wie IBM rasch erkannt, dass Datenbanken auch für Kunden, die täglich mit großen Datenmengen umgehen, gewinnbringend eingesetzt werden konnten. Das waren in erster Linie Unternehmen des Finanzsektors, der in den USA sein Mekka hat. Dabei haben aus heutiger Sicht Börsen, Banken und Versicherungen teils unterschiedliche Anforderungen.
Deutsche Börse in Frankfurt / M. - Handelsaal
In den 60er Jahren war Papier (Belege) auch bei den Banken das Medium für Ein- und Ausgabe um Buchungsvorgänge auszulösen, während heute die Mehrzahl dieser Transaktionen praktisch papierlos und online (Bankautomat, Bankkarte und Internet) erfolgen. Im Versicherungswesen dagegen werden teilweise bis heute Verbuchungen über Belege ausgelöst. Die Verarbeitung von solchen Papier-Belegen erfolgt seit den Anfängen der IT in der sogenannten Stapelverarbeitung (Batch). Durch die rasant zunehmende Nutzung des Internets in allen Geschäftsebenen verschwindet die klassische Batchverarbeitung allerdings immer mehr.
Heute haben dieser Trend, der sich seit der Kommerzialisierung des Internet Mitte der 90er erheblich verstärkt hat, und die daraus abzuleitenden Aufgaben der IT praktisch in allen Branchen Einzug gehalten. Besonders sind in diesem Zusammenhang der Handel, die Telekom-Industrie, die automatisierte Fertigung sowie alle Bereiche der Verwaltung zu nennen.
Das führte zu einer erheblichen Veränderung der Werkzeuge der Laufzeitumgebung (Run Time Environment) für Anwendungen. Waren anfangs Transaktionsmonitore (OLTP – Online Transaction Processing) wie CICS und Tuxedo im Mittelpunkt des Interesses, so sind heute mächtige Applikationsserver wie BEA Weblogic (heute Teil von Oracle Fusion), IBM Websphere, Netweaver von SAP sowie JBoss aus der Open Source Gemeinde im Einsatz. Angesichts des unglaublichen Erfolges des Internets stehen heute vor allem Web Services im Zentrum der Weiterentwicklung der Datenbanken.
Transaktionen – OLTP
Die klassischen Anwendungsfälle von OLTP sind die IT Unterstützung des operationalen Tagesgeschäfts bzw. die online Abbildung der Geschäftsprozesse von Unternehmen. Diese Aufgaben werden unter anderem von so genannten ERP-Systemen (beispielsweise SAP) wahrgenommen, die wiederum ihre Daten aus Datenbanksystemen beziehen. Diese verwalten meist sämtliche Unternehmensdaten wie Personaldaten, Lagerbestände und Geschäftsvorgänge, wie Einkauf und Vertrieb. Moderne Unternehmen mit weitreichender IT Unterstützung sind deshalb von der Verfügbarkeit und Integrität dieser Daten extrem abhängig. Daher werden solche Anwendungen mit ihren Daten als unternehmenskritisch eingestuft.
Der Einsatz von OLTP führte dazu, dass die operativen Datenbestände immer aktuell sind. Daraus entstand in den Unternehmen der Wunsch, diese zur Unterstützung bei Entscheidungen intensiv einbinden zu können. Dies führte zu speziellen Datenbankformen für Data Warehousing und Data Mining und damit verbunden zu einem raschen Aufkommen von sogenannten Business Intelligence (BI) Programmen.
Data Warehousing, Data Mining und Business Intelligence
Die hohe Nachfrage nach diesen neueren operationalen und analytischen Systemen resultiert aus der Tatsache, dass viele Unternehmen effektive Entscheidungen nur von einem völlig aktuellen Abbild der Unternehmensdaten und einer weit zurückreichenden Daten-Historie (Trend Analyse) ableiten können. Dies betrifft sowohl die Firmenleitung für ihre strategischen Entscheidungen, als auch die mit absolut aktuellen Informationen zu entscheidenden taktischen Aktionen für einzelne Unternehmensbereiche, wie zum Beispiel Läger, Fertigung, Distribution oder auch CallCenter und Websites des Unternehmens.
Damit steigen die Anforderungen an riesige Enterprise Data Warehouse (EDW) Systeme bezüglich der zu speichernden Daten Volumina als auch bezüglich der Arbeitslast (Komplexität der Abfragen) ins Unermessliche und dabei explodieren regelrecht die Kosten für solche Systeme, versucht man herkömmliche Technologien dafür einzusetzen. Die Hersteller von EDW Systemen zielen deshalb auf den stärkeren Einsatz von preiswerten Standardkomponenten und über das große Hardwarevolumen (viele Platten, viele Prozessoren) solcher Systeme versucht man neue, sehr viel niedrigere Preispunkte zu definieren, um derartige Projekte kommerziell umsetzbar zu machen.
Vor diesem Hintergrund der Auswertung der Inhalte von Datenbanken ist in den vergangenen 15 Jahren ein weiteres IT-Instrument verstärkt in den Blickpunkt gerückt, im Branchenjargon „Business Intelligence“ genannt. Ursprünglich verstand man darunter die Automatisierung des Berichtswesens (Reporting). Die in den Unternehmensapplikationen gesammelten Daten werden genutzt, um unter verschiedenen Blickwinkeln die Situation des Unternehmens zu analysieren und zu bewerten. Dieser Prozess der Datenanalyse wird im IT-Fach-Jargon OLAP genannt. Das Kürzel steht für „On-Line Analytical Processing“, eine Suchmethode (retrieval), um multidimensionale Informationsbestände eines Unternehmens aus Datenbanken für die Entscheidungsunterstützung sichtbar zu machen.
Bekannt wurde OLAP, als 1995 Oracle und Informix (gehört heute zu IBM) ihre ersten Produkte unter dieser Bezeichnung auf den Markt brachten.
Die Analyse der Daten erfolgt nicht in den operativen Datenbanken, sondern in einer daraus separat erzeugten Datenbank, dem bereits erwähnten Data-Warehouse (DWH). Die Gründe für die Auslagerung (einschliesslich Transformation) der operativen Datenbestände in eigenständige Data Warehouses liegen erstens darin, dass DWHs häufig für ihre komplexen Such- und Analysevorgänge veränderte Tabellenstrukturen benötigen und zweitens durch die komplexen – und damit extrem arbeitsintensiven – Analysevorgänge nicht auszuschliessen ist, dass die Online Transaktionssysteme der operativen Unternehmensanwendungen beispiesweise durch verlängerte Antwortzeiten beeinträchtigt werden.
Die erste Aufgabe in BI-Projekten ist es, Momentaufnahmen der Daten der Unternehmensapplikationen periodisch für die Analyse in eigene DWH- Datenbanken zu übertragen. Dies erfolgt durch Extraktion der operativen Daten, ihrer Transformation und dem Laden in das Data-Warehouse (ETL Werkzeuge – Extract, Transform, Load). Diese ETL Werkzeuge sind heute so intelligent, dass ein vollständiger Ladevorgang nur beim ersten Laden durchgeführt werden muss. Nachfolgende Ladevorgänge ziehen lediglich Veränderungen des ursprünglichen Datenbestandes im Data Warehouse nach. Die zweite Aufgabe besteht darin, die für das Berichtswesen notwendigen analytischen Auswertungen einzurichten. Dies reicht von einfachen Aggregationen etwa dem Zusammenstellen von Umsatzzahlen einzelner Artikel bis hin zu komplizierten statistischen Analysen mittels Data-Mining wie etwa Trendanalysen von Kundenverhalten.
Die Bedeutung des Genres führte 2007 zu einer Übernahmeschlacht von BI-Spezialisten. Den Startschuss gab damals Oracle-Chef Larry Ellison, als er im Frühjahr 2007 Hyperion Solutions übernahm. Die bekanntesten Anbieter neben Hyperion waren Cognos aus Kanada und Business Objects aus Frankreich. Die beiden letzteren wurden dann im Sommer bzw. Herbst 2007 von zwei weiteren großen Playern übernommen, BO von SAP, Cognos von IBM. Auch Microsoft ist in diesem Zusammenhang zu nennen. Das mächtige Softwarehaus aus Redmond hatte schon 2004 den BI-Spezialisten ProClarity akquiriert, um für diesen vielversprechenden Markt gerüstet zu sein.
Oracle, IBM und Microsoft beherrschen den Markt
Nach einer Untersuchung der Marktforscher von Forrester (Studie „The Forrester Wave: Enterprise Database Management Systems, Q2 2009“) liegt das Marktvolumen für Datenbanksysteme (Lizenzen, Support, Service und Beratung) derzeit bei einem Gesamtumsatz von etwa 27 Milliarden US-Dollar. Mit einem jährlichen Wachstum von acht Prozent soll dies bis 2013 auf 32 Milliarden US-Dollar anwachsen.
Diesen Markt beherrschen, so Forrester, heute mit einem Anteil von 88 Prozent nur drei Anbieter: Oracle, IBM und Microsoft. Dazu kommen einige spezialisierte Produkte von traditionellen Anbietern wie Teradata, HP (früher Tandem) und Sybase. Wie die Auseinandersetzung der EU aktuell mit Oracle zeigt, spielen heute auch Open Source Datenbanken wie MySQL eine wichtige Rolle im Markt der Unternehmens-Datenbanken.
Rudi Kulzer und Helmut Öhlinger