Neue Datenbankgeneration

SAP HANA - weniger In-Memory-, mehr operationale Datenbank

14.01.2016 von Axel Angeli
In der Diskussion um HANA als In-Memory-Datenbank vergisst man leicht, dass es hier um Software für Analytics und Prognosen geht. Dabei spielt es schon heute keine Rolle, ob das "In-Memory" oder mit einer anderen Technik funktioniert. HANA gehört damit auch in die Kategorie der post-relationalen Operational Database Management Systems (ODBMS).

Unter Begriff ODBMS - Operational Database Management Systems lässt sich ein bunter Strauss an sehr unterschiedlich konzipierten Datenbanksystemen zusammenfassen. Gemeinsam ist ihnen, dass sie Daten nicht als sequentielle Datei beziehungsweise nach einem Entity-Relationship-Modell (ERM) ansprechen. Durch die explosionsartige Vermehrung an neuen Datenauswertungs-Szenarien - vereinfachend als Big Data bezeichnet - sind Zugriffe mit SQL auf Datenbestände für viele Anwendungen nicht mehr zeitgemäß. Für die derzeit besonders vielversprechenden Anwendungen, wie sie in den Bereichen "Predictive Analysis" (Prognosen auf Basis großer Datenmengen), Video- und Data-Streaming, SmartCity, Connected Cars oder Industrie 4.0 zu finden sind, benötigen Anwender künftig jeweils maßgeschneiderte Zugriffswege auf die Daten.

ODBMS werden daher künftig die Schlüsselrolle für viele Enterprise-Anwendungen spielen. Urvater der ODBMS ist "MUMPS", eine Programmiersprache mit integrierter Datenbank, welche gezielt für das Bearbeiten von strukturfreien Datenbanken wie große Textdokumente geschaffen wurde, was in den 1960ger Jahren die visionäre Herausforderung am Massachusetts Institute of Technology (MIT) war. Aus dieser Forschung ging dann das spätere "Interbase Caché" hervor, auch heute noch eine der führenden und visionären post-relationalen Datenbanksysteme.

ODBMS - die nächste Datenbankgeneration

Ein ODBMS ist keine Alternative zu relationalen Datenbank-Management-Systemen (RDBMS), sondern die nächste Generation. Auch eine klassische SQL-Datenbank nach dem Entity Relationship Model lässt sich damit jederzeit modellieren, indem man jede Tabelle schlicht als ein Objekt anlegt und betrachtet. Charakterisierend für ODBMS ist, dass solche Datenbanken zusätzlich zu den atomaren Informationen auch Aggregationen (zusammenfassende Zwischenergebnisse) und strukturfreie Information abspeichern, wie sie bei Texten häufig vorkommen oder für flexible Auswertungen, also dem klassischen Data-Mining auf einem Business-Warehouse benötigt werden.

Manche ODBMS entscheiden sogar in Verfahren nach dem Muster der Künstlichen Intelligenz selbst, welche Daten überhaupt abgespeichert werden. Der alternative Begriff einer "Post-relationalen Datenbank" beschreibt die Realitäten besser: Das sind Datenbanken, die sich nicht mehr an den technischen Begrenzungen orientieren, sondern an den visionären Zielen der Anwendungsentwicklung.

Anwendungen für ODBMS

Für Anwender stellt sich nun die Frage, welche ODBMS für das eigene Einsatzszenario die beste ist. Das ist allerdings nicht einfach zu beantworten. Für RDBMS gibt es noch gute und hinreichend sinnvolle Vergleichsparameter, weil diese zumindest funktional sehr ähnlich zueinander sind: Allerdings geht es dabei meist nur um einfache Performance-Messungen beim Zugriff auf kleine oder große Tabellen, den Aufbau von JOINs oder das Ausführen von vordefinierten Kalkulationen sowie das Verhalten bei technischen Störungen, wie einem Netzwerkausfall oder Fehlern bei Speichermedien.

ODBMS sind jedoch so verschieden und oft derart auf bestimmte Anwendungen spezialisiert, dass sie kaum mehr unmittelbar miteinander zu vergleichen sind. Im Markt gibt es einen solch weit gespannten Reigen an Anwendungen, dass es künftig nicht mehr die eine "beste" Datenbank geben wird, sondern eine große Anzahl an verschiedenen Lösungen, die jeweils in ihrer eigenen Anwendungsnische glänzen können.

Predictive Analysis (Big Data für Ultra-Large-Systems): Hier geht es um die klassische Herausforderung im Bereich Big Data. Das ist der Sektor, den primär auch SAP mit seinem In-Memory-System HANA umwirbt. Wir sprechen hier auch oft von Ultra-Large-Systems als Bezeichnung für das Zusammenspiel von einer unkontrollierbar großen und gewöhnlich nicht vorhersehbaren hohen Anzahl an Computersystemen und Software-Agenten. Ziel ist, aus einer riesigen sich ständig ändernden Datenmenge Erkenntnisse zu gewinnen und so künftige Entwicklungen vorherzusagen.

Vorgehensweise bei Predictive-Analytics-Projekten

5. Integration der neuen analytischen Methoden in die bestehenden Systeme.

