1 Einleitung

In-Memory-Datenbanken halten den gesamten Datenbestand permanent im Hauptspeicher vor. Somit können lesende Zugriffe weitaus schneller erfolgen als bei traditionellen Datenbanksystemen, da keine I/O-Zugriffe auf die Festplatte erfolgen müssen. Für schreibende Zugriffe wurden Mechanismen entwickelt, die Persistenz und somit Transaktionssicherheit gewährleisten. In-Memory-Datenbanken werden seit geraumer Zeit entwickelt und haben sich in speziellen Anwendungen bewährt. Mit zunehmender Speicherdichte von DRAM-Bausteinen sind Hardwaresysteme wirtschaftlich erschwinglich, deren Hauptspeicher einen kompletten betrieblichen Datenbestand aufnehmen können. Somit stellt sich die Frage, ob In-Memory-Datenbanken auch in betrieblichen Anwendungssystemen eingesetzt werden können. Hasso Plattner, der mit HANA eine In-Memory-Datenbank entwickelt hat, ist ein Protagonist dieses Ansatzes. Er sieht erhebliche Potenziale für neue Konzepte in der Entwicklung betrieblicher Informationssysteme. So könne beispielsweise eine transaktionale und eine analytische Anwendung auf dem gleichen Datenbestand laufen, d. h. eine Trennung in operative Datenbanken einerseits und Data-Warehouse-Systeme andererseits ist in der betrieblichen Informationsverarbeitung nicht mehr notwendig (Plattner und Zeier 2011). Doch nicht alle Datenbank-Vertreter stimmen darin überein. Larry Ellison hat die Idee des betrieblichen In-Memory-Einsatzes, eher medienwirksam als seriös argumentativ, als „wacko“ bezeichnet (Bube 2010). Stonebraker (2011) sieht zwar eine Zukunft für In-Memory-Datenbanken in betrieblichen Anwendungen, hält aber weiterhin eine Trennung von OLTP- und OLAP-Anwendungen für sinnvoll.

In dieser Diskussionsrunde soll daher der Frage nachgegangen werden, ob die In-Memory-Technologie weiterhin nur in Nischen Anwendungen finden oder ob sie als grundlegende Datenmanagement-Technologie die Konzepte und die Implementierung betrieblicher Informationssysteme nachhaltig beeinflussen wird. Die Beitragenden wurden gebeten, u. a. zu folgenden Fragen Stellung zu nehmen:

  • Welches Potenzial hat die In-Memory-Technologie in betrieblichen Informationssystemen?

  • Welche Konsequenzen ergeben sich für OLTP- und für OLAP-Anwendungen?

  • Wird es neue Anwendungskonzepte für betriebliche Anwendungssysteme geben?

Die Einladung zu dieser Diskussion haben folgende Wissenschaftler angenommen (in alphabetischer Reihenfolge):

  • Dr. Benjamin Fabian und Prof. Dr. Oliver Günther, Humboldt-Universität zu Berlin

  • Prof. Dr. Donald Kossmann, ETH Zürich

  • Dr. Jens Lechtenbörger und Prof. Dr. Gottfried Vossen, Universität Münster

  • Prof. Dr. Wolfgang Lehner, Technische Universität Dresden

  • Prof. Dr. Robert Winter, Universität St. Gallen

  • Dr. Alexander Zeier mit Jens Krüger und Jürgen Müller, Universität Potsdam

Lechtenbörger und Vossen beleuchten die Entwicklung und den Stand der In-Memory- und Column-Store-Technologie. Bei der Bewertung betonen sie die Potenziale der In-Memory-Technologie für das Energiemanagement (vgl. auch Loos et al. 2011) und für Cloud-Computing.

Zeier et al. argumentieren, dass der große Vorteil moderner betrieblicher Anwendungssoftware in der Integration von transaktionaler und analytischer Verarbeitung besteht und dass ein Trend zu dieser gemischten Arbeitsweise (als OLXP bezeichnet) besteht. Die In-Memory-Technologie unterstützt diese Integration, sodass zukünftig keine architektonische Trennung von transaktionalen Systemen und Management-Informationssystemen notwendig ist. Auch lassen sich mit der neuen Datenbank-Technologie einfacher Simulations- und Optimierungstechniken in betriebliche Anwendungssysteme integrieren.

Lehner geht davon aus, dass die revolutionäre Entwicklung der Systemtechnik Auswirkungen auf die Strukturierungs-, Modellierungs- und Programmierungsansätze für betriebliche Anwendungssoftware haben wird. So kann sich die Kontrollflussorientierung der Anwendungssysteme zu einer Datenflussorientierung entwickeln. Eine zweite Auswirkung kann dazu führen, dass alle Daten nicht mehr ubiquitär zur Verfügung stehen, sondern dass ein „Need-to-Know“-Prinzip für bestimmte Bereiche eingeführt wird.

Kossmann sieht zwei Phasen, in denen sich die In-Memory-Technologie auf Informationssysteme auswirken wird. Die erste Phase ist durch Vereinfachungen gekennzeichnet, verursacht durch ein Aufbrechen der Daten- und der Anwendungsschicht in den Informationssystemen. In einer zweiten Phase wird dagegen die Komplexität steigen, da sich mit der Optimierung der Speicherhierarchien wie Hauptspeicher und Cache auch Konsequenzen für die Anwendungsentwickler ergeben werden.

Fabian und Günther betonen, dass In-Memory-Datenbanken bereits ihre Praxistauglichkeit unter Beweis gestellt haben und sehen insbesondere bei Business-Intelligence-Anwendungen ein großes Potenzial. Sie weisen auf die zu erwartenden hohen Investitionskosten für Hardware, Software und organisatorische Reengineering-Maßnahmen sowie auf die Notwendigkeit spezieller Lizenzmodelle hin.

Winter betont, dass eine mögliche Integration von OLTP- und OLAP-Datenbanken durch die In-Memory-Technologie weitreichende Konsequenzen für die Architektur und die Prozesse der gesamten betrieblichen Informationslogistik haben werden. Falls sich die Versprechen erfüllen, sieht Winter nach einer Phase der Datenorientierung und einer Phase der Prozessorientierung die Wirtschaftsinformatik in einer Phase der Analyse- und Entscheidungsorientierung.

Trotz offener Fragen hinsichtlich der Reife und der praktischen Einsetzbarkeit betonen die Autoren vor allem die Potenziale der In-Memory-Technologie und erwarten weitreichende Konsequenzen für die betriebliche Informationsverarbeitung.

Wenn auch Sie zu diesem Thema – oder einem anderen Artikel der Zeitschrift Wirtschaftsinformatik – Stellung nehmen möchten, senden Sie Ihre Stellungnahme (max. 2 Seiten) bitte an Hans-Ulrich.Buhl@wiwi.uni-augsburg.de.

Prof. Dr. Peter Loos

Institut für Wirtschaftsinformatik im DFKI

Universität des Saarlandes, Saarbrücken

2 Hauptspeicherdatenbanktechnologie: Herausforderungen und weitere Entwicklung

2.1 Einleitung

Hauptspeicherdatenbanktechnologie wird vielerorts als Durchbruch für zukünftige Entwicklungen von Informationssystemen gesehen, etwa bei Plattner und Zeier (2011), die in ihrem neuen Buch schreiben „wir haben einen Wendepunkt erreicht … hauptspeicherbasiertes Computing ändert die Art und Weise, in der Unternehmen geführt werden“. Andere wie Ousterhout et al. (2009) sehen einfach die Notwendigkeit, RAM anstelle von Festplatten als Speicherort einzusetzen, um die für heutige Web-Anwendungen sowie noch unbekannte, aufkommende Hochleistungsanwendungen erforderliche Skalierbarkeit zu erreichen.

Ein Hauptspeicherdatenbanksystem (HDBS, engl. in-memory oder main-memory database system) ist ein Datenbanksystem, das primär auf den Hauptspeicher (anstelle des Sekundärspeichers) als Ort der Datenspeicherung setzt. Da Datenbanksysteme traditionell auf Festplattenspeichern basieren und nur kleine Ausschnitte der Datenbank im Hauptspeicher puffern, eliminiert der Hauptspeicheransatz automatisch den E/A-Flaschenhals, also den typischen Engpass zwischen (schnellem) RAM und (langsamen) Festplatten. Folglich darf ein gewaltiger Leistungsschub erwartet werden, der es allerdings erfordert, viele übliche Datenbanksystemtechniken zu überdenken, insbesondere im Hinblick auf transaktionale Garantien, Datenorganisation und -zugriff und Anfrageoptimierung. So wird Recovery von Transaktionen (zur Durchsetzung einer Atomaritätsgarantie) oft mittels Logs auf Festplatte realisiert oder Datenorganisation mit Indexstrukturen für schnellen Zugriff auf Seiten im Sekundärspeicher; Anfrageoptimierung zielt typischerweise auf E/A-Reduktion einer gegebenen Anfrage. Es sei erwähnt, dass die Idee einer hauptspeicherbasierten Datenbank nicht neu ist; sie wurde bereits Mitte der 1980er-Jahre untersucht (Eich 1987a, 1987b), dann aber aufgegeben und für einige Zeit vergessen.

Während jüngere Entwicklungen wie Column Stores einige der obigen Herausforderungen adressieren, sollen sie von HDBS in ihrer Gesamtheit abgedeckt werden. In Erwartung gewaltiger Leistungsschübe unter Nutzung von Multi-Core-Systemen mit Hauptspeichern im Giga- bis Terabyte-Bereich könnte die Vision des „Echtzeit-Computing“ für OLTP (OnLine Transaction Processing), OLAP (OnLine Analytical Processing) und BI (Business Intelligence) zur Realität werden, selbst wenn potenzielle Hindernisse wie Datenbanksysteme einbezogen werden.

2.2 Facetten aktueller Systeme

Das Gebiet der HDBS wird durch eine Vielfalt von F&E-Aktivitäten charakterisiert, wobei einige Systeme wie solidDB (IBM), TimesTen (Oracle) und SAP HANA bereits kommerziell verfügbar sind. Im Kern dieser Aktivitäten liegt ein Re-Design der klassischen Datenbanksystemarchitektur, das Bernstein et al. (1998) seit Langem befürworten und dessen Realisierung sich nun abzuzeichnen beginnt. Wir können dies hier nur oberflächlich skizzieren.

Eines der ältesten relevanten Projekte ist das am CWI in Amsterdam entwickelte MonetDB (Boncz et al. 2009), das als Column Store eine höhere Leistung in vielen Data-Warehouse- und OLAP-Anwendungen verspricht als zeilenbasierte Systeme. Entsprechend basiert MonetDB auf vertikaler Fragmentierung; zudem bringt es eine CPU-spezifisch optimierende Anfrageausführung und eine modulare Architektur mit sich. Im Hinblick auf Transaktionsverarbeitung arbeiten HDBS typischerweise mit Snapshots zur Verwaltung von Datenbankzuständen, komplementiert durch Techniken wie Replikation oder nichtflüchtiges RAM. Das an der TU München entwickelte HDBS HyPer (Kemper und Neumann 2011) legt einen Schwerpunkt auf Transaktionsverarbeitung. HyPer kann transaktionale Garantien durchsetzen und mehrere OLAP-Anfragen auf demselben beliebig aktuellen und konsistenten Snapshot durchführen. Es setzt auf einem von Hardware unterstützten Schattenspeicherkonzept auf, das von der Memory Management Unit des Prozessors kontrolliert wird, und es arbeitet Transaktionen sequenziell auf unabhängigen Datenbankpartitionen ab, sodass Sperren nicht benötigt werden.

Während HDBS die Software von Endanwendern höchstwahrscheinlich nicht revolutionieren werden, unterscheiden sie sich „unter der Haube“ deutlich von traditionellen Systemen und erfordern eine Vielzahl neuer algorithmischer Ansätze. Es darf erwartet werden, dass sie einen spürbaren Einfluss auf die Evolution von Standard-Geschäftssoftware ausüben werden, da ihre Leistung komplexe Analysen in Echtzeit und Ad-Hoc Business Intelligence ermöglichen wird.

2.3 Ausblick

