Big Data im Griff

In-Memory-Datenbanken - Wegbereiter für eine effiziente Datenanalyse

19.05.2016
Von 
Björn Böttcher ist Senior Analyst und Data Practice Lead bei Crisp Research mit dem Fokus auf Analytics, BI, datenbasierte Geschäftsmodelle und Künstliche Intelligenz. Mit mehr als 10 Jahren Berufserfahrung in der IT und einem wissenschaftlichen Hintergrund und Fokus stehen moderne Lösungen mit praktischem Nutzen im Fokus seiner Betrachtung.
Im Rahmen der Digitalisierung ist der Einsatz von Business Intelligence- und Analysesoftware in allen Bereichen eines Unternehmens eine Notwendigkeit geworden. Leistungsfähige und skalierbare In-Memory-Datenbanken werden dabei immer wichtiger.

Datenbank-Technologien haben sich im Laufe des IT-Zeitalters als fester Pfeiler einer gesunden Unternehmens-IT behauptet. In vielen Bereichen würde ohne Datenbanken kein Geschäftsmodell mehr funktionieren. Der Online-Handel boomt wie nie zuvor und Amazon erweiterte sein Portfolio gerade erst um eine eigene Flugzeugflotte.

Dies zeigt, dass der Handel in diesem Bereich rasant wächst und immer mehr Daten verarbeiten muss. Auch soziale Plattformen, wie Xing, LinkedIn oder Facebook, haben einen enormen Datenvorrat zu beherbergen. Die Datenberge türmen sich mittlerweile auf mehrere Milliarden an Datensätzen und haben längst die Terabyte und Petabyte Grenzen überschritten.

Um aber genau mit diesen enormen Datenmengen seinen Nutzern oder Kunden Dienste anbieten zu können, müssen viele zeitkritische Datenbankabfragen an die Server gestellt werden. Mit klassischen Datenbanktechnologien ist diese Datenflut kaum noch zu bewältigen. Sicherlich kann man mit Optimierungen, Speichererweiterungen, Skalierung und geschickter Indizierung mehr Performance herausholen, jedoch wäre das nur eine kurzfristige Lösung. Im Zuge der Digitalisierung gibt es aber immer mehr Fachabteilungen in Firmen, die mit Daten experimentieren und versuchen neue Dienste und Produkte zu generieren oder Prozesse zu optimieren.

Im Big Data Umfeld haben sich spaltenorientierte, skalierbare und für große Datenmengen optimierte Datenbanken wie Apache HBase oder Apache Cassandra etabliert. Beide Vertreter kommen jedoch aus einer nicht relationalen Welt und bieten hier entsprechende Freiheiten, aber auch Einschränkungen, wie etwa bei Ad-Hoc-Abfragen. Wünschenswert wäre daher eine relationale Datenbank-Technologie, welche mit der Performance von nicht-relationalen Datenbanken mithalten kann.

Bereits 1984 erblickte ein Ansatz einer solchen Technologie das Licht der Welt. Mit der TM1-OLAP-Datenbank, führte IBM eine sogenannte In-Memory-Datenbank basierend auf Online Analytical Processing (OLAP) in den Markt ein. Bei In-Memory-Datenbanken werden die Daten im Arbeitsspeicher des Rechners geladen und von dort direkt zur Nutzung abgerufen. Doch für den Durchbruch dieser Technologie fehle es in der Vergangenheit an geeigneter IT-Infrastrukturen. Server, Storage, Netzwerke und Betriebssysteme waren bei weitem nicht so leistungsstark und dynamisch, wie es für diese Technologie erforderlich wäre. Erst in den letzten Jahren erlebte diese Technologie durch hoch performante IT-Infrastrukturen ihre Renaissance.

Oracle TimeTen, SAP HANA oder Parstream sind die momentan bekannten und am weitesten verbreiteten In-Memory-Lösungen im Unternehmenseinsatz. Weitere Lösungen aus dem Bereich In-Memory-Datenbanken sind beispielsweise:

Technologische Herausforderungen bei In-Memory-Datenbanken