4. Pilotprojekt/Prototyp: Auswertung der Daten in entsprechenden Vorhersagemodellen; Modelle und Analyse-Methoden werden ständig verfeinert, kombiniert und evaluiert, um die Qualität der Prognose zu verbessern.

3. Auswahl/Zuschneiden der Datensätze und Kombination mit externen Daten.

2. Business Case festlegen: Definition eines konkreten Ziels mit Kennzahlen (z.B. Umsatz um Summe x steigern, Fehlmenge reduzieren etc.), das mit Hilfe der Prognosen erreicht werden soll.

1. Analyse des Geschäftsmodells, der Geschäftsprozesse und der vorhandenen Daten.

Financial Storm Prediction: Eine momentan sehr gefragte Anwendung sind Systeme zur Analyse von "Financial Storms", also das Vorhersagen von plötzlich und heftig auftretenden ("sturmartig") Veränderungen am Finanzmarkt wie beispielsweise Börsen-Crashs und Bankenpleiten wie im Falle Lehmann Brothers. Das funktioniert ähnlich wie die Wettervorhersage und - kein Wunder - die Algorithmen sind verwandt.

Financial Fraud Analysis: Ebenfalls im Finanzsektor sehr beliebt sind Systeme, die alle Banktransaktionen online analysieren und Erkenntnisse gewinnen wollen, ob kriminelle Aktivitäten stattfinden.

Data Streaming: Beim Data Streaming geht es um das Bereitstellen großer Datenmengen an eine Vielzahl von Clients, die aber allesamt gewöhnlich zeitversetzt zueinander darauf zugreifen. Klassiker ist hier das Videostreaming beim Zugriff auf Videotheken.

Industrie 4.0, Smart City und Connected Cars: Hier geht es darum, einen permanent dahin rauschenden Informationsfluss bereits frühzeitig nach brauchbaren und unbrauchbaren Daten auszusortieren. Es gilt, Daten zu analysieren bevor diese überhaupt abgespeichert werden - der Klassiker einer In-Memory Anwendung. Tatsächlich ist dies das Spielfeld von Enterprise Service Bus Software und Message-Queuing Systemen wie zum Beispiel IBM Websphere MQ, Oracle OSB, Software AG Webmethods, Fiorano ESB, MULE oder Talend.

Industrie 4.0: Ein Leitfaden für CIOs
Industrie 4.0 - Leitfaden für CIOs
Stephen Prentice (Gartner) legt den IT-Verantwortlichen zwölf Dinge ans Herz, die sie für den IT-Beitrag zu Industrie 4.0 beachten beziehungsweise tun sollten:
1. Nur keine Panik!
Industrie 4.0 ist kein Sprint, sondern ein Marathon. Die gute Nachricht: Wenn man nicht so genau sieht, wo es hingeht, kann man bislang auch nicht wirklich eine Gelegenheit verpasst haben.
2. Integrieren Sie Informationstechnik und operationale Technik!
Unter operationaler Technik (OT) versteht Gartner Ingenieurtechnik mit einer Langzeitperspektive. Sie liefert Information über das, was im Inneren der Produktionssysteme vor sich geht. Dabei ist sie digital, aber nicht integriert.
3. Steigern Sie den Reifegrad Ihres Fertigungsprozesses!
Lernen Sie Ihre Mitspieler auf der Produktionsseite kennen. Verstehen Sie deren Sorgen und Hoffnungen und planen Sie den gemeinsamen Fortschritt auf einem fünfstufigen Weg.
4. Integrieren Sie Ihre Informations-Assets!
Reißen Sie Ihre Silos nieder und öffnen Sie Ihre Unternehmenssysteme auch für externe Informationsquellen: Wetterdaten, Social Media etc. "Ihre wertvollsten Daten könnten von außerhalb Ihres Unternehmens stammen", konstatierte Gartner-Analyst Prentice.
5. Verinnerlichen Sie das Internet der Dinge!
Das Internet of Things (IoT) ist der international gebräuchliche Begriff für das, was die Grundlage der Industrie 4.0 - und des digitalen Business - bildet.
6. Experimentieren Sie mit Smart Machines!
Virtuelle Assistenten für die Entscheidungsunterstützung, neuronale Netze, cyber-physikalische Systeme, Roboter und 3D-Druck mögen aus der heutigen Perspektive noch als Spielerei erscheinen. Aber es lohnt sich, ihre Möglichkeiten auszuloten.
8. Scheuen Sie sich nicht, den Maschinen ein paar Entscheidungen anzuvertrauen!
Der Fachbegriff dafür ist Advance Automated Decision Making. Es gibt schon einige Bereiche, wo Maschinen statt des Menschen entscheiden, beispielsweise bei der Einparkhilfe für Kraftfahrzeuge.
9. Denken Sie wirklich alles neu!
Jedes Produkt, jeder Service, jeder Prozess und jedes Device wird früher oder später digital sein. Denken Sie sich einfach mal Sensoren und Connectivity zu allem hinzu.
10. Führen Sie bimodale IT ein!
Die Koexistenz zweier kohärenter IT-Modi (einer auf Zuverlässigkeit, einer auf Agilität getrimmt) gehört zu den Lieblingsideen der Gartner-Analysten. Stabilität und Schnelligkeit lassen sich so in der jeweils angemessenen "Geschwindigkeit" vorantreiben.
11. Kollaborieren Sie!
Werden Sie ein Anwalt für Industrie 4.0. Schließen Sie sich Peer Groups, Konsortien und Standardisierungsgremien an. Denn die besten Ideen müssen nicht zwangsläufig aus dem eigenen Unternehmen kommen.
12. Halten Sie die Augen offen!
Die Dinge verändern sich - ständig. Erfolgreiche Unternehmen wie Google und Amazon wissen das. Sie sind immer auf der Suche nach neuen Entwicklungen und Möglichkeiten.
7. Werden Sie ein Digital Business Leader!
Der CIO sollte sich für das digitale Business engagieren. Dazu muss er aber seinen Elfenbeinturm verlassen. Denken Sie von innen nach außen, rief Prentice die IT-Chefs auf, und verbringen Sie etwa 30 Prozent Ihrer Arbeitszeit mit Menschen von außerhalb Ihrer Organisation.