Die steigende Zuverlässigkeit von Technologie eröffnet neue Anwendungsmöglichkeiten. Man denke an die Luftfahrt (wo große Distanzen mittlerweile mit nur zwei Triebwerken überbrückt werden können) oder eben an Computer-Hardware im Allgemeinen und Hauptspeichertechnologie im Speziellen. Es ist zu erwarten, dass sich letztere im Gegensatz zu den Versuchen in den 1980er-Jahren in den kommenden Jahren weit verbreiten wird. Da große Mengen an Hauptspeicher (DRAM) aber typischerweise einen signifikanten und lastunabhängigen Anteil zum Gesamtenergieverbrauch beitragen, erwarten wir von Forschung zum DRAM-Energie-Management (Hur und Lin 2008) besonders positive Effekte auf den Energieverbrauch von HDBS. Kurz gesagt liegt die Herausforderung darin, Niedrigenergiezustände moderner DRAMs tatsächlich auszunutzen, etwa durch Drosselung oder Verteilung von Speicherbefehlen auf eine geringere Anzahl physischer Geräte.

Mit kontrolliertem Energieverbrauch wird die Verbreitung von HDBS mit Cloud-Technologie zusammenwirken (und schließlich mit ihr kombiniert werden). Obwohl HDBS typischerweise nicht „cloud-aware“ sind, nicht unter Gesichtspunkten des Cloud-Computings entworfen werden und sogar komplementär zur Cloud erscheinen, wird ihre Kombination kostengünstiges Echtzeit-Computing für vielfältige Anwendungen ermöglichen.

Dr. Jens Lechtenbörger

Prof. Dr. Gottfried Vossen

Universität Münster

3 Potenzial von In-Memory-Technologien

3.1 Einleitung

Einzeln betrachtet sind die zum Einsatz kommenden Technologien und Techniken für das „In-Memory-Datenmanagement“ meist nicht neu – bspw. wurden Hauptspeicherdatenbanken oder Spaltenorientierung schon in den 1980er-Jahren betrachtet – jedoch ergeben sich mit der heute zur Verfügung stehenden Hardware ergänzt um einige innovative Softwareentwicklungen neue Einsatzgebiete.

Moderne betriebliche Anwendungssysteme ziehen einen großen Teil ihres Mehrwertes aus der latenzfreien Integration von Daten und Prozessen von transaktionalen und analytischen Bereichen. Dementsprechend bietet die In-Memory-Technologie ein auf betriebliche Anwendungssysteme spezialisiertes Datenmanagement, um diese Anforderung effizient umzusetzen.

Betriebliche Anwendungssysteme, die auf dieser Art des Datenmanagements aufbauen, können die klassische Einzelsatzverarbeitung und zeitgleich Massenverarbeitung mit analytischen Funktionen von Daten vornehmen.

Für das Erkennen und Ausnutzen des Potenzials des In-Memory-Datenmanagements müssen Kenntnisse aus dem Bereich der Wirtschaftsinformatik mit Themen wie Hardware-Know-how und Informatik-Grundlagen kombiniert werden. Der deutschsprachigen, eher gestaltungsorientierten Wirtschaftsinformatik-Vorgehensweise folgend, wurden an unserem Lehrstuhl bspw. empirische Analysen über Charakteristiken von Unternehmensdaten sowie Log-Daten durchgeführt, die zum Erkenntnisgewinn über Hauptspeicherdatenbanken beigetragen haben.

3.2 Einfluss auf die weitere Entwicklung betriebswirtschaftlicher Software

Durch das Zusammenspiel von Entwicklungen in Hard- und Software ist es nun möglich, auf alle Unternehmensdaten flexibel in Sekundenschnelle zuzugreifen. Damit wird nicht nur der Traum von Controlling-Abteilungen wahr, sondern betriebswirtschaftliche Anwendungssoftware kann nun völlig neu gedacht werden. Solch ein radikaler Bruch zeigt sich vielleicht einmal pro Dekade. In diesem Rahmen werden viele Anwendungen so neu gestaltet werden, dass sie sich von mobilen Endgeräten bedienen lassen. Weiterhin wird sich der Trend hin zu Anwendungen mit vermischter Arbeitslast (OLXP), also Situationen, in denen operative bzw. transaktionale Anwendungen (OLTP) auch analytischen Charakter haben bzw. analytische Anwendungen (OLAP) auch auf transaktionale Systeme und deren Daten zugreifen, noch weiter intensivieren.

Aufgrund der Erkenntnisse, die wir in den letzten fünf Jahren im Bereich In-Memory-Datenmanagement gewinnen konnten, ist anzunehmen, dass nahezu alle Komponenten betriebswirtschaftlicher Software auf ein qualitativ neues Level gehoben werden können. Dies beinhaltet großes Potenzial, ist aber auch mit dem Aufwand verbunden, bestehende Software an die neue Form des Datenmanagements anzupassen. Neue Anwendungen sollten bereits auf Hauptspeicherdatenbanken ausgerichtet werden. Bestehende Anwendungen müssen priorisiert und dann nach und nach neu- bzw. umgeschrieben werden. Zudem kann nun erneut überprüft werden, bestehende Konzepte in betriebliche Anwendungssoftware zu integrieren. Dabei sei insbesondere an Simulationen und Optimierungsverfahren gedacht, welche bisher – wenn überhaupt – nur in Spezialsystemen durchgeführt werden.

Nun ist es potenziell möglich, diese sowohl daten- als auch rechenintensiven Anwendungen Datenbank-nah, bspw. in Form von Stored Procedures, in betriebliche Anwendungssoftware zu integrieren. Dies bietet jedoch nicht nur neue Möglichkeiten, sondern birgt unserer Meinung nach auch neue Pflichten: betriebliche Anwendungssoftware und insbesondere Standardsoftware hat sich in den letzten Jahren nicht gerade durch seine Benutzerzentriertheit hervorgetan. Es ist nun Zeit, dies zu ändern. Im Privaten setzen sich nur Anwendungen durch, die „desirable“ sind, also vom Benutzer gewollt und genossen werden. Erfüllt eine Anwendung diese Anforderung nicht, wird sie sofort wieder (vom mobilen Endgerät) gelöscht. Warum soll dies nicht auch für Unternehmensanwendungen gelten?

3.3 Konsequenzen für Operative und Analytische Anwendungen

Die betrieblichen Informationssysteme, aufgrund derer in Unternehmen Entscheidungen getroffen werden, analysieren traditionell große Datenmengen bzw. rufen diese aus entsprechend vorbereiteten Data Warehouse Cubes ab. Was wir in der Praxis gesehen haben, ist jedoch, dass Entscheidungsträger die dem Unternehmen vorliegenden Daten gerne flexibel analysieren würden, um eine fundierte Entscheidung treffen zu können. Da dies oftmals nicht möglich ist, werden Entscheidungen trotz der großen Menge an vorhandenen Daten „aus dem Bauch heraus“ getroffen. Genau aus diesem Grund stellen wir uns gegen eine systematische Trennung von operativen, transaktionalen Systemen und separaten Management-Informationssystemen. Vielmehr sollten Planungs- und Controlling-Systeme auf den gleichen Daten arbeiten wie die transaktionalen Systeme auch. Der Weg dahin ist auch bereits aufgezeigt (Plattner und Zeier 2011, S. 205 ff.).

