Frage

Haben In-Memory-OLAP-Motoren Vorteile gegenüber den traditionellen OLAP-Motoren, die von genügend RAM unterstützt werden, um die gesamten Würfel (en) zu enthalten?

Wenn ich beispielsweise einen Molap-Engine (SSA) und GB / TB von RAM verwende, bei dem der gesamte Würfel (oder sogar Sternschema) RAM ansässig ist, was ist der Unterschied im Vergleich zu etwas wie TM1 / SAP Hana?

War es hilfreich?

Lösung

Datenbanken mit der Annahme, dass sie im Hauptspeicher vollständig wohnen, können Strukturen wie z. B. verwenden T-Tree-Indizes. Aber der wahre Vorteil ist, dass IMDBs einfach einfacher sind. Sie tun weniger (da sie sich keine Sorgen machen müssen, einen Cache zu verwalten, oder Serialisierende schreibt Für Konsistenz oder irgendetwas mit säurekonformer I/A) führen sie weniger Anweisungen auf der Hardware aus, um dieselbe "Arbeit" auszuführen. Eine allgemeine Datenbank muss für alle Menschen alles sein; wie ein Leatherman hat ein Dutzend Werkzeuge, aber manchmal braucht man nur eine Schneidkante, also kaufen Sie eine Klinge von Kalter Stahl, und niemand debattiert darüber, dass es ein besseres Messer ist!

Andere Tipps

Nicht mein Fachgebiet, aber so wie ich es verstehe, ist der Unterschied in der Mehrheit der sogenannten In-Memory-OLAP-Datenbanken (kein Begriff, den ich mag, es wird mehr als Marketing-Tonhöhe verwendet als als fairer Vergleich von Technologien) ist Spaltenspeicherindizes.

Säulenhäuser gegen Zeilengeschäfte (wie unterschiedlich sind sie wirklich) ist ein gutes Intro in die Technologie, wenn Sie mit traditionellen OLTP- und OLAP -Datenbankstrukturen vertraut sind.

Column Store -Indizes treten in SQL Server 2012 (auch bekannt als 'Denali') auf.

Hier ist ein Verknüpfung Zu einer Power Point -Präsentation von Conor Cunningham, Principal Software Architect im SQL Server Query Processor -Team, das diese neue Funktion abdeckt.

Spaltenspeicher ermöglichen eine signifikante Datenkomprimierung auf eine Weise, die in einem Zeilenspeichersystem nicht möglich ist. Grundsätzlich werden alle Werte in einer Spalte nur einmal in einem Wörterbuch gespeichert, dann speichert der DB einen Ganzzahl -Wörterbuch -Schlüssel anstelle des ursprünglichen Wertes. Wenn Sie einen Reihenspeicher -DB im Speicher hätten, würde dies nur deutlich größer und die Speicherkosten verleihen. Die Leistungsverbesserungen sind signifikant genug, dass Sie nicht mehr die Transaktionsdaten vorabregieren müssen, und Würfel sind in den meisten Fällen nicht erforderlich.

Auch weil der Spaltespeicher alle Spaltenwerte in sequentiellen Speicherblöcken aufbewahrt, hat das Scannen weniger Blöcke, die in Operationen wie SELECT überspringen können. Es gibt jedoch einige Nachteile der Spaltespeicher transaktional, und HANA hat beispielsweise Rowstore -Tabellen in späteren Versionen hinzugefügt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit dba.stackexchange
scroll top