Bei einem Zero-ETL-Ansatz, also einem einfachen Ingest, werden die Daten direkt und ohne aufwändige Aufbereitung aus einer Datenquelle in einen Data Lake eingespeist. Die Rohdaten stehen dann in ihrem ursprünglichen Format für die Analyse und Verarbeitung zur Verfügung. Durch den Verzicht auf eine Pipeline soll die Datenverarbeitung beschleunigt und die Datenintegration vereinfacht werden.
Soweit die Theorie. Warum halte ich dieses Integrationsmuster trotz seiner scheinbaren Vorteile für problematisch?
Wir haben schon seit Jahrzehnten Erfahrung mit Punkt-zu-Punkt-Integration und das Ergebnis mutiert immer wieder zu einer Spaghetti-Architektur. Egal, ob’s um einen neuen Anwendungsfall, eine neue Analyse oder eine neue Verbindung geht: Die Komplexität steigt immer schneller, und am Ende ist das Ganze ein unübersichtliches Netz von Abhängigkeiten. Das macht es äußerst schwierig, Änderungen vorzunehmen oder neue Funktionen hinzuzufügen, ohne dass etwas schief geht. Zusammen mit schlechten Entwurfspraktiken, mangelnder Dokumentation und einer Ansammlung technischer Schulden im Laufe der Zeit führt diese zunehmende Komplexität zu erheblichen Wartungsproblemen, erschwert die Skalierbarkeit und erhöht das Risiko von Softwarefehlern und Systemausfällen. Zero ETL kann zwar kurzfristig Vorteile bieten, aber langfristig scheitert es oft an diesen Herausforderungen.
Eine gute Integrationsarchitektur ist wichtig, weil sie die Anzahl der Abhängigkeiten reduziert. Das heißt, Änderungen und Updates lassen sich leichter durchführen, ohne dass unbeabsichtigte Nebeneffekte auftreten. Außerdem ist es einfacher, neue Anforderungen zu erfüllen oder neue Mitarbeiter einzuweisen. Und wenn die Software weniger komplex ist, ist das Risiko von Fehlern, Systemausfällen und Sicherheitslücken geringer. Und wir können langfristig Kosten sparen, weil wir weniger Wartungsaufwand und technische Schulden haben.