Bibliographic Metadata

Title
A big Data analytics framework for evaluating automated elastic scalability of the SMACK-stack / von Benedikt Wedenik
AuthorWedenik, Benedikt Peter
CensorDustdar, Schahram ; Nastic, Stefan
PublishedWien, 2018
Descriptionxiii, 104 Seiten : Illustrationen, Diagramme
Institutional NoteTechnische Universität Wien, Diplomarbeit, 2018
Annotation
Zusammenfassung in deutscher Sprache
LanguageEnglish
Document typeThesis (Diplom)
Keywords (DE)Big Data / Cloud Computing / SMACK-Stack / Scalability / Data Analytics
Keywords (EN)Big Data / Cloud Computing / SMACK-Stack / Scalability / Data Analytics
URNurn:nbn:at:at-ubtuw:1-116384 Persistent Identifier (URN)
Restriction-Information
 The work is publicly available
Files
A big Data analytics framework for evaluating automated elastic scalability of the SMACK-stack [6.94 mb]
Links
Reference
Classification
Abstract (German)

In den letzten Jahren ist der Bedarf an schneller Verfügbarkeit von Informationen, sowie an kurzen Antwortzeiten gestiegen. Die Anforderungen an ein heutiges Businesskonzept sind im Wandel: Stundenoder gar tagelanges Warten auf die Ergebnisse einer Abfrage ist in vielen Branchen schlichtweg nicht mehr akzeptabel. Die Antwort kommt sofort oder die Anfrage wird verworfen - genau hier setzt der Begriff "Fast Dataëin. Mit dem SMACK Stack, bestehend aus Spark, Mesos, Akka, Cassandra und Kafka, wird eine robuste und vielseitige Datenverarbeitungsplattform bereitgestellt, auf der Fast Data Applikationen ausgeführt werden können. In dieser Thesis wird ein Framework vorgestellt, mit dessen Hilfe Services und Ressourcen innerhalb des Stacks einfach skaliert werden können. Die Hauptbeiträge können wie folgt zusammengefasst werden: 1) Entwicklung und Evaluation des genannten Frameworks, einschließlich der Monitoring-Metrik Extraktion & Aggregation, sowie des Skalierungsservices selbst. 2) Implementierung zweier realworld Referenzapplikationen. 3) Bereitstellung von Infrastruktur-Management Tools mit deren Hilfe der Stack einfach in der Cloud deployt werden kann. 4) Bereitstellung von Deployment-Vorlagen in Form von Empfehlungen, wie der Stack initial am besten für die vorhandenen Ressourcen konfiguriert und gestartet wird. Für die Evaluierung des Frameworks werden die zwei entwickelten real-world Applikationen herangezogen. Die erste Applikation basiert auf der Verarbeitung von IoT Daten und ist stark I/O-lastig, während die zweite Applikation kleinere Datenmengen verarbeitet, dafür aber teurere Berechnungen durchführt, um Vorhersagen aufgrund der IoT Daten zu treffen. Die Resultate zeigen, dass das Framework in der Lage ist zu erkennen, welcher Teil des Systems gerade unter hoher Last steht und diesen dann automatisch zu skalieren. Bei der IoT Applikation konnte der Datendurchsatz um bis zu 73% erhöht werden, während die Vorhersageapplikation in der Lage war bis zu 169% mehr Nachrichten zu bearbeiten, wenn das Framework aktiviert wurde. Obwohl die Resultate vielversprechend aussehen, gibt es noch Potenzial für weitere Verbesserungen, wie zum Beispiel der Einsatz von maschinellem Lernen um Schwellwerte intelligent anzupassen, oder eine breitere und erweiterte REST API.

Abstract (English)

In the last years the demand of information availability and shorter response times is increasing. Todays business requirements are changing: Waiting hours or even days for the result of a query is not acceptable anymore in many sectors. The response needs to be immediate, or the query is discarded - This is where "Fast Data" begins. With the SMACK Stack, consisting of Spark, Mesos, Akka, Cassandra and Kafka, a robust and versatile platform and toolset to successfully run Fast Data applications is provided. In this thesis a framework to correctly scale services and distribute resources within the stack is introduced. The main contributions of this thesis are: 1) Development and evaluation of the mentioned framework, including monitoring metrics extraction and aggregation, as well as the scaling service itself. 2) Implementation of two real-world reference applications. 3) Providing infrastructure management tools to easily deploy the stack in the cloud. 4) Deployment blueprints in form of recommendations on how to initially set up and configure available resources are provided. To evaluate the framework, the real world applications are used for benchmarking. One application is based on IoT data and is mainly I/O demanding, while the other one is computationally bound and provides predictions based on IoT data. The results indicate, that the framework performs well in terms of identifying which component is under heavy stress and scaling it automatically. This leads to an increase of throughput in the IoT application of up to 73%, while the prediction application is able to handle up to 169% more messages when using the supervising framework. While the results look promising, there is still potential for future work, like using machine learning to better handle thresholds or an extended REST API.

Stats
The PDF-Document has been downloaded 14 times.