ETL-Tests: Ein Überblick

Beim ETL-Prozess – Extraktion/Transformation/Laden – werden Daten aus Quellsystemen extrahiert, in einen konsistenten Datentyp transformiert und anschließend in ein einziges Depot geladen. ETL-Tests bezeichnen die Validierung, Verifizierung und Qualifizierung von Daten während gleichzeitig Dubletten und Datenverluste verhindert werden. ETL-Tests stellen sicher, dass die Übertragung der Daten von heterogenen Quellen zum zentralen Data Warehouse unter strenger Einhaltung der Transformationsregeln abläuft und allen Validitätsprüfungen entspricht. Anders als bei dem für Datenbanktests eingesetzten Datenabgleich werden ETL-Tests an Data Warehouse-Systemen durchgeführt und haben das Ziel, relevante Informationen für Analysen und Business Intelligence zu gewinnen.

Ansehen Getting Started with Data Integration jetzt herunter.
Jetzt ansehen

8 Phasen von ETL-Testprozessen

Bei effektiven ETL-Tests werden frühzeitig Probleme mit den Quelldaten erkannt – bevor diese in das Datenrepository geladen werden. Außerdem werden Inkonsistenzen oder Unklarheiten in Bezug auf die Geschäftsregeln für die Datentransformation und -integration ermittelt. Dieser Prozess lässt sich in acht Phasen aufteilen.
  1. Identifizierung von Geschäftsanforderungen – In dieser Phase wird das Datenmodell konzipiert, der Geschäftsablauf definiert und der Reporting-Bedarf entsprechend den Kundenerwartungen ermittelt. Es ist wichtig an diesem Punkt anzufangen, damit der Projektumfang klar definiert, dokumentiert und für alle Tester verständlich ist.
  2. Validierung der Datenquellen – Es erfolgt eine Kontrolle der Datenanzahl und Verifizierung, dass der Datentyp der Tabellen und Spalten den Spezifikationen des Datenmodells entspricht. Außerdem wird sichergestellt, dass Kontrollschlüssel vorhanden sind und Dubletten entfernt wurden. Wird dieser Schritt nicht korrekt durchgeführt, kann der Sammelbericht ungenau oder irreführend sein.
  3. Konzeption von Testfällen – Hierbei werden ETL-Mapping-Szenarien konzipiert, SQL-Skripts erstellt und Transformationsregeln definiert. Es ist wichtig, auch das Mappingdokument zu validieren, damit alle Informationen darin enthalten sind.
  4. Extrahieren von Daten aus Quellsystemen – Entsprechend den Geschäftsanforderungen erfolgen ETL-Tests. Dabei werden diverse Fehler- und Defektarten identifiziert und in einem Bericht erfasst. Es ist wichtig, Defekte zu erkennen und zu reproduzieren, in einem Bericht festzuhalten, Fehler zu beheben, sämtliche Probleme zu lösen und einen abschließenden Fehlerbericht zu erstellen – bevor es mit Schritt 5 weitergeht.
  5. Anwendung von Transformationslogik – In dieser Phase wird sichergestellt, dass die Daten transformiert werden, um dem Schema des Ziel-Data Warehouses zu entsprechen. Es erfolgt eine Kontrolle des Datenthresholds, eine Vereinheitlichung sowie eine Validierung des Datenflusses. Auf diese Weise wird sichergestellt, dass der Datentyp dem Mappingdokument für jede Spalte und Tabelle entspricht.
  6. Laden der Daten ins Ziel-Warehouse – Bevor und nachdem die Daten vom Staging zum Datenwarehouse übertragen werden, erfolgt eine Kontrolle der Datensatzanzahl sowie eine Bestätigung, dass ungültige Daten abgelehnt und die Standardwerte akzeptiert werden.
  7. Übersichtsreport – In diesem Schritt werden Layout, Optionen, Filter und Exportfunktionen des Übersichtsreports verifiziert. Mit diesem Bericht erhalten Entscheider/Stakeholder Details und Ergebnisse des Testprozesses und erfahren, ob bestimmte Schritte nicht durchgeführt wurden („out of scope“) und warum.
  8. Test-Abschluss – Der Test wird abgeschlossen.
Im letzten Schritt prüft der ETL-Tester das Tool, seine Funktionen und das ETL-System.

9 Arten von ETL-Tests

