Die Verarbeitung von Datenströmen rückt zunehmend in den Fokus beim Aufbau moderner Big Data Infrastrukturen. Der Praxispartner dieser Master-Thesis, die integrationfactory GmbH & Co. KG, möchte zunehmend den Big Data Bereich ausbauen, um den Kunden auch in diesen Aspekten als Beratungshaus Unterstützung bieten zu können. Der Fokus wurde von Anfang an auf Apache Flink gelegt, einem aufstrebenden Stream-Processing-Framework. Das Ziel dieser Arbeit ist die Implementierung verschiedener typischer Anwendungsfälle des Unternehmens mithilfe von Flink und die anschließende Evaluierung
dieser. Im Rahmen dessen wird am Anfang zunächst die zentrale Problemstellung festgehalten und daraus die Zielstellungen abgeleitet. Zum besseren Verständnis werden im Nachgang wichtige Grundbegriffe und Konzepte vermittelt. Es wird außerdem dem Framework ein eigenes Kapitel gewidmet, um den Leser einen umfangreichen aber dennoch kompakten Einblick in Flink zu geben. Dabei wurde auf verschiedene Quellen eingegangen, mitunter wurde auch ein direkter Kontakt mit aktiven Entwicklern des Frameworks aufgebaut. Dadurch konnten zunächst unklare Sachverhalte durch fehlende Informationen aus den Primärquellen im Nachgang geklärt und aufbereitet in das Kapitel hinzugefügt werden. Im Hauptteil der Arbeit wird eine Implementierung von definierten Anwendungsfällen
vorgenommen. Dabei kommen die Datastream-API und FlinkSQL zum Einsatz, dessen Auswahl auch begründet wird. Die Ausführung der programmierten Jobs findet im firmeneigenen Big Data Labor statt, einer virtualisierten Umgebung zum Testen von Technologien. Als zentrales Problem dieser Master-Thesis sollen beide Schnittstellen auf die Eignung hinsichtlich der Anwendungsfälle evaluiert werden. Auf Basis des Wissens aus den Grundlagen-Kapiteln und der Erfahrungen aus der Entwicklung der Jobs werden Kriterien zur Bewertung mithilfe des Analytic Hierarchy Processes aufgestellt. Im Nachgang findet eine Auswertung statt und die Einordnung des Ergebnisses.:1. Einleitung
1.1. Motivation
1.2. Problemstellung
1.3. Zielsetzung
2. Grundlagen
2.1. Begriffsdefinitionen
2.1.1. Big Data
2.1.2. Bounded vs. unbounded Streams
2.1.3. Stream vs. Tabelle
2.2. Stateful Stream Processing
2.2.1. Historie
2.2.2. Anforderungen
2.2.3. Pattern-Arten
2.2.4. Funktionsweise zustandsbehafteter Datenstromverarbeitung
3. Apache Flink
3.1. Historie
3.2. Architektur
3.3. Zeitabhängige Verarbeitung
3.4. Datentypen und Serialisierung
3.5. State Management
3.6. Checkpoints und Recovery
3.7. Programmierschnittstellen
3.7.1. DataStream-API
3.7.2. FlinkSQL & Table-API
3.7.3. Integration mit Hive
3.8. Deployment und Betrieb
4. Implementierung
4.1. Entwicklungsumgebung
4.2. Serverumgebung
4.3. Konfiguration von Flink
4.4. Ausgangsdaten
4.5. Anwendungsfälle
4.6. Umsetzung in Flink-Jobs
4.6.1. DataStream-API
4.6.2. FlinkSQL
4.7. Betrachtung der Resultate
5. Evaluierung
5.1. Analytic Hierarchy Process
5.1.1. Ablauf und Methodik
5.1.2. Phase 1: Problemstellung
5.1.3. Phase 2: Struktur der Kriterien
5.1.4. Phase 3: Aufstellung der Vergleichsmatrizen
5.1.5. Phase 4: Bewertung der Alternativen
5.2. Auswertung des AHP
6. Fazit und Ausblick
6.1. Fazit
6.2. Ausblick
Identifer | oai:union.ndltd.org:DRESDEN/oai:qucosa:de:qucosa:74892 |
Date | 17 May 2021 |
Creators | Oelschlegel, Jan |
Contributors | Hochschule für Technik, Wirtschaft und Kultur (FH) Leipzig |
Source Sets | Hochschulschriftenserver (HSSS) der SLUB Dresden |
Language | German |
Detected Language | German |
Type | info:eu-repo/semantics/acceptedVersion, doc-type:masterThesis, info:eu-repo/semantics/masterThesis, doc-type:Text |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0024 seconds