Industrie 4.0: Industrie 4.0 ist letztlich eine Kombination von Data Streaming und Predictive Analysis. Einerseits liefern Produktionsmaschinen laufend neue Informationen. Diese müssen aber zunächst ausgedünnt werden, um überhaupt eine vernünftige Analyse zu ermöglichen. Smart City, Connected Cars sind verwandte Anwendungen, die weitgehend die gleiche Herausforderung darstellen.

Smart Coast Guard: Eine sehr anschauliche Anwendung demonstriert die US-Küstenwache. Dort werden die Funkpositionssignale eingesammelt, die jedes Schiff, das sich in den Hoheitsgewässern der USA aufhält mindestens alle fünf Minuten aussenden muss. Bei mehreren Zehntausend Schiffen im Durchschnitt kommen wir hier leicht auf 100 Positionssignalen pro Sekunde.

Technologie der ODBMS

Um die Performance eines ODBMS zu steigern, gibt es viele Stellschrauben. Eine davon ist es, die Zugriffe auf die Datenbank zu beschleunigen, was durch schnellere Disk-Zugriffe bis hin zur In-Memory-Technologie möglich wird, aber auch durch bessere Zugriffsalgorithmen und schnellere Übertragung zwischen dem Datenbankserver und dem anfragenden Client. Ausgangspunkt für unsere Betrachtung ist die bekannte klassische nach dem Entity Relationship Model (ERM) funktionierende Datenbank. Zur Erinnerung: eine Datenbank ist relational, wenn sämtliche Datenobjekte ohne Redundanz abgespeichert werden. Das ist zwar in der Theorie sehr sinnvoll, in der Praxis gibt es kaum eine SQL Anwendung, die sich an die Regel hält. Aus Gründen der Performance werden oft wichtige Information in nachgeordneten Tabellen wiederholt.

Nehmen wir als Beispiel eine Bestellung. Eine solche besteht in einem RDBMS aus zwei grundsätzlichen Komponenten: einem Bestellkopf und den Bestellpositionen.

Kopf

Lieferant=1000, Name=IBM, Datum=12.12.2015

Position

Position=1, Artikel=4711,Anzahl=100 St

Position

Position=2, Artikel=2000,Anzahl=120 St

Position

Position=3, Artikel=3000,Anzahl=150 St

Um sich aber in der Anwendung das Lesen von zwei Tabellen zu sparen, werden gerne Kopfinformationen in die Positionen repliziert:

Kopf

Lieferant=1000, Name=IBM, Datum=12.12.2015

Position

Position=1, Lieferant=1000, Artikel=4711,Anzahl=100 St

Position

Position=2, Lieferant=1000, Artikel=2000,Anzahl=120 St

Position

Position=3, Lieferant=1000, Artikel=3000,Anzahl=150 St

Dieses Abweichen vom streng relationalen Dogma liegt komplett in der Verantwortung des Entwicklers einer Anwendung und ist - vorsichtig ausgedrückt - selten sinnvoll. Da die Daten in einem modernen DBMS keineswegs Tabelle für Tabelle und Zeile für Zeile abgespeichert werden, kann diese Art des Umgangs mit Datenbanken manchmal die Performance der Anwendung sogar bremsen. Wenn jede Anwendung seine Daten erst in den Hauptspeicher kopiert oder Daten redundant ablegt, macht sich der Entwickler nicht nur das Leben selber schwer, auch die Gesamtperformance der kompletten Installation leidet darunter, dass Speicher unvorhersehbar und extensiv missbraucht wird, anstatt dem DBMS sauber die Aufbereitung der Daten zu überlassen.

Ein ODBMS erzeugt eine zusätzliche Schicht zur Datenbank und versucht dadurch, dem Entwickler einer Anwendung ein Werkzeug an die Hand zu geben, Daten nur noch als logische Objekte anzusprechen. Bauen wir das Beispiel mit der Bestellung von gerade eben in die OO-Denkweise um: Anstatt zunächst den Kopf einer Bestellung aus der Kopftabelle ("select * from ORDER_HEADER where ORDERNO = 123..") zu lesen und danach die Positions-Daten aus der Positionstabelle ("select * from ORDER_ITEMS where ORDERNO = ORDER_HEADER-ORDERNO ..") einzusammeln, lässt sich die Anwendung immer das komplette Objekt, auch Entität genannt, zurückgeben: get ORDER with key = 123.

