Spooq: A Software Library for ETL Processes in Data Lakes

Autor
D. Hohensinn
Masterarbeit
MT2101 (Jänner, 2021)
Betreut von
o. Univ.-Prof. Dr. Michael Schrefl
Angeleitet von
Dr. Bernd Neumayr
Ausgeführt an
Universität Linz, Institut für Wirtschaftsinformatik - Data & Knowledge Engineering
Ressourcen
Kopie

Kurzfassung (Deutsch)

Die Implementierung von ETL-Prozessen in Data Lakes ist aufgrund heterogener Open-Source-Softwareumgebungen, der Verwendung unstrukturierter Daten und des Schema-on-Read-Prinzips ein komplexer und komplizierter Vorgang. Dies führt zu einem erhöhten Aufwand für die Entwicklung von Datenpipelines im Vergleich zu traditionellen Data Warehouses, die sich auf jahrelange Standards und Best Practices stützen können. Der erhöhte Entwicklungsaufwand wirkt sich auf die Dauer und Qualität von Datenintegrationsprojekten aus und kann sogar zu verpassten Geschäftsmöglichkeiten führen. Diese Masterarbeit befasst sich mit der Implementierung der Softwarebibliothek Spooq, die Dateningenieure beim Entwurf von ETL-Datenpipelines in Data Lakes unterstützt. Das Paket basiert auf Apache Spark, das in den meisten Data Lake Umgebungen enthalten ist, wie zum Beispiel einer lokalen Cloudera Hadoop-Distribution oder dem cloudbasierten Azure HDInsight Service. Es erleichtert das Testen und Dokumentieren und steigert so die Qualität der Datenpipelines. Die Softwarebibliothek ermöglicht es Dateningenieuren, sich auf die Geschäftslogik statt auf Software-Code zu konzentrieren, indem sie die Low-Level-Funktionen von Spark abstrahiert. Die Verwendung von Spooq führt zu einem reduzierten Entwicklungsaufwand für Datenpipelines.

Kurzfassung (Englisch)

The implementation of ETL processes in data lakes is a complex and intricate process due to heterogeneous open-source software environments, the use of unstructured data, and the schema-on-read principle. This leads to an increased effort for the development of data pipelines compared to traditional data warehouses, which can rely on years of standards and best practices. The increased development effort affects the duration and quality of data integration projects and can even lead to missed business opportunities. This master thesis deals with the implementation of the software library Spooq, which supports data engineers in designing ETL data pipelines in data lakes. The package is based on Apache Spark, which is included in most data lake environments, such as a local Cloudera Hadoop distribution or the cloud-based Azure HDInsight Service. It facilitates testing and documentation and thus enhances the quality of data pipelines. The software library allows data engineers to focus on business logic rather than software code by abstracting Spark’s low-level functions. The use of Spooq results in reduced development effort for data pipelines.