ETL-Tests lassen sich in vier allgemeine Kategorien einteilen: Prüfung neuer Systeme (Daten stammen aus unterschiedlichen Quellen), Migrationsprüfung, (Daten werden von Quellsystemen in das Data Warehouse übertragen), Änderungsprüfung (neue Daten werden dem Data Warehouse hinzugefügt) sowie Berichtsprüfung (Datenvalidierung, Berechnungen). Zu ETL-Tests, die in jeder Phase durchgeführt werden können, zählen:
Kategorie ETL-Tests
Prüfung neuer Systeme – Datenqualitätsprüfung – Metadatenprüfung
Migrationsprüfung – Datenqualitätsprüfung – Prüfung der Anzahl von Quell- und Zieldatensätzen – Prüfung der Quell- und Zieldaten – Performanceprüfung – Datentransformationsprüfung – Datenintegrationsprüfung
Änderungsprüfung – Datenqualitätsprüfung – Prüfung der Anzahl von Quell- und Zieldatensätzen – Prüfung der Quell- und Zieldaten – Produktionsprüfung – Datenintegrationsprüfung
Berichtsprüfung – Berichtsprüfung
  1. Die Produktionsvalidierung wird auch „Produktionsabgleich“ oder „Tabellenverteilung“ genannt. Hierbei erfolgt eine Validierung der Daten in Produktionssystemen und ein Abgleich mit den Quelldaten. Dies schützt Daten vor fehlerhafter Logik, fehlgeschlagenen Ladeprozessen oder operativen Prozessen, die nicht in das System geladen wurden.
  2. Bei der Prüfung der Anzahl von Quell- und Zieldatensätzen wird verifiziert, ob die Anzahl der in die Zieldatenbank geladenen Datensätze der erwarteten Anzahl der Datensätze entspricht.
  3. Bei der Prüfung der Quell- und Zieldaten wird sichergestellt, dass die projektierten Daten ohne Verlust oder Trunkierung zum Zielsystem hinzugefügt wurden und dass die Datenwerte nach der Transformation den Erwartungen entsprechen.
  4. Im Rahmen der Metadatenprüfung werden Datentyp, Länge, Index und Einschränkungen der ETL-Anwendungsmetadaten (Ladestatistiken, Gesamtwerte beim Abgleich, Metriken zur Datenqualität) kontrolliert.
  5. Die Performanceprüfung sorgt dafür, dass die Daten innerhalb des erwarteten Zeitrahmens in das Data Warehouse geladen werden und dass der Testserver bei mehreren Benutzern und Transaktionen eine adäquate Performance und Skalierbarkeit liefert.
  6. Bei der Datentransformationsprüfung werden SQL-Abfragen für jede Reihe ausgeführt, um zu prüfen, dass die Daten entsprechend den Geschäftsregeln korrekt transformiert wurden.
  7. Im Rahmen der Datenqualitätsprüfung erfolgen Syntaxtests (ungültige Zeichen, Muster, Reihenfolge der Groß-/Kleinbuchstaben) und Referenztests (Anzahl, Datum, Genauigkeit, Nullkontrolle), um sicherzustellen, dass die ETL-Anwendung ungültige Daten ablehnt und meldet sowie Standardwerte akzeptiert.
  8. Bei der Datenintegrationsprüfung wird bestätigt, dass die Daten von sämtlichen Quellen korrekt in das Ziel-Data Warehouse geladen wurden. Außerdem werden die Thresholdwerte geprüft.
  9. Die Berichtsprüfung umfasst eine Prüfung der Daten im Übersichtsreport. Dabei wird verifiziert, dass Layout und Funktionalität den Erwartungen entsprechen und es werden entsprechende Berechnungen durchgeführt.
Während der ETL-Tests kann auch eine Prüfung der Benutzerakzeptanz, GUI und Anwendungsmigration erfolgen, um sicherzustellen, dass die ETL-Architektur gut auf anderen Plattformen läuft. Mittels inkrementeller ETL-Tests lässt sich verifizieren, dass neue Datensätze und Updates wie erwartet verarbeitet werden.

Herausforderungen von ETL-Tests

Werden Herausforderungen frühzeitig im ETL-Prozess erkannt, lassen sich Engpässe und kostspielige Verzögerungen vermeiden. Daher ist es wichtig, gleich zu Anfang ein Quelle-Ziel-Mappingdokument zu erstellen und die Geschäftsanforderungen klar zu definieren. Häufige Änderungen, die dazu führen, dass die ETL-Tester die Logik in ihren Skripten ändern müssen, können den Prozess erheblich verlangsamen. Die ETL-Tester müssen die Datentransformationsanforderungen und die zur Umsetzung erforderliche Zeit genau einschätzen können und die Enduser-Anforderungen genau verstehen. Hier einige weitere Herausforderungen, auf die Sie von Anfang an achten sollten:
  • Während der Migration verlorene oder beschädigte Daten.
  • Eingeschränkte Verfügbarkeit der Quelldaten.
  • Fehleinschätzung der Anforderungen bei der Datentransformation.
  • Doppelt vorhandene oder unvollständige Daten.
  • Große Mengen historischer Daten, die ETL-Tests im Zielsystem erschweren.
  • Instabile Testumgebung.
  • Einsatz veralteter ETL-Tools.

So finden Sie das beste ETL-Tool