Auf diese Weise schaffen ODBMS die Möglichkeit, Daten als komplette Objekte zu sehen, ohne dass sich Anwender um die physikalische Anordnung der Daten kümmern müssen. Das ist schon deshalb wünschenswert, weil Entwickler gar nicht wissen können und sollen, wie die Daten wirklich in der Datenbank abgelegt sind. Ob die Daten des Objekts nun komplett in den Speicher geladen werden, oder erst beim ersten Zugriff, liegt damit in der Entscheidungsgewalt der ODBMS.

Programmierlogik von der Datenbank entkoppeln

Eine solche Entkopplung der Programmierlogik von der Datenbank wird in Zukunft immer bedeutsamer: Bei Cloud-Datenbanken liegen eventuell die Schlüsselfelder einer Tabelle auf einem ganz anderen Server als die Daten. Das ist eine mögliche Strategie um den Gesamtdurchsatz der Datenbank zu optimieren. Um diese Strategie nicht dem Zufall zu überlassen, verwenden DBMS dazu sogenannte Optimizer, die anhand von Berechnungen aus einer großen Anzahl von Strategien diejenige auswählen, die in der Praxis die beste Performance verspricht und dadurch die durchschnittliche Zugriffszeit optimiert.

ODBMS werden auch als Objekt-Datenbanken oder OLTP (für: Online Transaction Processing) bezeichnet. Die Begriffe sind weitgehend gleich und stammen aus unterschiedlichen Philosophien. So geht der Begriff Objekt-Datenbank davon aus, dass die Datenbank auch nur eine Sammlung von Objekten darstellt, die genauso angesprochen werden wie Programmierobjekte innerhalb einer objektorientierten Programmiersprache. Der Begriff OLTP wird heute als Online Transaction Processing bezeichnet und hieß ursprünglich Object-Layer Transaction Processing, war also ein Synonym zu Objekt-Datenbank. Wer auch immer die Langform "Online" ins Spiel brachte, wollte damit vor allem das Ziel deutlich machen, Zugriffe auf Ergebnisse in Echtzeit zu erzielen. Allerdings sagt die Begrifflichkeit "Echtzeit" ohnehin nicht viel aus, da eigentlich bei jeder Verarbeitung eine Echtzeitverarbeitung angestrebt wird, das gilt genauso auch für klassische SQL-Datenbanken.

In der Praxis ist die Unterscheidung zwischen Non-SQL- und SQL-Datenbanken eher theoretischer Natur. Tatsächlich sind fast alle hoch-performanten SQL-Datenbanken in ihrem Inneren nicht relational mit getrennten Tabellen implementiert. Der Unterschied liegt vielmehr in der Art und Weise, wie auf die Daten tatsächlich zugegriffen wird. Umgekehrt wird damit aber auch deutlich, dass die heutige, vor allem als SQL-Datenbank eingesetzte Software, fast ausnahmslos auch in der Liga der ODBMS mitspielen kann.

Funktionsweise von Datenbanken für Client-Server Anwendungen

Jedes DBMS ist selbst nach einem Client-Server-Modell aufgebaut. Dieses Modell besteht aus mehreren funktionalen Ebenen, entsprechend dem Aufbau jedes modernen Betriebssystems. Jeder der Layer kommuniziert dabei jeweils ausschliesslich mit seinem benachbarten Peer-Layer. Das sind die wesentlichen Kommunikations-Schichten einer DBMS:

Kommunikationsschichten einer Datenbank
Foto: Axel Angeli

Real Time OS: Grundlage der Technologie ist ein Real-Time Betriebssystem wie Windows, Unix, zOS und zunehmend auch virtuelle Cloud Betriebssysteme usw.

Physical Translation Layer (API): Die API dient dazu, dass die darüber liegende Schicht keine Kenntnis zum tatsächlichen Betriebssystem haben muss. Es wird ein virtuelles Betriebssystem emuliert.

Physical Storage Layer: Diese Ebene entscheidet, welche Speichermethode verwendet wird. Auf dieser Ebene finden sich auch die Optimierungs-Algorithmen.

Cluster (Multi-Server) Arbitration Layer: Die Multi-Server Arbitration sorgt dafür, dass auch bei verteilten Systemen die Datenkonsistenz bewahrt wird.

Transaction Management Layer (Concurrency): Auf dieser Ebene werden die konkurrierenden Zugriffe von verschiedenen Clients auf dieselben Entitäten gesteuert und sichergestellt, dass nur konsistente Daten bereit gestellt werden.

Object Access Layer: Der Object Layer stellt die Abfragesprache beziehungsweise API und das Zugriffsmodell bereit, mit der eine Anwendung auf die Daten zugreifen kann. Hier wird zwischen SQL, OLTP, OLAP und den zahlreichen anderen Zugriffen eines ODBMS unterschieden.

Für die nähere Betrachtung mit Blick auf den modernen Nutzen als ODBMS interessieren uns vor allem die Storage Engine und der Object Access Layer:

Austauschbare Storage Engine ist das Herz einer Datenbank

Die Storage-Engine ist das Herzstück jedes DBMS und in aller Regel austauschbar. Bei der Open-Source Datenbank MariaDB (alias MySQL) zum Beispiel können Anwender standardmäßig zwischen Varianten einer Speicher-Engine wählen, zum Beispiel für Speicherung nach dem ERM (InnoDB, XtraDB), transaktionsfreie Speicherung wie MyISAM oder CSV, einer In-Memory-Option (MEMORY alias HEAP) sowie einer Option für verteilte Datenspeicherung über mehrere Server (CLUSTER) - und das sind noch längst nicht alle Möglichkeiten.

File-System Storage Engine: Eine File-System Storage Engine speichert Daten in einzelnen Betriebssystem-Dateien ab und greift grundsätzlich durch das Betriebssystem auf die Daten zu. Typischerweise sind die Daten einer Tabelle einer relationalen Datenbank pro Datei abgespeichert, und innerhalb der Datei werden Daten zeilenweise abgelegt. Typischer Vertreter ist das klassische dBase. Um Daten zwischen Tabellen zu verknüpfen, ist es erforderlich, mehrere Dateien zu öffnen und diese auch sequentiell zu durchsuchen. Das macht diese Methode wenig effizient.

File Storage Engine: Um diese Einschränkungen des File-Systems zu umgehen, werden üblicherweise die Daten in einer eigenen großen Datei abgelegt. Die Verwaltung der Daten innerhalb der Datei übernimmt das DBMS selbst. Dadurch müssen Daten auch nicht mehr Tabelle für Tabelle und innerhalb der Tabellen zeilenweis abgelegt werden.

Spaltenweises Abspeichern: Eine alternative Speichermethode ist das spaltenweise Speichern der Daten. Üblicherweise werden Datensätze nur nach einer Spalte durchsucht. Wenn nun die Felder einer Spalte nacheinander liegen, kann man die ganze Spalte als einen Block in den Hauptspeicher laden und durchsuchen, was sehr viel schneller geht und eine Art In-Memory Effekt darstellt. Scheinbarer Nachteil ist zunächst, das die Daten wieder in die ursprüngliche Form arrangiert werden müssen. Der Nachteil ist nur scheinbar, denn tatsächlich muss eine Datenbank die Daten ohnehin in ein Ausgabeformat aufbereiten. Da die Daten aber aus dem Hauptspeicher geholt werden, spielt es kaum eine Rolle, dass die Daten nicht reihenweise abgelegt sind.

Hash-Verfahren: Eine weitere Optimierung wird erzielt, indem man die Werte einer Datenbank nicht unmittelbar abgelegt, sondern die Werte einer Tabelle auflistet und durchnummeriert. Dadurch verhindert man, dass Datenwerte mehrfach gespeichert werden müssen. Das spart Speicherplatz und das Suchen außerhalb von Schlüsselfeldern funktioniert erheblich schneller. Das Verfahren nennt man HASH.

In-Memory: In-Memory, auch HEAP genannt, ist ein Verfahren, welches zur Lagerung von temporären, unkritischen Daten dient. Üblicherweise nutzt man dies zum Zwischenspeichern von Teilergebnissen, die zum Ende einer kompletten Transaktion nicht mehr benötigt werden. Durch die zunehmende Popularität von Solid-State-Disks (SSD) ist dieses Verfahren nicht mehr zeitgemäß. Fast alle DBMS bieten eine solche Storage Engine an. Besonders populär waren diese aber selten und fristeten deshalb eher ein Nischendasein Erst durch SAPs HANA erlangte das Thema wieder mehr Popularität.

Cluster: Cluster-Storage-Engines speichern Daten nicht in einer einzigen Datei auf einem einzigen Datenträger ab, sondern in verteilten Landschaften. Die bekannten Tablespaces sind bereits ein Ansatz in diese Richtung. Jedoch reicht das Clustern weiter: Ähnlich wie RAID-Systeme lassen sich die Daten auch redundant auf verschiedenen Systemen ablegen. Durch aktive Synchronisation können so Daten auf einem lokalen, schnellen Medium abgelegt werden, zum Beispiel einer RAM-Disk oder besser SSD, und werden dann in sogenannten "Totzeiten" der CPU auf den endgültigen Speicherplatz verschoben. Cluster-Storage-Engines decken übrigens die Vorteile von In-Memory ab und sind diesen meist überlegen, wenn es um das Thema Geschwindigkeitsoptimierung geht.

Graphen-basierte Speichertechnologie

Einen anderen Ansatz verfolgen die Graphen-basierten Speichermethoden. Grundidee dabei ist, dass Daten als Assoziationen in Form von miteinander durch Listen verbundenen Knoten abgelegt werden, ähnlich wie es der vereinfachten Vorstellung von der Funktionsweise des Gehirns von Säugetieren entspricht. Wir kennen das Konzept von der Programmiersprache LISP. Der Ursprung liegt genau wie das Konzept der Objektorientierung mit Smalltalk und SIMULA in den 1960ger Jahren. Ein Beispiel:

