Daten sind unsere Leidenschaft!

Oracle 12c In-Memory Option

Angekündigt: bis zu siebenhundertfünfzigfache Beschleunigung!

In naher Zukunft wird Oracle das erste Patch-Set für die Datenbank 12c veröffentlichen. Es trägt die Nummer „12.1.0.2“. Zum ersten Mal wird dabei mit einem „Minor“ Versionsnummernsprung ein Major-Feature eingeführt: Die Oracle 12c In-Memory Option. Danach haben alle großen Mitspieler eine Datenbankversion verfügbar, die die In-Memory-Technik beherrscht.

Oracle hat sich viel Zeit gelassen, ein durchdachtes und ausgereiftes Produkt auf den Markt zu bringen.
Am 10. Juni kündigte Larry Ellison in Redwood Shores die Fertigstellung des Produktes an. Eine Woche später gab es das einzige europäische Launch-Event in Frankfurt. Diese Tatsache und die ungewöhnliche Release-Taktik zeigen, dass der Druck insbesondere durch SAP HANA riesig ist.

Im Laufe des Julis soll die Software zum Download zur Verfügung gestellt werden.

In-Memory Technik

Das Besondere an der In-Memory-Technik ist nicht der Einsatz von viel Hauptspeicher. Das ging schließlich bisher auch schon. Vielmehr werden die Daten komplett anders gespeichert: Statt die Daten zeilenweise abzulegen, kommt bei In-Memory eine spaltenbasierte Speicherung zum Einsatz. Dabei werden die Werte einer jeden Spalte als Vektoren vorsortiert im Hauptspeicher abgelegt. Verkettungen durch Zeiger helfen, die ursprünglichen Zeilen wieder zusammen zu setzen. Dieser Ansatz macht Abfragen für BI, Analytics und Big Data unglaublich schnell. Oracle hat auf den Präsentationen von einhundert- bis siebenhundertfünfzigfacher Beschleunigung geredet.
Dafür sind Datenmanipulationen, wie sie in OLTP Anwendungen die Regel sind, sehr aufwendig. Für jede aktualisierte Zeile müssen alle Spaltenvektoren angepasst werden.

Verschiedene Implementierungen

Die Hersteller gehen unterschiedliche Wege: Während SAP HANA alle Tabellen spaltenbasiert speichert, muss man sich bei Microsofts SQL Server entscheiden ob eine Tabelle im OLTP- oder im Column-Store abgelegt wird.
Oracle hat einen eleganten Mischansatz gewählt: Die Datenspeicherung bleibt unverändert. Die spaltenorientierte Darstellung im Hauptspeicher kann für jede Tabelle ausgewählt werden und wird dann bei Abfragen dem Query-Optimizer als zusätzlicher Zugriffspfad angeboten. Für diese Tabellen werden dadurch alle Indices überflüssig, die nur der Abfrage-Beschleunigung dienen und nicht für die referentielle Integrität, Primärschlüssel oder Eindeutigkeit benötigt werden. Der dadurch eingesparte Platz im Storage kann erheblich sein und die fehlenden Indexe beschleunigen DML-Operationen, weil sie nicht mehr mitgepflegt werden müssen.

Nicht nur für große Datenbanken

Die In-Memory Technologie ist nicht nur für große Datenbanken oder Big Data Anwendungen interessant. Durch Oracles gemischten Ansatz, der es erlaubt einzelne Spalten von Tabellen und ausgewählte Partitionen einer Tabelle In-Memory vorzuhalten, können grade auch kleine Datenbanken mit überschaubarem Hauptspeichereinsatz immense Beschleunigungen erfahren.

Offene Fragen

Der Wow-Effekt der Launch-Präsentationen war zwar gewaltig, aber während die funktionellen Details gegenüber den ersten Präsentationen auf der Open World im letzten Oktober vertieft wurden, wuchs allerdings die Zahl der Fragen beim anwesenden Publikum mit technischen Hintergrund stetig. Als Beispiel seien hier die Umsetzung der Lesekonsistenz bei Abfragen und gleichzeitigen Datenänderungen und die Auswirkungen auf das Commit-Verhalten angeführt.

Die Spannung steigt

Obwohl bereits viel von der Funktionsweise präsentiert wurde, bleibt doch noch viel mehr im Verborgenen. Alle Nicht-Beta-Tester müssen sich noch bis zum tatsächlichen Release gedulden, um der neuen Technik auf den Zahn fühlen zu können. Wir werden im its-people Blog berichten, wenn es soweit ist.
Auch der Preis ist noch offen. In der aktuellen Preisliste vom 11. Juni 2014 ist die In-Memory-Option noch nicht geführt.

Das könnte Sie auch interessieren

Bleiben Sie informiert:

its-people hilft Ihnen...

Weitere Blogthemen: