"Wer braucht schon analytische Datenbanken?", fragt Alfred Schlaucher provokativ am Anfang seines Vortrags auf der DOAG 2014 BI in München. Der Oracle-Mitarbeiter referiert über die für Herbst angekündigte In-Memory-Option des Datenbank-Releases 12.1.0.2. Er hält keine große Rede – die kurze Live-Demo spricht für sich: Für eine Abfrage innerhalb von über 207 Millionen Datensätzen erscheint das Ergebnis nach guten 12 Sekunden; die gleiche Abfrage nach Aktivierung der In-Memory-Option dauert gerade mal 77 Millisekunden.
Was Oracle gemacht hat, klingt relativ einfach: Zusätzlich zu dem vorhandenen Cache, der bereits abgefragte Daten enthält, hat das Entwickler-Team die Datenbank um einen In-Memory-Store für Query-Processing ergänzt. Im Gegensatz zu der sonst zeilenorientierten Datenbank speichert dieser Informationen spaltenorientiert (column based store). Das hat der Vorteil, dass das System bei manchen Abfragen nicht alle Blöcke lesen muss, sondern eine einzige Spalte (zum Beispiel: Select MAX (umsatz) FROM f_umsatz)
Bisher war die spaltenorientierte Speicherung unter anderem Anwendern von Exadata in Zusammenhang mit der Hybrid Columnar Compression vorbehalten. Mit der neuen In-Memory-Option werden diese Vorteile direkt in der Datenbank zur Verfügung gestellt.
"Keine Migration, kein Aufwand: Sie benutzen ihre bestehenden Daten, ihre bestehenden ETL-Prozesse", beschreibt Schlaucher das Prozedere. Wie immer setzt Oracle auf eine intelligente Nutzung der Ressourcen: Im Gegensatz zu anderen Lösungen werden nicht alle Daten In-Memory gehalten, sondern nur diejenigen, die tatsächlich gebraucht werden. Die In-Memory-Option sei nur ein Schalter, betont Schlaucher. Dieser kann mit einer ALTER-Anweisung auf Tabellen, Partitionen, Views und Indices aktiviert werden. Für den Einsatz im Data-Warehouse-Umfeld empfiehlt Schlaucher deswegen, die gesamte Informationsbeschaffungskette zu betrachten und die Option je nach Bedürfnissen zu nutzen.
Die Daten werden im In-Memory-Store im Übrigen im komprimierten Zustand gehalten. Oracle habe dafür ein neues Komprimierungsverfahren (In-Memory Compression Unit) entwickelt, womit Daten schnell dekomprimiert werden können.
Was die Lizenzierungsfrage angeht, kann zu diesem Zeitpunkt nur spekuliert werden. Gerüchten zufolge könnte die In-Memory-Option auf eine Nutzung in Verbindung mit Exadata eingeschränkt werden. Andere meinen, dass sie für die Datenbank freigegeben wird. Bisher ist auch davon auszugehen, dass Oracle an dem üblichen CPU-basierten Preismodell festhält.
Detailliertere Informationen zum Thema könnte Oracle Vice President Günther Stürner in der Keynote zur DOAG 2014 Datenbank verraten.