Das Potential der Graphen-Technologie ist enorm, vor allem weil die Möglichkeiten weit größer sind, als die anderer Speichertechnologien. Aber wie schon bei LISP wird eine Verbreitung wegen mangelnder Ausbildung der Informatiker behindert. Graphen erfordern ein tieferes mathematisches Verständnis, welches in der Informatik meist wenig gefördert wird. Es gibt verschiedene Varianten der Graphen-basierten Methode: Die am weitesten fortgeschrittene darunter ist RDF, auch Triple Store genannt, welche Teil der Spezifikationen des WWW-Konsortium ist und als primäres Ziel das Speichern unstrukturierter Daten verfolgt.

Fazit: So gut ist SAP HANA

Es wäre unfair den zahlreichen Konkurrenten mit ihren hervorragenden Datenbanklösungen gegenüber, alles an HANA zu messen. SAP gebührt aber der Verdienst, das wichtige Zukunftsthema richtig in die Köpfe der Entscheider gebracht zu haben. Technologisch gesehen ist HANA durchaus ein Produkt mit einer frühen Marktreife. Mit dem Marketing-Fokus auf den in der Praxis vollkommen irrelevanten Aspekt des In-Memory-Computings lenkt SAP allerdings von der wesentlichen Bedeutung und Leistung ab: nämlich als Analyse- und Prognose-Software.

Die Geschichte von SAP
2016
Auf der Kundenkonferenz Sapphire kündigte SAP im Mai eine Kooperation mit Microsoft an. Beide Hersteller wollen künftig SAPs In-Memory-Plattform HANA auf Microsofts Cloud-Infrastruktur Azure unterstützen. Microsofts CEO Satya Nadella sagte: "Gemeinsam mit SAP schaffen wir ein neues Maß an Integration innerhalb unserer Produkte."
2016
SAP und Apple wollen gemeinsam native Business-iOS-Apps für iPhone und iPad entwickeln. Experten sehen SAPs Festlegung auf eine mobile Plattform kritisch und monieren fehlende Offenheit. Anwendervertreter reagierten überrascht und verlangten Aufklärung was die neue Mobile-Strategie bedeutet.
2015
Im Sommer verunglückt SAP-CEO Bill McDermott bei der Geburtstagsfeier seines Vaters. Er stürzt mit einem Glas auf der Treppe und verliert nach einer Operation ein Auge. Im Herbst meldet sich der US-amerikanische Manager als wieder voll einsatzfähig zurück.
2015
Im Februar stellt SAP mit S/4HANA eine neue Generation seiner Business-Software und damit den Nachfolger für die Business Suite vor. SAP definiere damit das Konzept des Enterprise Resource Planning für das 21. jahrhundert neu, pries SAP-Chef Bill McDermott die Neuentwicklung. Für den Großteil der Unternehmen dürfte das Produkt noch Zukunft bleiben, konterte die Anwendervereinigung DSAG. Die Prioritäten vieler Kunden lägen eher auf klassischen Projekten rund um das ERP-System.
2014
SAP-Technikchef Vishal Sikka gibt im Mai seinen Posten auf und wird CEO von Infosys. SAP sucht lange einen Nachfolger für Sikka, holt im November schließlich den langjährigen Microsoft-Manager Quentin Clark für diesen Posten.
2012
Die Walldorfer setzen mit dem Kauf des amerikanischen Cloud-Computing-Anbieters SuccessFactors ihren Weg ins Cloud-Geschäft fort – nachdem kurz zuvor Wettbewerber Oracle RightNow übernommen hat. Der Kaufpreis lag mit 2,4 Milliarden Euro über die Hälfte höher als der aktuelle Marktwert. Cloud-Services werden mit der SuccessFactors-Lösung vor allem im Human-Ressources-Umfeld angeboten. Außerdem schnappt sich SAP den weltweit zweitgrößten Cloud-Anbieter für Handelsnetzwerke Ariba für 3,3 Milliarden Euro.
2011
In 2011 ist das Formtief vergessen, die Walldorfer fahren die besten Ergebnisse ihrer Geschichte ein. Die Innovationsstrategie geht auf, auch wenn zwischendurch gezweifelt wurde, ob SAP seinen Kunden nicht davon-sprintet: 2011 implementieren die ersten Kunden die In-Memory-Plattform HANA, immer mehr Kunden nutzen die mobilen Lösungen, die aus dem Sybase-Deal entstanden sind.
2010
Der Paukenschlag: Hasso Plattner reißt mit dem Aufsichtsrat das Ruder herum. Der glücklose Léo Apotheker, der zuvor mit der Erhöhung der Wartungsgebühren viele Kunden vor den Kopf gestoßen hatte, muss gehen. Die neue Doppelspitze aus Bill McDermott und Jim Hagemann Snabe verspricht den Anwendern wieder mehr Kundennähe. CTO Vishal Sikka wird Vorstandsmitglied und SAP übernimmt Sybase, einen Anbieter für Informationsmanagement und die mobile Datennutzung, zum Preis von etwa 5,8 Milliarden Dollar.
2008
Mit der Erhöhung der Wartungsgebühren von 17 auf 22 Prozent und den Modalitäten des „Enterprise Support“, die viel Aufwand für die Anwender bringen, verärgert SAP seine Kunden massiv. Trotz intensiver Auseinandersetzung auf dem DSAG-Kongress bleibt SAP bei seiner Linie. Mittlerweile ist Léo Apotheker zweiter Vorstandssprecher neben Kagermann. Ende des Jahres beugt sich SAP dem Kundenwiderstand.
2008
Die größte Übernahme in der Unternehmensgeschichte: 2008 kauft SAP den Business-Intelligence-Spezialisten Business Objects für 4,8 Milliarden Euro und wird damit der bisherigen Strategie untreu, aus eigener Kraft zu wachsen. Die Integration mit der eigenen SAP-BI-Palette gestaltet sich aufwendig und wird sich über mehrere Jahre hinziehen. Die 44.000 BO-Kunden sollen dabei helfen, die Kundenzahl bis 2010 auf 100.000 zu steigern.
2007
Über viele Jahre hinweg entwickelt SAP an der SaaS-ERP-Lösung Business byDesign für kleinere Unternehmen. Rund drei Milliarden Euro wurden laut „Wirtschaftswoche“ im Entstehungsprozess versenkt. Trotz der Arbeit von 3000 Entwicklern kommt die Software Jahre zu spät. Obwohl innovativ, hat es die Lösung schwer im deutschen Markt. 2013 wird byDesign ins Cloud-Portfolio überführt.
2006
Mit „Duet“ bringen SAP und Microsoft eine gemeinsame Software auf den Markt, mit der sich MS Office einfach in SAP-Geschäftsprozesse einbinden lassen soll. 2006 wird auch die Verfügbarkeit der neuen Software SAP ERP angekündigt, die auf dem SOA-Prinzip (Service oriented Architecture) basiert.
2003
Abschied des letzten SAP-Urgesteins: Hasso Plattner zieht sich aus dem Vorstand zurück und geht in den Aufsichtsrat, Henning Kagermann wird alleiniger Vorstandsprecher. SAP stellt die Integrationsplattform NetWeaver vor, die Basis für künftige Produkte sein soll. Die Mitarbeiterzahl liegt jetzt bei 30.000.
2002
Der ERP-Hersteller will das bisher vernachlässigte Feld der KMUs nicht mehr dem Wettbewerb überlassen. Auf der CeBIT 2002 stellt SAP mit Business One eine ERP-Lösung für kleine bis mittelständische Unternehmen mit rund fünf bis 150 Mitarbeitern vor. Doch einfach haben es die Walldorfer in diesem Marktsegment nicht. Zu stark haftet der Ruf an den Walldorfern, hauptsächlich komplexe und teure Lösungen für Konzerne zu bauen.
1999
Die New Economy boomt und der E-Commerce hält Einzug bei SAP: Plattner kündigt die neue Strategie von mySAP.com an. Die Software soll Online-Handels-Lösungen mit den ERP-Anwendungen auf Basis von Webtechnologie verknüpfen. Im Vorjahr hatten die Walldorfer ihr Team um die Hälfte verstärkt, jetzt arbeiten 20.000 Mitarbeiter bei SAP. Weil die Kunden beim Umstieg mehr zahlen sollen, gibt es längere Zeit Gegenwind, schließlich werden die Internet-Schnittstellen auch im Rahmen der R/3-Wartung geboten. Derweil ist die Zentrale gewachsen.
1997
Die SAP-Anwender organisieren sich in der Deutschsprachige SAP-Anwendergruppe e.V. (DSAG), um ihre Interessen gemeinsam besser vertreten zu können. Laut Satzung ist das Ziel des Vereins die „partnerschaftliche Interessenabstimmung und Zusammenarbeit zwischen SAP-Softwarebenutzern und SAP zum Zweck des Ausbaus und der Verbesserung der SAP-Softwareprodukte“.
1997
Der ERP-Hersteller feiert sein 25. Jubiläum, zum Gratulieren kommt Bundeskanzler Helmut Kohl, der im Jahr darauf von Gerhard Schröder abgelöst wird. Der Umsatz liegt bei über sechs Milliarden Mark, das Geschäftsergebnis erstmals über der Milliarden-Grenze. Mehr als zwei Drittel werden im Ausland erwirtschaftet. SAP beschäftigt knapp 13.000 Mitarbeiter und geht an die die Börse in New York (NYSE).
1995
1995 versucht der ERP-Anbieter erstmals, in Zusammenarbeit mit Systemhäusern den Mittelstandsmarkt zu beackern. Es sollte noch einige Jahre dauern, bis sich mehr mittelständische Unternehmen auf die komplexe Software einlassen wollten. Mit knapp 7.000 Mitarbeitern erwirtschaftet SAP einen Umsatz von 2,7 Milliarden Mark, mehr als doppelt so viel wie noch zwei Jahre zuvor. Rudolf Scharping, damals noch SPD-Parteivorsitzender, kommt zu Besuch.
1993
Shake-Hands zwischen Plattner und Gates. SAP schließt ein Kooperationsabkommen mit Microsoft ab, um das System R/3 auf Windows NT zu portieren. SAP kauft zudem Anteile am Dokumentenmanagement-Anbieter IXOS. Zum ersten Mal überschreiten die Walldorfer die Milliardengrenze beim Umsatz.
1992
Seit 1992 wird R/3 ausgeliefert. Die Walldorfer hatten die Software für die AS/400 von IBM konzipiert, nach Performance-Problemen wich man auf Unix-Workstations mit Oracle-Datenbank im Client-Server-Prinzip aus. Das internationale Geschäft wächst: 1992 verdient die SAP im Ausland schon knapp die Hälfte von dem, was sie in Deutschland einnimmt. Der Gesamtumsatz beläuft sich auf 831 Millionen Mark. 3157 Mitarbeiter sind jetzt für SAP tätig.
1991
In diesem Jahr steigt Henning Kagermann (rechts im Bild), der seit 1982 die Entwicklungsbereiche Kostenrechnung und Projektcontrolling verantwortet, in den Vorstand auf.
1990
SAP übernimmt das Softwareunternehmen Steeb zu 50 Prozent und das Softwarehaus CAS komplett, um das Mittelstandsgeschäft zu verstärken. Die Mauer ist gefallen und die Walldorfer gründen gemeinsam mit Siemens Nixdorf und Robotron die SRS in Dresden. Die Berliner Geschäftsstelle wird eröffnet und SAP hält seine erste Bilanzpressekonferenz ab.
1988
SAP geht an die Börse: Hasso Plattner am ersten Handelstag der SAP-Aktie.
1987
Der erste Spatenstich: Dietmar Hopp startet 1987 den Bau der SAP-Zentrale in Walldorf.
1983
1983 zählt das Unternehmen 125 Mitarbeiter und erwirtschaftet 41 Millionen Mark im Jahr. Nach der Fibu adressiert SAP auch das Thema Produktionsplanung und -steuerung. Beim Kunden Heraeus in Hanau wird zum ersten Mal RM-PPS installiert. Im Jahr zuvor hatten die Gründer von SAP (v.l.: Dietmar Hopp, Hans-Werner Hector, Hasso Plattner, Klaus Tschira) zehnjähriges Jubiläum gefeiert.
1979
SAP setzte sich mit dem Datenbank- und Dialogsteuerungssystem der IBM auseinander: Das war der Auslöser eine die Neukonzeption der Software und Grundstein für SAP R/2. Aus den Realtime-Systemen entstand in den 70iger Jahren das Online Transaction Processing (OLTP). So sahen Anfang der 80iger Jahre die Arbeitsplätze bei SAP aus.
1976
Die Software sollte Lohnabrechnung und Buchhaltung per Großrechner ermöglichen. Anstatt auf Lochkarten wurden die Daten per Bildschirm eingegeben – das nannte sich Realtime und das „R“ blieb über Jahrzehnte Namensbestandteil der Lösungen. Weil die Software erstmals nicht nur für ein Unternehmen entwickelt wurde, sondern universeller einsetzbar war, gilt SAP als Miterfinder des Standardsoftware-Ansatzes. Aber auch der Fußball kam nicht zu kurz: Das Computerteam mit Hasso Plattner und Dietmar Hopp auf dem Feld.
1972
1972 gründen die fünf ehemalige IBM-Mitarbeiter Claus Wellenreuther, Hans-Werner Hector, Klaus Tschira, Dietmar Hopp und Hasso Plattner das Unternehmen „SAP Systemanalyse und Programmentwicklung“. Sie wollen eine Standardanwendungssoftware für die Echtzeitverarbeitung schaffen, die sich für unterschiedliche Unternehmen nutzen lässt und die Lochkarten ablöst.

