ETL-Tools: Evaluierung von Tools für Cloud-basierte ETL-Prozesse
Mit ETL (Extraktion, Transformation, Laden)-Prozessen lassen sich Rohdaten in aussagekräftige Informationen für Business Intelligence-Zwecke verwandeln. Dabei werden Daten von Anwendungen wie Salesforce und SAP, Datenbanken wie Oracle und Redshift oder Dateiformate wie CSV, XML, JSON oder AVRO extrahiert. Diese Daten werden nach der Extraktion in nutzbare Informationen transformiert, um sie in neue Anwendungen oder an neue Zielorte zu laden oder in einem Data Lake oder Data Warehouse zur späteren Transformation in einem ELT-Prozess abzulegen.
Diese Datenprozesse lassen sich manuell programmieren oder mit einem ETL-Tool durchführen. Doch genauso wie Datenprozesse immer mehr in die Cloud abwandern, müssen sich auch ETL-Tools in diese Richtung entwickeln. Zwar stammen sehr viele Unternehmensdaten von Quellen in der Cloud oder von Sensoren, aber viele kritische Unternehmensdaten kommen auch von lokalen Quellen.
Wir beschäftigen uns im Folgenden mit Szenarien, die ein ETL-Tool erfordern, und mit den Fragen, worauf Sie bei der Auswahl eines ETL-Tools achten sollten und warum ETL-Tools in der Cloud funktionieren müssen.
ETL-Tools – in der Cloud und lokal
Die ganze IT geht in die Cloud. Laut Forrester ist der globale öffentliche Cloud-Markt im letzten Jahr um 40 Milliarden $ auf 178 Milliarden $ gewachsen und wird mit einer jährlichen Rate von 22 % weiterwachsen. An dieser Entwicklung geht für datengestützte Unternehmen kein Weg vorbei; Cloud-Data Warehouses werden immer wichtiger, die Verarbeitung dieser Daten in der Cloud entwickelt sich zum zentralen Faktor für Echtzeit-Analysen und mit Cloud-basierten SaaS-Anwendungen können Unternehmen Features und Funktionen erschwinglich und effizient nutzen.
All diese Cloud-basierten Funktionen bieten nicht nur mehr Rechenleistung und neue Funktionen, sondern ermöglichen die Erstellung Cloud-basierter Datensilos, die auf den bereits in ihren älteren Systemen bestehenden Silos aufbauen. In der Cloud-orientierten Welt von heute müssen Organisationen mit Cloud-Apps, -Datenbanken und -Plattformen arbeiten und die dabei anfallenden Daten bewältigen. Dabei dürfen Sie aber nicht die Daten aus Ihren lokalen Systemen vergessen. ETL-Tools sollten mit Daten aus allen Quellen zurechtkommen, egal ob aus Cloud-, Multi-Cloud-, hybriden oder lokalen Systemen. Da im Cloud-Bereich gerade so viel Innovatives passiert, ist es wichtig, dass Ihre Datenmanagement-Infrastruktur so flexibel ist, dass sie sich problemlos migrieren lässt – egal, für welchen Cloud-Anbieter Sie sich entscheiden.
Warum Sie ein ETL-Tool brauchen
Viele IT-Experten fragen sich, warum sie ein ETL-Tool brauchen, wenn sie mit Handcodierung den Job meistens schnell und zu geringeren Kosten erledigen können. Hierbei gibt es allerdings zwei entscheidende Nachteile:
- Handgeschriebener Code lässt sich nicht so einfach teilen und wiederverwenden. Gute ETL-Tools sollten eine visuelle Designoberfläche haben, damit Kollegen sich nur das Flussdiagramm anschauen müssen, um zu wissen, was erstellt wurde. Bei manuell programmiertem Code ist es schwer zu erkennen, was gemacht wurde. Daher kommt es häufig vor, dass Entwickler aufgeben und die gleiche Arbeit noch einmal machen. Das ist nicht nur überflüssig, sondern vergeudet Zeit und Ressourcen.
- Handgeschriebener Code treibt die Wartungskosten nach oben. Wenn unterschiedliche Mitarbeiter den Code pflegen und verwenden, sobald er in der Produktionsumgebung läuft, müssen sie mit Handcodierung eine steile Lernkurve bewältigen. Ist der Code jahrelang im Einsatz, sorgen Mitarbeiterwechsel langfristig für deutlich höhere Kosten.
Datenintegrationsprojekte beginnen häufig klein, z. B. als Machbarkeitsnachweis, um schnelle Vorteile zu erzielen; Entwickler müssen häufig zwei Systeme miteinander verbinden, um eine bestimmte Aufgabe zu erledigen. Sie sind überzeugt, dass sie kein ETL-Tool für kompliziertere Prozesse wie Echtzeit-Analysen oder Data Governance brauchen, weil ihnen handgeschriebener Code ausreicht. Das Problem dabei ist aber, dass kleine Projekte selten klein bleiben und häufig vom Rest des Unternehmens übernommen werden. Was also relativ klein anfängt, kann sich schnell zu einem abteilungsübergreifenden Projekt entwickeln und plötzlich ist eine schnelle und überschaubare handgeschriebene Integration gar nicht mehr so schnell und überschaubar.
Mit zunehmender Anzahl und wachsendem Umfang der Datenquellen sind Unternehmen außerdem immer mehr an Datenschutzvorgaben wie die DSGVO gebunden, sodass ihre ETL-Prozesse Datenqualitäts- und Data Governance-Funktionen sowie ein Metadatenmanagement benötigen. Es ist jedoch unmöglich, diese Funktionen in dem für die meisten Unternehmen erforderlichen Umfang manuell zu programmieren.
Ein Beispiel dafür ist ein amerikanischer Telekommunikationsanbieter mit 50 Millionen Kunden. Die Werbeexperten des Unternehmens wollten ein neues Produkt auf den Markt bringen, um personalisierte, lokale Werbung an Konferenzteilnehmer zu verkaufen. Also nutzten sie Hadoop, um die Standortdaten der Mobiltelefone in ihrem Netzwerk zu tracken. Mit Hadoop waren Datenanalysen in einem solchen Umfang möglich. Als das restliche Unternehmen sah, wie erfolgreich dieses Projekt lief, gab es auf einmal 50 neue Anfragen für ähnlich umfangreiche Datenanalysen. Doch die IT-Experten hatten weder die Zeit noch die Ressourcen, um 50 weitere handgeschriebene Integrationen durchzuführen. Sie brauchten ein ETL-Tool, das solche Projekte schnell skalieren konnte.
Die Auswahl des richtigen ETL-Tools
Wenn Sie über den Kauf eines ETL-Tools nachdenken, sollten Sie nicht vergessen, dass Sie selbst für einzelne Projekte wie die Erstellung eines Data Warehouse in Snowflake zahlreiche Features benötigen.
In dieser Checkliste finden Sie, was ein gutes ETL-Tool bieten sollte:
- Es sollte Lese- und Schreiboperationen für alle benötigten Datenquellen durchführen können, egal ob in der Cloud oder lokal.
- Es sollte Datentransformationsprozesse wie Sortieren, Filtern und Aggregieren durchführen können.
- Integrierte Datenqualitäts- und Data Governance-Funktionen wie Deduplizierung, Abgleich und Datenprofiling sollten vorhanden sein.
- Ebenso Kollaborationstools. Damit lassen sich bestehende Entwicklungselemente einfacher wiederverwenden und Datenintegrationsflows effizienter durchführen. Ein einzelner Job kann somit mehrere Ziele bedienen, anstelle einer Reihe von Datenintegrationsflows, die immer wieder mehr oder weniger das Gleiche machen.
- Mit der Migration zu Cloud-Systemen müssen CI/CD-Prozesse eingesetzt werden können.
- Ihr ETL-Tool sollte in den unterschiedlichsten Umgebungen funktionieren, in lokalen, Cloud- oder hybriden Infrastrukturen.
- Ein ETL-Tool sollte problemlos mit einem Anbieterwechsel zurechtkommen. Es kann passieren, dass Sie heute einen Data Lake in Redshift und morgen in Snowflake erstellen oder dieses Quartal mit AWS als Cloud-Anbieter arbeiten, aber nächstes Quartal mit Azure. Daher ist es wichtig, dass Ihr ETL-Tool in einer Multi-Cloud-Umgebung funktioniert und wechselnde Anbieter und Entwicklungsumgebungen durch einen einfachen Austausch weniger Komponenten bewältigen kann, während Geschäfts- und Transformationslogik gleichbleiben.
- Ein ETL-Tool sollte mit aktuellen Innovationen und neuen Technologien zurechtkommen. Gute ETL-Tools lassen sich mit serverlosen Technologien, Spark, Snowflake, maschinellem Lernen etc. integrieren – und können sich schnell an zukünftige Technologien anpassen.
- Skalierbarkeit spielt bei der Auswahl des passenden Tools eine äußerst wichtige Rolle. Es ist verlockend, Tools ins Auge zu fassen, die nur einfache Prozesse bewältigen können, denn sie sind billig und einfach zu handhaben. Allerdings lassen sie sich nicht gut skalieren; sie sind an die Kapazitäten gebunden, die der Rechner skalieren kann, daher müssen Sie berücksichtigen, wie viel Arbeitsspeicher oder wie viele CPUs zur Verfügung stehen. Wenn Ihr Unternehmen wächst, haben Sie mit diesem Tool eine künstliche Wachstumsbeschränkung für Ihre Analysen. Das könnte ein Nachteil in diesem überaus wettbewerbsintensiven Geschäftsumfeld sein. Außerdem ist es schwieriger, zusammenzuarbeiten und Elemente von einem früheren Projekt wiederzuverwenden. Das führt häufig dazu, dass ETL-Projekte von Null gestartet werden müssen, was Zeit und Ressourcen kostet.
- Portabilität ist wichtig, wird aber manchmal bei ETL-Tools übersehen. Das Apache Hadoop-Ökosystem zum Beispiel verändert sich unglaublich schnell. 2014 und 2015 galt MapReduce als Standard, doch Ende 2016 wurde es von Spark abgelöst. Früher war es nicht möglich, handgeschriebenen Code von MapReduce zu Spark zu portieren. Inzwischen können führende ETL-Tools das problemlos bewältigen.
Denken Sie über ein ETL-Tool für die Cloud nach
Zweifellos ist der Trend hin zur Cloud nicht aufzuhalten. Wenn Unternehmen in die Cloud gehen, stellen sie häufig noch einmal ihren gesamten Infrastruktur-Stack auf den Prüfstand, denn was lokal gut gelaufen ist, muss nicht unbedingt auch in der Cloud funktionieren. Lokal haben Sie zum Beispiel mehr Kontrolle über Ihre Server und Hardware, während es in der Cloud ein bisschen anders aussieht – Sie müssen wissen, wie Sie mit Cloud-Stacks und den privaten Netzwerken außerhalb Ihres eigenen Netzwerks umgehen. Die Cloud verändert die Art und Weise, wie ETL-Tools funktionieren und wie Sie mit ihnen arbeiten. Es gibt unterschiedliche Programmiersprachen, Prozesse und Plattformen, die sich von Ihren lokalen Gegebenheiten unterscheiden. Daher brauchen Sie ein Tool, das nahtlos zwischen beiden Umgebungen wechseln kann.
Die Skalierbarkeit der Cloud spielt bei der Auswahl eines ETL-Tools eine entscheidende Rolle, weil sich schwer vorhersagen lässt, wie groß Ihre Umgebung in Zukunft sein wird. Sie könnten 50 Datenquellen haben oder 500 – und natürlich müssen Sie auch zukünftige Technologien einsetzen können, die noch nicht einmal auf dem Markt sind. Mit einem Cloud-basierten ETL-Tool können Sie Ihre Datenmanagement-Infrastruktur ganz einfach an neue Szenarien anpassen.
Ein weiterer Faktor, den Sie bei der Auswahl eines ETL-Tools für die Cloud bedenken sollten ist das Preismodell. Beim Wechsel in die Cloud profitieren Sie davon, dass Sie nur für die tatsächlich genutzten Ressourcen zahlen. Wenn Sie ein Produkt kaufen, bei dem pro Knoten abgerechnet wird, widerspricht das dem eigentlichen Cloud-Ansatz. Dieser basiert darauf, dass Sie Ihre Ressourcen bei Bedarf einfach aufstocken oder reduzieren können, sodass Sie zu einem bestimmten Zeitpunkt viele Ressourcen zur Hand zu haben und zu einem anderen gar keine. Ihre ETL-Tools sollten genauso funktionieren. Sie sollten nicht für Laufzeiten zahlen müssen, die Sie nicht nutzen oder für zusätzliche Ressourcen, die brachliegen. Für Ihre ETL-Tools sollten die Preise genauso gestaltet sein wie für jeden anderen Aspekt der Cloud-Infrastruktur auch.
ETL-Tools und Datenqualität
Datenqualität wird immer wichtiger für Unternehmen, da schlechte Datenqualität viel Zeit und Geld kostet. Und mit Inkrafttreten von Datenschutzverordnungen wie der DSGVO wird die Gewährleistung von Datenqualität und Data Governance für Unternehmen immer wichtiger.
In der Ära des Cloud Computing gibt es eine riesige Menge an Datenquellen, die Sie für Business Intelligence-Zwecke kombinieren können. Doch jede einzelne Datenquelle auf der Welt bringt Herausforderungen bei der Datenqualität mit sich, die sich bei der Integration weiter verschärfen. Bei ETL-Projekten geht es auf den ersten Blick eigentlich nur darum, zwei Systeme miteinander zu verbinden. Aber wenn Sie vorab in die Qualität der Daten investieren, sparen Sie Ihrem Unternehmen enorm viel Geld und Ressourcen. Mit einem proaktiven Ansatz bei der Datenqualität können Sie die Qualität der Daten prüfen und messen, bevor sie wirklich in Ihre zentralen Systeme gelangen. Aus diesem Grund sind integrierte Datenqualitätsfeatures beim Kauf eines ETL-Tools ein wichtiger Aspekt. Werfen Sie einen Blick in den Definitive Guide to Data Quality (Definitiver Leitfaden zur Datenqualität) und erfahren Sie mehr darüber, wie ein gutes ETL-Tool schon im Vorfeld für eine gute Datenqualität sorgt, bevor die Daten ihre Systeme erreichen und dort genutzt werden.
ETL-Tools von Talend
Talend bietet eine Reihe von ETL-Tools für die unterschiedlichsten Datenintegrationsprojekte. Wenn Sie ein grundlegendes Tool für ETL-Prozesse benötigen, ist das kostenlose Open Studio for Data Integration von Talend perfekt für Sie. Es funktioniert gut mit Integrationen für Redshift, Snowflake, Google BigQuery etc. – einzelne Datenmengen und einfache Aufnahmeprozesse. Wenn Sie ein einfaches, aber leistungsstarkes Open Source-Tool suchen, dann laden Sie Open Studio heute noch herunter.
Wenn sie dagegen schon bereit für ein ETL-Tool sind, das Datenqualität, Data Governance, maschinelles Lernen und Kollaborationsfeatures und andere Funktionen bietet, ist die Data Management Platform von Talend das Richtige für Sie. Sie bietet ein dynamisches Preismodell und lässt sich nahtlos auf Basis der Open Source-Lösung upgraden, sobald Sie mehr Features und Funktionen benötigen. Hier finden Sie eine Gegenüberstellung der Features, die unsere verschiedenen Datenintegrationsprodukte bieten.
Unsere ETL-Tools wurden mit Blick auf die komplexen Anforderungen wachsender, datengetriebener Unternehmen entwickelt. Wählen Sie das für Sie passende Tool aus und machen Sie einen Test. Sie werden sehen, wie einfach die ETL-Prozesse in Ihrem Unternehmen plötzlich laufen.
Sind Sie bereit, mit Talend durchzustarten?
Weitere Artikel zu diesem Thema
- Reverse ETL: Bedeutung und Anwendungsbereiche
- Data Wrangling: So funktioniert gute Datenaufbereitung
- ETL in der Cloud: was die Veränderungen für Sie bedeuten
- ETL-Tests: Ein Überblick
- ELT vs. ETL: der Unterschied
- Extract Load Transform (ELT) – Definition, Ablauf und Vorteile
- Der ETL-Prozess – Daten effektiv zentralisieren