3.4 Wie wird die Praxis in 5 Jahren aussehen?

Der durch In-Memory-Datenmanagement verursachte Umbruch ist vergleichbar mit der Umstellung von Sony’s Walkman zu Apple’s iPod. Dies geht natürlich nicht von einem Tag auf den anderen. Natürlich müssen zunächst Anwendungen neu- bzw. umgeschrieben werden. Viel wichtiger ist allerdings, dass sich sowohl Anwender als auch Anbieter von betrieblicher Unternehmenssoftware von dem herrschenden Bild abwenden müssen, wie diese Software gestaltet ist und was alles momentan nicht möglich ist. Out-of-the-box-Denken ist gefragt! Auch hier könnte die Wirtschaftsinformatik ansetzen und ausnutzen, dass sie die betriebswirtschaftlichen Anforderungen und die neuen technischen Möglichkeiten vereinen kann.

Außerdem wird es spannend zu sehen sein, wie unterschiedliche Software-Entwicklungsunternehmen auf diesen Umbruch reagieren. Agile benutzerzentrierte Prozesse sollten dazu führen, dass betriebliche Anwendungssoftware in den nächsten 5 Jahren ein neues Gesicht erhält: mobil, leichtgewichtig, flexibel und vor allem benutzerzentriert.

Dr. Alexander Zeier

Jens Krüger

Jürgen Müller

Hasso-Plattner-Institut für Softwaresystemtechnik, Potsdam

4 „In-Memory Data Management“ – Evolution oder Revolution

Scheinbar unbemerkt hat sich in den letzten Jahren eine Veränderung im Bereich der Rechnerarchitektur ergeben. Getreu dem Motto „Disk is Tape, Ram is King“Footnote 1 hat sich die Speicherhierarchie verschoben, sodass auf der einen Seite große Hauptspeichersysteme ökonomisch sinnvoll einsetzbar sind und auf der anderen Seite eine Vielzahl von Recheneinheiten (Trend zu Mega-Cores!) allgegenwärtig in modernen Systemen zu finden sind. Die Frage nach den Auswirkungen (Revolution oder Evolution) muss differenziert nach unterschiedlichen Aspekten betrachtet werden. Fest steht bereits jetzt, dass diese Entwicklung auf der Systemebene ein völliges Umdenken erfordert. So müssen Datenstrukturen und Basisalgorithmen angepasst werden, damit die extreme hohe Verfügbarkeit an Parallelität genutzt werden kann; Persistenz muss trotz In-Memory-Technologie zugesichert werden können. Evolution oder Revolution? Auf Ebene der Systemtechnik sicherlich Letzteres!

Anders verhält es sich auf der Ebene der betrieblichen Anwendungen. Hier wird sich zunächst mit dem Umstieg auf In-Memory-basierte Technologien ein Schwindelgefühl einstellen, wenn plötzlich IT-basierte Prozesse nicht mehr in Minuten oder Stunden, sondern schlichtweg „schneller“ ausgeführt werden können. Das Gefühl von Echtzeit macht sich breit, wenn Entscheidungsvorlagen auf Basis großer Datenbestände in Sekunden auf dem mobilen Endgerät zur Verfügung gestellt werden können. Aber: Der Appetit kommt bekanntlich beim Essen! Betriebliche Anwendungen werden die Möglichkeiten ausnutzen und neue Anwendungskategorien entwickeln. Bereits 1997 wurde im Rahmen des ACM Symposiums zu „The Next 50 Years of Computing“ festgestellt, dass sich Software gasartig verhält. Der Spruch „Software is a gas“ wurde im Rahmen der vier „Nathan’s laws of software“ in die Welt gesetzt. Mittlerweile wird zudem auch der Spruch „Data is a gas“ allgemein akzeptiert. Kann mehr an Datenmaterial gespeichert und verarbeitet werden, wird dieser Raum auch ausgefüllt werden. Noch hat sich das Gas der Software und der Daten aus Sicht der betrieblichen Anwendungen nicht ausgebreitet, aber dies wird sich schnell ändern!

So wird beispielsweise der Anwendungsbereich der Simulation wesentlich stärker genutzt werden, indem detailliertes Markt- oder Kundenverhalten im Rahmen umfangreicher Simulationen prognostiziert wird. Gehen dann die Anwender für derartige sowohl daten- als auch berechnungsintensive Anwendungsszenarien mit der gleichen Erwartungshaltung wie für klassische Szenarien heran, braut sich Fürchterliches zusammen. Wie kann man diesem Trend entgegentreten? Zwei Maßnahmen seien exemplarisch genannt.

  1. (a)

    … vom Kontrollfluss zu Datenfluss: Eine Vielzahl betrieblicher Anwendungen ist kontrollflussorientiert strukturiert, d. h. der Modellierer bzw. Programmierer gibt die Abfolge der einzelnen Tätigkeitsschritte vor. Die notwendigen Daten werden als „Ballast“ mit an die nächsten Schritte übergeben. Um In-Memory-Data-Management-Technologie effizient ausnutzen zu können, ist es jedoch notwendig die Modellierung und Implementierung von Geschäftsprozessen und damit verbundenen Anwendungen in einen datenflusszentrischen Entwurfsansatz zu überführen. Die Daten nehmen die Rolle eines „first class citizen“ ein und bestimmen die Abarbeitungssemantik. Prototypische Realisierungen auf Basis der SAP-In-Memory-Technologien haben gezeigt, dass eine datenflusszentrierte Anwendungsmodellierung und -programmierung Laufzeitverbesserung auf der identischen Plattform im mehreren Größenordnungen erbringen kann.

  2. (b)

    … vom Ubiquitätsprinzip zum Need-to-know-Prinzip: Aktuelle Interaktionsmuster mit IT-Systemen sind dadurch geprägt, dass alle Informationen zu jedem Zeitpunkt in größtmöglicher Aktualität und Konsistenz verfügbar sind. Mit Blick auf die Möglichkeit einer Echtzeitdatenverarbeitung kann dieses Ubiquitätsprinzip zu Gunsten eines Need-to-know-Prinzips für bestimmte betriebliche Anwendungsbereiche aufgegeben werden. Oftmals ist eine Echtzeitdatenanalyse vielleicht gar nicht notwendig. Es wäre ausreichend die Ergebnisse nur als Right-time, also zur „richtigen“ Zeit, zur Verfügung zu stellen. Ein konsequent aus der Anwendung heraus verfolgtes Need-to-know-Prinzip kann ein zentrales Mittel darstellen, um eine Balance zwischen Aufwand und Nutzen auch im ökonomischen Sinne beim Betrieb von In-Memory-Infrastrukturen zu erzielen.