ELT-Testtools steigern die IT-Produktivität und vereinfachen die Analyse von Big Data, um daraus Erkenntnisse zu gewinnen. Das Tool selbst enthält Verfahren und Regeln zur Datenextraktion und -verarbeitung, sodass Sie auf die herkömmlichen arbeits- und kostenintensiven Programmiermethoden verzichten können. Ein weiterer Vorteil von ETL-Testtools ist ihre integrierte Kompatibilität mit Cloud-Data Warehouse-, ERP- und CRM-Plattformen wie Amazon Web Services, Salesforce, Oracle, Kinesis, Google Cloud Platform, NetSuite, etc. Achten Sie beim Vergleich von ETL-Testtools auf diese Funktionen:
  • Grafische Oberfläche für eine einfachere Konzeption und Entwicklung von ETL-Prozessen.
  • Automatische Codeerzeugung für eine schnellere Entwicklung und die Reduzierung von Fehlern.
  • Integrierte Datenkonnektoren für den Zugriff auf Daten, die in Dateiformaten, in einer Datenbank, in einem Anwendungspaket oder in einem älteren System gespeichert sind.
  • Content Management-Systeme, die einen Kontextwechsel für ETL-Entwicklung, Tests und Produktionsumgebungen ermöglichen.
  • Leistungsstarke Debugging-Tools, mit denen Sie Datenflüsse in Echtzeit tracken und das Verhalten Zeile für Zeile protokollieren können.
Mit speziell für Cloud Computing-Architekturen konzipierten Cloud-nativen ETL-Tools können Unternehmen die Vorteile eines Data Warehouse voll ausschöpfen.

Laden Sie ETL-Tests: Ein Überblick jetzt herunter.
Weitere Informationen

Die Zukunft von ETL-Tests: AI und die Cloud

Große Organisationen, die handcodierte Skripte und selbstentwickelte Tools verwenden, sind nicht so effizient, wie sie sein könnten, und haben nicht die Möglichkeit, mit den heutigen ETL-Cloud-Technologien mitzuwachsen. Es ist inzwischen ganz normal, dass dynamische und flexible DevOps-Teams mithilfe automatisierter kontinuierlicher Bereitstellungspraktiken täglich mehrere Updates für Software-Anwendungen produzieren. Da DevOps zunehmend auf Cloud-basierte Datenumgebungen und -prozesse setzen, benötigen Sie eine automatisierte Datenintegration mit ELT-Testtools, die große Datenmengen in Echtzeit – und ohne menschliches Zutun – selbständig verarbeiten können. Der Wasserfallansatz (ein Problem in einem Datenstrom identifizieren, beheben, Schema testen, ins Data Warehouse laden und analysieren) wird nach und nach von Cloud-nativen, flexiblen Lösungen abgelöst. Datenmanagement-Cloud-Architekturen und „intelligente“ AI-Datenintegrationsassistenten zählen zu den neuen Trends. Wenn Sie sich eine Demonstration von maschinellem Lernen mit Spark ansehen und erfahren möchten, wie Systeme menschliche Entscheidungen erlernen und ein Klassifizierungsmodell auf der Grundlage dieser Erkenntnisse generiert wird, könnte dieses Video interessant für Sie sein: How to Match with Spark and Machine Learning (Datenabgleich mit Spark und maschinellem Lernen):

Open Source-ETL-Tests

Bei ETL-Tests handelt es sich um einen mehrschichtigen, datenorientierten Prozess, bei dem komplexe SQL-Abfragen zum Einsatz kommen, um auf Millionen von Datensätzen zuzugreifen, sie zu extrahieren, zu transformieren und aus unterschiedlichen Quellsystemen in ein Ziel-Data Warehouse zu laden. ETL-Testtools bewältigen einen Großteil dieser Workload für DevOps, sodass die kostspielige und zeitaufwändige Entwicklung proprietärer Tools entfällt. Umfangreiche ETL-Tests geben Unternehmen nicht nur Vertrauen in die Integrität ihrer Big Data und der aus diesen Daten gewonnenen Erkenntnisse, sondern minimieren auch das geschäftliche Risiko. Das branchenführende Open Source-ETL-Entwicklungs- und Testtool Talend Open Studio for Data Integration wurde seit 2006 millionenfach heruntergeladen und kann unter einer Apache-Lizenz kostenlos genutzt werden. Die subskriptionsbasierte Talend Data Integration-Lösung stellt die gleichen ETL-Testfunktionen sowie Continuous Delivery-Mechanismen der Enterprise-Klasse bereit. Dies ermöglicht ein einfacheres Arbeiten im Team, die Ausführung von ETL-Testjobs auf Remote-Systemen und bietet zudem ein Audit-Tool für qualitative und quantitative ETL-Metriken.

| Zuletzt aktualisiert: January 28th, 2019