Im Rahmen der Digitalisierung ist der Einsatz von Business Intelligence- und Analysesoftware in allen Bereichen eines Unternehmens eine Notwendigkeit geworden. Tableau zählt zu den führenden Anbietern in diesem Bereich und überraschte Anfang März mit der Akquisition eines deutschen Unternehmens aus München. Mit HyPer kauft sich Tableau eine In-Memory-Technik ein und investiert damit weiter in sein Portfolio für Self-Service-Datenanalyse.
In-Memory Datenbanken – Wieso, weshalb, warum?
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 eigene Flugzeuge. Dies zeigt, dass der Handel mit rasanter Geschwindigkeit Daten prozessieren 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 Datenbankabfragen an die Server gestellt werden. Dies sind zum Teil zeitkritische Antworten, welche keine Verarbeitungen über Stunden erlauben würden. Mit klassischen Datenbank-Technologien wären jedoch bei diesen Datenmengen auch keine Stunden mehr haltbar. Unternehmen stießen bereits an die 24-Stunden Grenze bei der Batch-basierten Datenverarbeitung. Sicherlich kann man mit Optimierungen, Speichererweiterungen, Skalierung und geschickter Indizierung mehr Performance herausholen, jedoch trifft dies meistens nur auf die bestehenden und bekannten Abfragen zu. Im Zuge der Digitalisierung gibt es aber immer mehr Abteilungen innerhalb der Firma, die mit Daten experimentieren und versuchen neue Dienste und Produkte zu generieren oder Prozesse zu optimieren. Self-Service-Datenanalysen bedingen eine schnellere Reaktionszeit von Seiten der Datenquelle. Im BigData Umfeld haben sich verteilte und spalten-orientierte Datenbanken wie HBase und Cassandra etabliert. Beide Vertreter kommen jedoch aus einer nicht relationalen Welt und bieten hier mehr Freiheiten, aber auch Einschränkungen, beispielsweise bei der Wahl der Spaltenschlüssel. 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 IBM TM1 – OLAP Datenbank, führte IBM eine sogenannte In-Memory-Datenbank in den Markt ein. Bei In-Memory-Datenbanken werden, wie der Name schon sagt, die Daten im Arbeitsspeicher des Rechners geladen und von dort direkt zur Nutzung abgerufen. Wie bei so vielen Technologien aus den letzten Jahrzehnten fehlte es nicht an der Theorie, sondern an der verfügbaren Infrastruktur. Server und Betriebssysteme waren bei weitem nicht so leistungsstark und dynamisch, wie es beispielsweise Cloud Computing Infrastrukturen heutzutage sind. Daher musste auch diese Technologie ein wenig schlafen und wurde in den letzten Jahren wachgeküsst. TimeTen, SAP HANA und Parstream sind die momentan bekannten und am weitesten verbreiteten In-Memory-Lösungen im Unternehmenseinsatz.
Lösungen aus dem Bereich In-Memory-Datenbanken sind beispielsweise:
- Apache Derby
- EXASolution
- eXtremeDB
- H2
- IBM solidDB
- IBM Cognos TM1 – OLAP Datenbank
- InfoZoom
- LucaNet
- Microsoft SQL Server 2014 (Hekaton)
- MySQL
- Oracle TimesTen
- ParStream
- Redis
- SAP HANA
- SQLite
- TIBCO ActiveSpaces
Technologische Herausforderungen
Auch wenn die extrem schnellen Antwortzeiten 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 offensichtlichste Fragestellung betrifft bei Hauptspeicher-Datenbanksystemen natürlich den Arbeitsspeicher. Wie groß muss der Arbeitsspeicher im Design des Systems vor der Anschaffung sein und was passiert mit Datenmengen, welche größer sind als der vorhandene Arbeitsspeicher im laufenden Betrieb? Hier haben die meisten Hersteller mehrere Caching- und Kompressions-Algorithmen weiter optimiert und neue entwickelt, um die am häufigsten verwendeten Daten immer blitzschnell 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 und können an anderer Stelle ihre Fachkenntnis sinnvoller einsetzen. 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 holt sich Tableau 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. Generalisierung ist dabei ein großer Pluspunkt von HyPer, da HyPer nicht für einen speziellen Typus von Anwendungsszenarien entwickelt worden ist. Die Architekturprinzipien von HyPer sind:
- Minimal-invasive Synchronisation – Keine Sperrung von Partitionen oder Datenbanken während der Verarbeitung
- Virtuelle Speicher Snapshot-Erstellung zur parallelen Verarbeitung ohne DBMS-Synchronisation
- Kompilierung („Übersetzung“) der gestellten Anfragen in Maschinencode
- Direkte Datenverwaltung im virtuellen Adressraum
Was macht nun ein Business Intelligence und Analytics Unternehmen wie Tableau mit einer solchen Technologie? Mit der Vereinigung von Transaktionen und Analysen in einem System, welche im Hauptspeicher alle Daten ohne viel administrativen Aufwand effizient verwaltet und organisieren kann, stehen Tableau neue Möglichkeiten zur Verfügung vorhandene Lösungen zu optimieren und neue zu entwickeln. Generell können Anbieter mit solchen Technologien:
- Volumenunabhängigkeit: Schneller und mehr Daten analysieren
- Transformationsoptimierung: Datenintegration und -transformation können verbessert werden
- Machine Learning Integration: Einfache Machine Learning Algorithmen, wie z.B. Clustering-Verfahren können angewendet und in die eigene Lösung integriert werden
Fazit
Tableau bietet Nutzern einen effizienten und intuitiven Zugang zu den unterschiedlichsten Datenquellen. Um im Zusammenspiel mit der wachsenden Anzahl von Datenquellen und deutlichem Anstieg von Datenmengen auch zukünftig eine überzeugende User Experience bieten zu können, ist eine extrem schnelle Bereitstellung der Daten notwendig. In-Memory-Datenbanken wie HyPer können an dieser Stelle unterstützen.
Die Ankündigung von Tableau deutet zudem 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?