Die Entscheidung, ob ein Data Warehouse oder ein Data Lake die bessere Variante ist, kann und will silicon.de-Blogger Christian Ballhorn, Head of Engineering bei PROCON IT, nicht abnehmen, denn es kommt vor allem darauf an, was man mit den gespeicherten Daten zu tun gedenkt.
Data Warehouses sind eine bewährte Methode, große Datenmengen zu speichern und verwalten. Seit einiger Zeit ist aber immer öfter auch von Data Lakes die Rede. Gerade im Umgang mit Big Data taucht die Technologie immer wieder auf. Im Grunde sind beide Technologien ein Repository für die Speicherung großer Datenmengen. Was unterscheidet also einen Data Lake von einem Data Warehouse?
- Speicherung von Daten: In einem Data Warehouse werden nur bereits strukturierte Daten abgelegt, die vor ihrer Speicherung einer ausführlichen Analyse unterzogen wurden. Dabei handelt es sich um Daten, die zur Beantwortung spezifischer Fragen dienen oder in einem definierten Bericht verwendet werden. Im Data Lake hingegen werden alle Daten gespeichert – unabhängig von Relevanz, Struktur und Bedarf. Unternehmen können dadurch jederzeit auf alle jemals generierten Daten zugreifen und haben diese stets zur Verfügung. Denn Daten, die heute noch nicht relevant sind, könnten es morgen sein.
- Aufbereitung von Daten: Im Data Warehouse befinden sich hauptsächlich Daten, die aus Transaktionssystemen extrahiert sind und aus quantitativen Metriken sowie Attributen bestehen. Daten werden entsprechend eines bestimmten Schemas definiert, bevor sie in die Datenbank eingepflegt werden – das wird als “Schema on Write” bezeichnet. Dabei werden Quellen wie Webserverprotokolle, Sensordaten oder Bilder meist nicht aufgenommen. Der Data Lake hingegen inkludiert alle Daten unabhängig von Quelle und Struktur. Sie werden in ihrer ursprünglichen Form gespeichert und nur dann aufbereitet, wenn sie benötigt werden. Im Gegensatz zum Data Warehouse gilt hier das Prinzip “Schema on Read” – den Daten wird erst Struktur verliehen, wenn sie ausgelesen werden.
- Schnelligkeit: Daten für ein Data Warehouse zu bereinigen und aufzubereiten, kostet Zeit. Nutzer können die generierten Daten nicht sofort einsehen, sondern müssen warten, bis sie qualifiziert wurden. Ein Data Lake ist hier wesentlich schneller: Da die Daten einfach unbearbeitet im See gespeichert sind, kann der Nutzer sofort auf sie zugreifen – in Echtzeit. Das hat aber auch eine Schattenseite: Nicht jeder, der mit großen Mengen an unstrukturierten Daten arbeitet, weiß auch genau, was er tut. Dadurch kann schnell Chaos im Data Lake entstehen.
- Usability: In den meisten Unternehmen kommt es den operativen Nutzern darauf an, auf ihre fertigen Reports und Metriken zuzugreifen. Ein Data Warehouse eignet sich optimal dafür: Es enthält nur Daten, die auf genau diese Bedürfnisse abgestimmt sind. Für tiefergehende Analysen durch Data Scientists ist diese Plattform aber nicht geeignet – da das Datenset limitiert ist. Da ein Data Lake alle Daten ungefiltert enthält, bedient er den Bedarf von allen Mitarbeitern gleichermaßen. Der Data Scientist kann in die Tiefe des Datensees abtauchen und der Business User kann an der Oberfläche bleiben. PartnerZone
Effektive Meeting-und Kollaboration-Lösungen
Mitarbeiter sind heute mit Konnektivität, Mobilität und Video aufgewachsen oder vertraut. Sie nutzen die dazu erforderlichen Technologien privat und auch für die Arbeit bereits jetzt intensiv. Nun gilt es, diese Technologien und ihre Möglichkeiten in Unternehmen strategisch einzusetzen.
- Technologie: Der Kern eines Data Warehouses ist meist eine relationale Datenbank, deren Daten mithilfe von SQL gelesen werden. Die Aufbereitung für den Anwender erfolgt in der Regel mit Data Marts oder speziellen multidimensionalen OLAP-Datenbanken. Diese Technologie stößt bei der Verarbeitung großer Mengen unstrukturierter Daten mit gleichzeitig kurzer Latenz- und Antwortzeiten an ihre Grenzen. Ein Data Lake basiert meist auf dem Open Source Framework Hadoop. Es basiert auf dem MapReduce-Algorithmus, der die Berechnung der Daten über viele Knoten seines Clusters verteilt. So können beliebige Daten in großer Menge schnell verarbeitet werden. Die Installation und der Betrieb eines Hadoop-Clusters erfordert allerdings viel Zeit und Know-how.
Fazit: Welches nun die passende Lösung ist, muss jedes Unternehmen individuell entscheiden. Ein Data Warehouse hat eine komplexe Struktur und Daten müssen vor der Speicherung bereinigt werden. Vorteil ist aber, dass die IT-Abteilung die volle Kontrolle über alle Daten hat und sich nur qualifizierte Daten im Repository befinden. Ein Data Lake bietet mehr Flexibilität und keine Einschränkungen hinsichtlich der Datenspeicherung. Da die Daten erst beim Auslesen aufbereitet werden, sind sie schneller verfügbar. Eine Schwierigkeit ist aber, einen Überblick über die Analysen zu behalten und sicherzustellen, dass die Anwender sorgfältig mit den Daten umgehen.
Die Unterschiede auf einen Blick:
Data Warehouse | vs. | Data Lake |
strukturiert/verarbeitet |
Speicherung von Daten |
unstrukturiert/unverarbeitet |
Schema on Read |
Aufbereitung von Daten |
Schema on Write |
Daten müssen erst bereinigt werden |
Schnelligkeit |
Daten schnell verfügbar |
Business User/keine tiefergehenden Analysen |
Usability |
Alle User/auch tiefergehende Analysen möglich |
relationale Datenbank/SQL |
Technologie |
Hadoop/MapReduce |