Revolution oder Evolution? Die Frage ist sicherlich nicht mit einem „Exklusiven Oder“ zu beantworten. Um die volle Mächtigkeit von In-Memory-Technologie ausnutzen zu können, werden sich auch betriebswirtschaftliche Anwendungen mit alternativen Strukturierungs-, Modellierungs- und Programmierungsansätzen beschäftigen müssen. Insbesondere muss jedoch ein Zusammenspiel zwischen Anwendungswissen und Systemarchitektur von Statten gehen – nur mit einer starken interdisziplinären Zusammenarbeit ist das Potenzial von In-Memory-Plattformen auszunutzen bzw. nur mit dem Wissen der Anwendung ist die Technik in der Lage entsprechende Weiterentwicklungen zu realisieren.

Prof. Dr.-Ing. Wolfgang Lehner

Direktor des

Instituts für Systemarchitektur

an der Fakultät Informatik

Technische Universität Dresden

5 Einfachheit lautet die Devise

5.1 Einleitung

Computer werden ständig schneller und billiger. Arbeitsspeichergrößen wachsen und die Rechenleistung steigt mit erstaunlicher Geschwindigkeit. Im Jahr 2011 ist ein Computer mit 40 Kernen und 1 TB Arbeitsspeicher auch für ein mittelständisches Unternehmen problemlos bezahlbar.

Alles wird immer schneller, billiger und kleiner, aber wieso sollte uns das kümmern? Diese Trends machen das Arbeiten mit IT bequemer und erschwinglicher. Darüber hinaus ermöglichen sie die Entwicklung anspruchsvollerer Anwendungen, die zu einem höheren Grad an Automatisierung (für Unternehmen) oder mehr Spaß (im Bereich Home-Entertainment) führen. Warum sollten sie jedoch die Art und Weise ändern, wie wir Informationssysteme gestalten?

In diesem Diskussionsbeitrag wird argumentiert, dass ein Kreuzungspunkt erreicht ist und dass die Verfügbarkeit von übermäßigem Hauptspeicher tatsächlich die Art ändern wird, wie moderne Informationssysteme in Zukunft gestaltet werden. Es werden zwei Phasen angenommen: In der ersten Phase wird es zu einer Revolution kommen, die zu vollkommen neuen Designs für moderne Informationssysteme führt. In der zweiten Phase wird sich diese neue Generation in ähnlicher Weise weiterentwickeln wie die heutigen Informationssysteme.

5.2 Phase I: Vereinfachung

Kurz gesagt besteht ein modernes Informationssystem aus zwei Schichten: (a) einem Datenbanksystem (z. B. MySQL oder Oracle), das das Datenmanagement übernimmt, und (b) der Anwendungslogik (z. B. ein CRM- oder ERP-System). Die erste Hypothese besteht darin, dass es kurzfristig eine Neufassung beider Ebenen mit drastisch vereinfachten Designs und Architekturen geben wird. Diese Hypothese beruht auf der Beobachtung, dass ein Großteil der Komplexität moderner Informationssysteme (auf beiden Schichten) durch Techniken zur Leistungsverbesserung verursacht wird. Viele dieser Techniken, die in heutigen Informationssystemen eingebettet sind, sind überflüssig, wenn alle Daten im Hauptspeicher vorgehalten werden können. Im Folgenden werden einige Beispiele aufgeführt, die verdeutlichen, wie Informationssysteme vereinfacht werden könnten:

  • Entscheidungsunterstützung: Viele Data Warehouses werden verschwinden, da komplexe Abfragen zur Entscheidungsunterstützung direkt aus der Transaktionsdatenbank (in-memory) bedient werden. Diese Beobachtung wurde von Hasso Plattner (2009) in einer aktuellen Keynote gemacht.

  • Tuning: Komplexe physische Datenbank-Designs mit Indizes und materialisierten Sichten werden hinfällig, da es erschwinglich werden wird, die Daten einfach komplett neu zu verarbeiten. Diese Beobachtung wurde in Systemen wie Blink (Vijayshankar et al. 2008) und Crescando (Unterbrunner et al. 2009) genutzt. Diese Systeme reduzieren die Komplexität der Datenbankadministration drastisch.

  • Speicherhierarchie: Komplexe Techniken zur Pufferung plattenspeicherresidenter Daten und Synchronisierung simultaner Transaktionen werden obsolet. Diese Beobachtung wurde in Systemen wie VoltDB (Stonebraker et al. 2007) und HyPer (Kemper und Neumann 2011) genutzt.

Diese Vereinfachungen gelten nicht für alle Informationssysteme. Es gibt bestimmte Arten von Daten (z. B. Weblogs, soziale Netzwerke), die schneller wachsen als die Größe des Arbeitsspeichers. Für solche Informationssysteme wird die Vereinfachung durch andere Hardware- und Systemsoftware-Trends ausgelöst (z. B. Hadoop auf großen Clustern). Die Untersuchung solcher Systeme würde über den Rahmen dieses Diskussionsbeitrags hinausgehen. Dennoch ist das allgemeine Ziel der Vereinfachung tatsächlich relevant für alle Informationssysteme.

5.3 Phase II: Der Arbeitsspeicher ist die neue Festplatte

Die Geschichte hat uns gelehrt, dass Leistung weiterhin wichtig sein wird. Sie war für alle Generationen von IT-Systemen entscheidend, egal wie leistungsstark Computer wurden. Nachdem die niedrig hängenden Früchte geerntet wurden, werden Unternehmendamit beginnen, die neue Generation vereinfachter Informationssysteme zu optimieren, um Kosten zu senken. Bspw. werden sie versuchen, weniger Hardware zu kaufen und den Energieverbrauch zu reduzieren. Darüber hinaus werden Anwendungen weiterhin immer anspruchsvoller und jeder Technologiewandel hat bisher auch eine völlig neue Art von Anwendungen und Geschäftsmodellen ermöglicht, die neue Optimierungsverfahren erfordern.