Durch das mit HANA verwandte APO konnte SAP bereits zeigen, Anwendungen in der Prognostik mit nennenswerter Qualität liefern zu können. Das schaffen aber auch die anderen Mitspieler im ODBMS-Markt, von denen es mittlerweile hunderte für alle möglichen Spezialanwendungen gibt, darunter auch die bekannten universellen Player wie zum Beispiel IBM mit DB2 und Cognos, SAS, Oracle, Microsoft, Caché und viele andere - wobei man auch die Open-Source-Lösungen wie MariaDB, PostgreSQL nicht aus den Augen verlieren sollte.

Künftig sind vor allem Lösungen gefragt. Die Technologie darunter werden die Entwickler der jeweiligen Lösungen bestimmen. Es braucht Apps, nicht Betriebssysteme. Für die Anwender bedeutet dies, sich nicht auf die Technologie zu konzentrieren und an einen Hersteller zu binden, sondern Wege zu entwickeln, um den Mehrwert einer Lösung zu ermitteln und die beste Lösung aus einem Reigen verschiedener Angebote zu finden. HANA wird dabei sicher eine Rolle spielen, aber als eine Option unter vielen Möglichkeiten.

Die Informatik der Zukunft wird einer Großstadt ähneln, wo es um Vielfalt geht und ein möglichst harmonisches Zusammenspiel. In zehn Jahren werden wir nicht einzelne Gewinner sehen, sondern eine Auswahl passender Anbieter für bestimmte Anwendungsbereiche. HANA wird schon allein durch seine Marktmacht ihre Position finden, genauso wie die anderen Giganten IBM, Microsoft oder SAS. Aber der Markt wird bunt bleiben, denn in der Informatik der Zukunft ist für eine One-Vendor-Politik kein Platz mehr.