Unter Self-Service ETL haben wir schon erklärt, dass wir bei Self Service BI-Projekten immer dazu raten, den Fachanwendern vereinheitlichte, vereinfachte und saubere Daten zur Verfügung zu stellen, am besten in einem Data Warehouse oder Data Mart. Da die Fachanwender oft ihre Quellsysteme am besten kennen, wäre es ja naheliegend, dass sie dieses Data Warehouse auch befüllen! Wo aber findet man ein Endnutzer-taugliches Tool, das diese wichtige Brücke zwischen komplexen Quellsystemen und dem nutzerfreundlichen Data Warehouse schlagen kann?
Der erste Blick gilt natürlich den Self-Service-BI-Tools selbst. Vorreiter ist da sicher Power BI Desktop, das ja die „Power Query“-Funktionalität mit der tollen Skriptsprache „M“ beinhaltet. Dieses Tool, auch in Excel ab der Version 2016 als „Daten abrufen“ integriert, ist schon genau das, was der Fachanwender zum Laden und Säubern braucht, aber es kann nur seine Ergebnisse in ein Power BI / Excel-Datenmodell hinein laden, nicht etwa in eine SQL-Datenbank! Damit ist es zum Füllen eines Data Mart leider unbrauchbar.
Tableau enthält seit Ende April 2018 auch ein solches Werkzeug, „Tableau Prep“ genannt. Schön, dass man dort auch das Bedürfnis nach „Data Preparation“ erkannt und befriedigt hat, aber der Nachteil für uns ist derselbe wie bei Power BI: Tableau Prep lädt nur in einen Tableau-Extrakt, nicht in unser Data Mart.
Der ungekrönte König der Self Service ETL, sogar mit integrierter künstlicher Intelligenz, ist natürlich Alteryx. Im Umfeld dieses smarten Tools findet man auch die international dafür üblichen Begriffe „Data Blending“ und „Data Wrangling“! Gegen dieses Schweizer Messer der Datenvorbereitung ist sicher wenig einzuwenden, außer das Budget. Qualität hat halt ihren Preis, und danach gemessen ist Alteryx schon sehr gut.
Natürlich kann man sich auch mal im Bereich der freien Software umsehen: es muss doch kostenlose Tools für dieses bekannte Problem geben! Nun, dort gibt es scheinbar einen unheilvollen Trend: sobald irgendein engagiertes Open Source-Team ein halbwegs lauffähiges Produkt geschaffen hat, wird sofort ein Startup gegründet, das diese Software vertreiben soll, und dann wird die kostenlose Version oft bis zur Unbrauchbarkeit eingeschränkt. Aber die Szene ist immer in Bewegung, hier nur mal ein paar Anhaltspunkte zum Suchen:
- Trifacta, ursprünglich von der Stanford-Universität entwickelt, hat den Wrangler, der aber leider nicht in Datenbanken schreiben kann,
- DataVerse Desktop von Lavastorm ist kostenlos, dann aber beschränkt auf 2 Mio. Datensätze,
- Pentaho Data Integration, vielen noch bekannt als „Kettle“, hat zwar eine kostenlose Community Edition, ist aber eher für Entwickler und die IT geeignet, und
- Talend Open Studio ist auch kostenlos, hat aber in dieser Version keine Funktionen, um seine Importe zeitgesteuert auszuführen. Im selben Hause gibt es auch Talend Data Preparation in der kostenlosen Desktop-Version, wo man mit einigen Tricks auch das Limit von maximal 10.000 Zeilen überwinden können soll.
Unser etwas überraschender Favorit: Cubeware Importer
Ja, wir sind Cubeware-Partner, und nein, der Importer ist nicht kostenlos. Aber: der Cubeware Importer ist ein seit Jahren etabliertes und leistungsfähiges Tool, das diese Aufgaben meistert! Auch Fachanwender können damit selbst ihre Daten professionell laden, was ihn zu einem der beliebtesten ETL-Tools macht.
Ein weiteres wichtiges Merkmal ist die Skalierbarkeit – es beginnt mit der einfachen „Datenpumpe“ aus Excel-Sheets, kann aber problemlos bis Warehouse gehen, sogar mit OLAP-Cubes und komplexen Berechnungen darin.
Eine der häufigsten Datenquellen ist natürlich das eigene SAP-System, und dafür bietet der Importer – für ein paar Dollar mehr – die von SAP zertifizierte Schnittstelle SAP Connect an.
Im folgenden Screenshot ist ein Teil der Oberfläche abgebildet. In übersichtlicher Form können diverse Quellen (z.B. Excel oder SQL-Server) in beliebiger Anzahl angebunden und dargestellt werden. Man kann direkt die verwendeten Tabellen und Felder einschließlich der Datentypen auf einen Blick erkennen.
Die Transformationen werden in einfachen Ablaufdiagrammen, sogenannten Mappings, grafisch modelliert.
Berechnungen, Konvertierungen etc. können leicht durch spezielle Objekte in den Fluss eingebunden werden.
Es ist nicht immer notwendig, SQL zu schreiben – selbst komplexe Anweisungen lassen sich ebenfalls grafisch über den SQL Query Builder zusammenklicken, ähnlich wie in Access:
Die Mappings werden übersichtlich in einer Ordnerstruktur abgespeichert.
Durch sogenannte Jobs, in denen mehrere Objekte zusammengefasst werden, lassen sich auch Prozessketten realisieren. Diese Jobs können miteinander verschachtelt und automatisiert werden, um z.B. ohne manuelles Zutun Daten automatisch in der Nacht zu laden, sodass sie für die User am nächsten Morgen bereitstehen.
Möchte man zusätzlich auf dem selbst geladenen Datawarehouse auch ein multidimensionales Modell mit OLAP-Cubes bauen, geht sogar das: es ist ein weiter Einsatzbereich für den Importer!.
Eine mächtige Script-Sprache sorgt zusätzlich dafür, dass auch ausgefallenste Wünsche berücksichtigt werden können. So sind z.B. damit FTP-Transaktionen möglich, Zugriffe aufs Dateisystem, Aufruf von externen Programmen u.v.m.
Fazit
Ja, man kann mit mitgelieferten oder kostenlosen Werkzeugen schon loslegen und Self Service ETL betreiben. Wichtig ist aber – wie bei allen Self-Service-Tools – dass man den Anwender nicht vergisst, denn der muss ja in diesem Fall auch die Implementierungs-Arbeit machen! Und zwar im Grunde, ohne dafür bezahlt zu werden! Am besten dem Fachanwender einige passende Werkzeuge vorschlagen – schon die Suche nach diesen wird kein Vergnügen -, und ihn diese mal ausprobieren lassen. Nur, wenn er dann auch gerne damit arbeitet, ist die wichtigste Voraussetzung für Self Service gegeben!