Optimierungen werden zunächst auf Datenbanksysteme als unterste Schicht eines Informationssystems angewendet werden. Optimierungen auf dieser Ebene besitzen den größten Einfluss, da sie auf viele Anwendungen angewendet werden können. Darüber hinaus verfügen die Anbieter von Datenbanksystemen über viele Ingenieure, die dafür ausgebildet wurden, solche Optimierungen umzusetzen; diese Ingenieure werden genau das tun, nachdem sie die ersten Versionen der neuen Generation von Datenbanksystemen zum Laufen gebracht haben. Diese Ingenieure werden bald erkennen, dass es eine (neue) tiefe Speicherhierarchie mit mehreren Schichten von Prozessor-Caches innerhalb eines Computers gibt: Der Hauptspeicher ist die unterste Schicht dieser Hierarchie, ebenso wie Festplatten heute die unterste Schicht in den meisten Datenbanksystemen darstellen. Darüber hinaus werden diese Ingenieure lernen, dass eine moderne Maschine ein verteiltes System mit vielen Rechenknoten und einem komplexen Netzwerk darstellt. Auf diese Art und Weise werden sie lernen, Techniken zur Optimierung verteilter Datenbanken anzuwenden.

Für Datenbank-Administratoren und Anwendungsentwickler wird das Leben ebenfalls komplizierter werden, wenn auch zu einem späteren Zeitpunkt. An einem gewissen Punkt werden Datenbanksysteme eine neue Reihe von Stellschrauben besitzen, die es Datenbankadministratoren ermöglichen werden, die neue Generation von Arbeitsspeicher-Datenbanksystemen hinsichtlich der spezifischen Arbeitslasten einer Anwendung anzupassen. Da verbesserte Leistung und reduzierte Kosten weiterhin entscheidend sein werden, um konkurrenzfähig zu bleiben, müssen Unternehmen genügend Anreize schaffen, um sich in diesem Wettrüsten zu engagieren; die gleiche Art von Wettrüsten erleben wir heute, nur mit einer anderen Generation von Waffen.

Folglich wird nach einer Phase der dramatischen Vereinfachung eine Phase zunehmender Komplexität stattfinden. Die Hoffnung besteht darin, dass die Komplexität langsam ansteigen wird und dass der nächste Kreuzungspunkt erreicht wird, der wiederum dramatische Vereinfachungen auslösen wird, bevor wir wieder bei der Komplexität der heutigen Informationssysteme angelangt sind.

Prof. Dr. Donald Kossmann

ETH Zürich

6 In-Memory-Datenmanagement für Business Intelligence

In-Memory-Datenbanken haben ihren Praxiswert bereits für Transaktionen in Echtzeitanwendungen unter Beweis gestellt, so zum Beispiel im Börsenhandel, beim Routing in Netzwerken sowie in der Telekommunikationsindustrie. Ob dies auch für ihren Einsatz im Bereich analytischer betrieblicher Anwendungen wie der Business Intelligence (BI) zutrifft, wird zurzeit heftig diskutiert.

Unser Ansicht nach gibt es gute Argumente dafür, In-Memory-Ansätze auch für betriebliche Anwendungen und insbesondere in BI einzusetzen. Ein wichtiger Baustein von BI und auch anderer betrieblicher Anwendungen ist das Online Analytical Processing (OLAP), das bei flexiblen Ad-Hoc-Anfragen durch Nutzer mit In-Memory-Datenbanken wesentlich schneller durchgeführt werden kann als mit klassischen, festplattenbasierten Datenbanken. So lassen sich Kosten einsparen und komplexere Anfragen mit geringerer Verzögerung beantworten. Diese Verbesserungen hinsichtlich Geschwindigkeit und Benutzerfreundlichkeit können zu einem neuen Qualitätsniveau von Business Intelligence jenseits eines einfachen Reportings führen. Data Mining und Datenvisualisierung werden erleichtert, so zum Beispiel in Anwendungsfeldern wie der Effizienzanalyse und dem Reengineering von Geschäftsprozessen oder auch im Management der Lebenszyklen von Produkten und Dienstleistungen.

Weiterhin liegt die für In-Memory-Datenmanagement notwendige Hardware zunehmend auch für kleinere und mittlere Unternehmen im Rahmen des finanziell Möglichen: Die RAM-Preise fallen, von relativ geringen Schwankungen abgesehen, genauso wie die Kosten für Blade-basierte Serversysteme, die sich gut für skalierbare, parallele Verarbeitung eignen. Neuere Ergebnisse aus der theoretischen Datenbankforschung führen zu einer noch effizienteren Datenspeicherung und -verarbeitung bei spaltenorientierten Datenbankensystemen. Derartige Datenbanken können ferner im RAM-Speicher ohne vorherige Datenaggregation sowie ohne explizite Indizierung arbeiten, was den damit verbundenen Aufwand verringert und Kosten vermeidet. Schließlich sind spaltenorientierte Datenbanken auch besonders gut für parallelisierte Verarbeitung bei mehrdimensionalen OLAP-Anfragen geeignet, die oftmals Aggregation über ausgewählte Attribute erforderlich machen.

Auf der anderen Seite gibt es natürlich auch Nachteile von In-Memory-Datenmanagement, die vor einer entsprechenden Investition berücksichtigt werden müssen. Hier sind zunächst die Kosten zu nennen, die durch die Anpassung existierender Softwareanwendungen verursacht werden. Laufende ERP- und BI-Anwendungen werden nicht ohne signifikante Modifikationen auf eine In-Memory-Umgebung transferiert werden können. Die Kosten für das Reengineering vorhandener BI-Prozesse sowie die Anpassung existierenden Codes (z. B. auch selbst entwickelter Datenbankskripte) können beträchtlich sein. Des Weiteren entstehen Kosten durch die Investition in neue Hardware wie Blade Server und ausreichend RAM. In Abhängigkeit vom jeweiligen Lebenszyklusstand der aktuellen Infrastruktur halten wir solche einmaligen Kosten für Hardwareinvestitionen nicht für kritisch. Allerdings könnten Kosten für Softwarelizenzen und Support bei In-Memory-Datenbanken einen größeren, längerfristig relevanten Kostenfaktor sowie ein potenzielles Einführungshindernis darstellen. Solche Kosten basieren grundsätzlich auf der Gesamtgröße des Speichers, der Anzahl der Prozessoren sowie der Nutzeranzahl. Da die ersten beiden Parameter in größeren Blade-Systemen stark korreliert sind, sollten Datenbankhersteller eine doppelte preisliche Belastung ihrer (aktuellen und potenziellen) Kunden vermeiden. Lizenz- und Supportkosten können auch relevant werden, wenn Firmen Hybridansätze verfolgen möchten, die existierende klassische Datenbanken und Data Warehouses mit neuen In-Memory-Datenbanken für OLAP verbinden.

Ferner ist vor dem Hintergrund der intrinsischen Flüchtigkeit der RAM-Datenhaltung besonders auf Konsistenz und Beständigkeit der Daten zu achten. Dies bedingt einschlägige Strategien (wie z. B. Protokollierung aller Transaktionen auf Festplatte) sowie spezielle Hardware für die Datensicherung. Die hier implementierten Systemlösungen sind in In-Memory-Umgebungen noch kritischer als in klassischen Datenbanksystemen und müssen regelmäßig getestet werden, was zu zusätzlichen Personalkosten und Systemausfallzeiten führen kann.

Trotz dieser Caveats stellt der In-Memory-Ansatz unserer Meinung nach eine äußerst viel versprechende Entwicklung für zukünftige Business-Intelligence-Anwendungen dar, und wir sind von seinem hohen Potenzial sowie einer weiteren Verbreitung in den nächsten Jahren überzeugt.

Dr. Benjamin Fabian

Prof. Oliver Günther, Ph.D.

Humboldt-Universität zu Berlin

7 In-Memory-Appliances – Ein Fortschritt in der Informationslogistik?

Informationslogistik zielt darauf ab, menschlichen und maschinellen Aufgabenträgern die richtigen Informationen in der richtigen Qualität zum richtigen Zeitpunkt verfügbar zu machen. Während „Business Analytics“ auf spezifische (Entscheidungs-)Aufgaben fokussiert, steht Informationslogistik für die gesamthafte Planung und Steuerung der Sammlung von Daten, Aufbereitung der Daten zu Informationen und Bereitstellung von Informationen – sei es in einem Unternehmensteil, einem Unternehmen oder einem Unternehmensnetzwerk (Winter et al. 2008).

In den vergangenen zwanzig Jahren haben sich für die technische Umsetzung von Informationslogistik mehrschichtige IT-Architekturen etabliert, die mit Absicht parallel zu bestehenden transaktionalen Abwicklungssystemen aufgebaut wurden und die Schichten zur Datenextraktion und -transformation, zur integrierten Speicherung aller entscheidungsrelevanter Daten („single version of truth“ im Sinne von Data Warehouses), zur anwendungsbereichsspezifischen Aufbereitung und Bereitstellung von Daten (im Sinne von Data Marts) sowie aus diversen Werkzeugen zur Datenanalyse umfassen. Organisatorisch hat sich fast immer ein Mix aus eher zentralisierten Betriebs- und Beratungsdiensten (BI Competence Center) und eher dezentralisierten, nutzungsnahen Unterstützungsdiensten entwickelt (Winter und Klesse 2009).

Die technische und organisatorische Entwicklung der Informationslogistik kann in Maturitätsmodellen abgebildet werden, die vielen Organisationen einen fortgeschrittenen Entwicklungsstand zuschreiben ((Lahrmann et al. 2011a), 2011b). Gleichwohl sind lange nicht alle wichtigen Anforderungen erfüllt und alle bedeutenden Probleme gelöst:

  1. 1.

    Angesichts steigender Volumina, steigender Vernetzung und vielfältigeren Analysemöglichkeiten von Daten sind Datenextraktion, -transformation, -aufbereitung, -integration, -bereitstellung und -analyse in größeren Organisationen auch bei Einsatz fortgeschrittener Organisationskonzepte, leistungsfähiger IT und moderner Softwarewerkzeuge nicht „realtime“ realisierbar. Aus Effizienzgründen müssen Analysen häufig sorgfältig optimiert und Aktualisierungen müssen als „Batches“ zusammengeführt werden. Iterative, interaktive Analytik auf aktuellen Daten, wie sie viele Entscheider/innen bei der Lösungssuche fordern, wird deshalb nur unzureichend unterstützt (Finucane et al. 2010).

  2. 2.

    Die vielen, häufig durch spezialisierte Werkzeuge und Infrastrukturen bedingten Integrations- und Veredlungsstufen führen zu hoher Komplexität und hohen Betriebs- und Entwicklungskosten (Eckerson 2009). Um wesentliche Komplexitäts-Kapselungen und Kostenreduktionen zu erreichen, müssten Extraktions-, Transformations-, Aufbereitungs-, Integrations-, Bereitstellungs- und Analysefunktionen in großem Stil in integrierte IT-Systeme zusammengeführt werden. Dies scheint jedoch mit bestehenden Technologien nur sehr begrenzt möglich zu sein, da zahlreiche Aufbereitungsstufen wie z. B. Data Marts alleine aus Performance-Gründen unabdingbar sind.

  3. 3.

    Die Optimierungsnotwendigkeiten in der aktuellen Informationslogistik führen auch dazu, dass nur bestimmte Analysefunktionen und -pfade spezifiziert und effizient IT-unterstützt werden können (Finucane et al. 2010). In zunehmend dynamischen Entscheidungssituationen fordern Entscheider/innen aber zunehmend, Beliebiges beliebig analysieren zu können, z. B. durch individuelle und spontane Zusammenführung von Daten. Dies kann zurzeit nicht geleistet werden.