Auch wenn die extrem schnellen Antwortzeiten der eingesetzten Technologie oftmals eine Indizierung und Voraggregierung von Tabellen oder Daten in OLAP-Würfeln nicht mehr erforderlich machen, so bleiben auch beim Einsatz von In-Memory-Technologie noch Herausforderungen, die es zu meistern gilt.

Die vorrangige Fragestellung betrifft bei solchen Datenbanksystemen natürlich den Arbeitsspeicher. Wie groß muss dieser sein und was passiert mit Datenmengen, welche größer sind, als der vorhandene Arbeitsspeicher im laufenden Betrieb?

Hier haben die meisten Hersteller Caching- und Kompressions-Algorithmen entsprechend optimiert und neue entwickelt, um die häufig verwendeten Daten immer blitzschnell im Hauptspeicher bereitzuhalten. Daten werden also dynamisch und vollkommen automatisiert nachgeladen, Indizierungen - falls notwendig - automatisch erstellt und auch wieder verworfen. Dadurch sinkt auch für den operativen Betrieb der Wartungsaufwand und Administratoren werden entlastet.

Vor der Anschaffung muss man sich bereits darüber Gedanken machen, ob eine spezielle Hardware für den Einsatz einer bestimmten In-Memory-Technologie notwendig ist, oder ob die Software so flexibel und dynamisch ist, dass sie mit herkömmlicher und bereits vorhandener Cluster-Technologie im Unternehmen auskommt.

Wenn ein Anbieter hier mit den Stärken seiner Technologie auftrumpfen kann, so ist dies sicherlich ein entscheidender Vorteil im Anschaffungsprozess, sofern das Augenmerk hier nur auf ein Einsatzszenario für die Hardware liegt. Fast ebenso wichtig ist die Integration von bestehenden ETL-Prozessen (Extract-Transform-Load) in die neue Technologie. Hier sollte auf den Grad der unterstützten Standards ein besonderes Augenmerk gelegt werden. Denn wenn dieser Grad sehr hoch ist, muss im Idealfall wenig an den Prozessen verändert werden und oftmals können sogar Front-Ends (Web, Mobile, etc.) nahezu nahtlos weiterverwendet werden.

In-Memory-Datenbanken und Self-Service-Datenanalyse - eine sinnvolle Symbiose

Mit HyPer zum Beispiel holt sich der Datenanalysespezialist Tableau Software eine In-Memory-Lösung, samt Experten und Entwicklerteam, ins Haus, welche simultane Online Transaction Processing (OLTP) und Online Analytical Processing (OLAP) ohne Leistungsbeeinträchtigung verspricht. Die Technologie wurde als Forschungsprojekt an der TU München gestartet und zeigt, dass sich deutsche Universitäten nicht hinter den Top Start-Ups aus dem Silicon Valley verstecken müssen.

HyPer bietet als Hauptspeicher-Datenbank eine Möglichkeit klassische OLAP- und OLTP-Prozesse effektiv abzufragen und diese zusätzlich mit transaktionssicheren Snapshots absichern. Damit bereitet diese Datenbank-Technologie den Weg für Echtzeit Business Intelligence Anwendungen.

Fazit

Die rasante Entwicklung von neuen Datenbanktechnologien und das schnelle verarbeiten großer Datenvolumen deuten darauf hin, das BI- und Analytics-Anbieter zukünftig noch stärker in den HPC-Bereich (High Performance Computing) investieren werden, um Anwender bei der Analyse der rasant steigenden Datenmengen zu unterstützen und die Performance ihrer Analysen weiter zu optimieren. Denn im digitalen Zeitalter müssen Ergebnisse, Analysen und Visualisierung in Echtzeit funktionieren.

So ist auch davon auszugehen, dass alle Anbieter in diesem Segment ihre Produkte zukünftig noch stärker an die Cloud-Plattformen von Google, AWS und Microsoft anbinden werden. Spannend ist die Frage, wer in dieser Welt die Richtung beim Einsatz von Machine Learning-Verfahren bestimmt - die BI- oder die Cloud Provider?