Ein echter Fortschritt in der Informationslogistik wäre also eine Komponente, welche die oben skizzierten Schnelligkeits-, Vereinfachungs-/Integrations- und Flexibilisierungsanforderungen besser erfüllen kann als bestehende Komponenten. In-Memory-Appliances versprechen genau dies (Plattner 2009):

  1. 1.

    Datenänderungen werden grundsätzlich inkrementell und „realtime“ propagiert. Die asynchrone Aktualisierung von persistenten Aggregaten (vorberechneten Zwischenergebnissen) entfällt. Damit sollen iterative, interaktive Analysen viel besser unterstützt werden, d. h. die richtigen Daten stehen in der richtigen Qualität viel schneller zur Verfügung.

  2. 2.

    Transaktionale und entscheidungsbezogene Daten werden integriert verwaltet. Das Hin- und Herschieben von Daten entfällt und dadurch mögliche Inkonsistenzen werden vermieden. Wenn die entsprechende Technologie skalierbar ist, können Aufbereitungsstufen eingespart und Architekturkomplexität massiv reduziert werden.

  3. 3.

    Analysepfade werden nicht fixiert, sondern Daten können im Prinzip beliebig miteinander verknüpft werden. Damit würde eine individuelle und spontane Zusammenführung von Daten möglich.

Wenn diese Versprechen auch nur annähernd erfüllt würden, würden entsprechende In-Memory-Appliances einen ganz wesentlichen Fortschritt in der Informationslogistik ermöglichen. Solche Architekturkomponenten würden die Konsistenz- und Effizienzvorzüge bestehender Extraktions-, Integrations-, Aufbereitungs- und Speicherungstechnologien (ETL, Data Warehouse, Data Mart) mit den Flexibilitäts- und Geschwindigkeitsvorzügen moderner Analysetechnologien (z. B. Hadoop) verbinden. Sollten sie auch für große Organisationen ausreichend skalierbar sein und die gleichzeitige Nutzung durch Hunderte oder sogar Tausende von Entscheidern/innen ermöglichen, wäre ein immenser kommerzieller Erfolg absehbar.

Die frühe Phase, in der sich sowohl entsprechende kommerzielle Produkte wie auch Pilotprojekte in Unternehmen befinden, lässt zurzeit noch keine seriösere Bewertung des Potenzials von In-Memory-Appliances zu. Offenbar scheint es aber gelungen zu sein, nicht nur die Skalierungs-Probleme existierender, bisher eher ein Nischendasein fristender In-Memory-Datenmanagementlösungen für die Informationslogistik zu adressieren, sondern auch eine Vision zur Überwindung der Zweiteilung zwischen dem Management von Transaktionsdaten und dem Management entscheidungsrelevanter Daten zu entwickeln – auch wenn die Pilotprojekte in dieser Hinsicht nicht sehr weit gehen.

Die skizzierte Vision gilt es jedoch auch kritisch zu hinterfragen. Informationslogistik-Infrastrukturen erfüllen heute zwei zentrale Funktionen. Zunächst ist dies die Integration von Daten aus unterschiedlichsten Systemen, die heute insbesondere durch Data-Warehouse-Systeme wahrgenommen wird. Darüber hinaus ermöglichen Informationslogistik-Infrastrukturen die zeitnahe Bereitstellung und Analyse von Informationen, welche in der Praxis vor allem durch den Einsatz von Data Marts gewährleistet wird. In-Memory-Lösungen können offenbar sehr wohl die Bereitstellungs-Aufgaben von Data Marts übernehmen und dabei Datenredundanz vermeiden und eine komplette Verarbeitungsstufe obsolet machen. Die Integrations-Aufgaben müssen in heterogenen Systemlandschaften jedoch weiterhin weitgehend außerhalb des In-Memory-Appliance werden und sind deshalb zunächst nicht ersetzbar.

Falls im weiteren Entwicklungsverlauf der In-Memory-Technologie tatsächlich einmal Transaktionsabwicklung und Entscheidungsunterstützung „aus einer Hand“ unterstützt werden können, wären die Konsequenzen für die Wirtschaftsinformatik als Integrationsdisziplin weitreichend: Auf eine lange Phase in den 1970er- und 1980er-Jahren, in der (Transaktions-)Datenintegration im Vordergrund stand, und eine lange Phase seit Mitte der 1990er-Jahre, in der der Fokus auf (an operativen Prozessen orientierter) Prozessintegration stand, könnte eine ganz neue Basisorientierung folgen, in der fachliche Analysen und Entscheidungen sowie deren Flexibilität und Qualität im Vordergrund rücken – was auch Dezentralisierungsauswirkungen von (unternehmensweiten) Daten über (bereichsbezogene) Geschäftsprozesse zu (aufgabenspezifischen) Entscheidungen hätte.

Die aktuelle Diskussion der Potenziale und Herausforderungen von In-Memory-Appliances passt damit einerseits zur offenbar immer bedeutenderen Rolle von Analytik im Unternehmen, wie sie gerade in Praxiskreisen, besonders in den USA, unter dem Stichwort „Big Data“ geführt wird. Andererseits muss die Frage erlaubt sein, ob die Diskussion wieder einmal Werkzeug- bzw. IT-Lösungs-getrieben geführt werden sollte wie auch schon im Kontext des Entstehens kommerziell einsetzbarer ERP-Systeme auf Grundlage integrierter Transaktions-Datenbanken (z. B. Scheer 1976) oder im Kontext der Prozessunterstützung durch ERP-Systeme (z. B. Scheer 1995). Zwar mögen Technik- bzw. IT-Lösungs-getriebene Veränderungen vorderhand den Eindruck erwecken, effektiver und zielführender zu sein als eine mühsame und im Ergebnis offene Erarbeitung fachlicher Innovationen und dafür geeigneter IS-Unterstützung. Gleichwohl scheitern solche Transformationen häufig gerade an ihrer Technik-Getriebenheit (Lahrmann et al. 2011b).

Wenn die Diskussion jedoch nicht mit der technischen Lösung (z. B. In-Memory-Appliance) beginnen sollte, wo dann? Wir sollten „moderne“, den aktuellen Herausforderungen angemessene Anwendungsszenarien entscheidungsorientierten Handelns in Organisationen spezifizieren, welche die Potenziale immer umfassenderer, heterogener, reichhaltigerer Daten systematisch nutzen. Solche Referenzszenarien können aufgrund ihrer fachlichen Nähe viel besser als IT-Lösungen der Ausgangspunkt erfolgreich umsetzbarer Transformationen sein. Die Wirtschaftsinformatik kann hier durch Referenzmodellierung und Methodenkonstruktion wichtige Beiträge leisten, die auch der Weiterentwicklung und – hoffentlich – Etablierung innovativer IT-Lösungen durch Softwareunternehmen dienen.

Prof. Dr. Robert Winter

Institut für Wirtschaftsinformatik

Universität St. Gallen