Έμβλημα Πολυτεχνείου Κρήτης
Το Πολυτεχνείο Κρήτης στο Facebook  Το Πολυτεχνείο Κρήτης στο Instagram  Το Πολυτεχνείο Κρήτης στο Twitter  Το Πολυτεχνείο Κρήτης στο YouTube   Το Πολυτεχνείο Κρήτης στο Linkedin

28
Φεβ

Παρουσίαση Διπλωματικής Εργασίας κ. Αλέξανδρου-Νικόλαου Ζαφειρακόπουλου - Σχολή ΗΜΜΥ
Κατηγορία: Παρουσίαση Διπλωματικής Εργασίας  
Τοποθεσία
Ώρα28/02/2023 13:30 - 14:30

Περιγραφή:

ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ
Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Πρόγραμμα Προπτυχιακών Σπουδών

ΠΑΡΟΥΣΙΑΣΗ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ

Αλέξανδρου-Νικόλαου Ζαφειρακόπουλου

με θέμα
Έγκυρη Υποστήριξη Αυτόματης Κλιμάκωσης του Apache Flink σε Υποδομή Kubernetes στο Υπολογιστικό Νέφος
Pro-active Automatic scaling support for Apache Flink in Kubernetes in the Cloud

Εξεταστική Επιτροπή

Καθηγητής Ευριπίδης Πετράκης (επιβλέπων)
Καθηγητής Μιχαήλ Ζερβάκης
Αναπληρωτής Καθηγητής Βασίλειος Σαμολαδάς

Περίληψη

Το Apache Flink είναι μία κατανεμημένη μηχανή επεξεργασίας για υπολογισμούς πεπερασμένων και μη ροών δεδομένων. Εκτελεί αυθαίρετα προγράμματα σε μορφή ακυκλικών, κατευθυνόμενων γράφων παράλληλα, σε εφαρμογές που οδηγούνται από γεγονότα όπως εντοπισμός ύποπτων συναλλαγών, εντοπισμός σπάνιων ή ύποπτων γεγονότων, εντοπισμός δεδομένων που ικανοποιούν έναν ή περισσότερους κανόνες και πολλά περισσότερα. Παρά την πληθώρα δυνατοτήτων που παρέχει, το Apache Flink δεν υποστηρίζει αυτόματη κλιμάκωση των αναγκαίων υποδομών όταν πηγές ροών δεδομένων παράγουν στοιχεία σε αυξομειούμενες ταχύτητες. Για αυτό το λόγο, περιγράφουμε ένα αυτόνομο πράκτορα όπου υποστηρίζει δυναμική κλιμάκωση του Apache Flink  στο Kubernetes. Ο εν λόγο πράκτορας παρακολουθεί, μοντελοποιεί και προσαρμόζει την συμπεριφορά του Flink επιτυγχάνοντας την απαραίτητη χρήση των αναγκαίων πόρων σύμφωνα με τον εισερχόμενο φόρτο εργασίας. Ο κανόνας απόφασης του αυτόνομου πράκτορα βασίζεται στην αδράνεια των εσωτερικών operators που απαρτίζουν τον κατευθυνόμενο γράφο του Flink καθώς και σε αλλαγές στο record lag που παρατηρείται στην πηγή δεδομένων. Αποδεικνύουμε, ότι το μοντέλο μας ελαχιστοποιεί τα αναγκαία κόστη σε μια υποδομή στο υπολογιστικό νέφος και παρέχει καλύτερη απόδοση συγκριτικά με ήδη υπάρχουσες υλοποιήσεις στην αυτόματη κλιμάκωση στο Apache Flink. Η αποτελεσματικότητα του μοντέλου μας υποστηρίζεται από μία πληθώρα συνθετικών και πραγματικών φόρτων εργασίας με σκοπό την προσομοίωση πολλαπλών σεναρίων που μπορεί να αντιμετωπίσει μια εφαρμογή

Abstract

Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. It executes arbitrary dataflow programs in a data-parallel and pipelined manner in event-driven applications such as, fraud detection (i.e. detection of suspicious transactions), anomaly detection (i.e. detection of rare or suspicions events), rule-based alerting (i.e. identification of data which satisfy one or more rules) and many more. Despite its versatility, Apache Flink cannot automatically and optimally adjust the utilization of its underlying computing resources when streaming sources produce data at varying speeds. In order to address this issue, we describe an autonomous agent to support dynamic autoscaling for Apache Flink on Kubernetes. This agent monitors, models and adjusts Flink’s behaviour by optimally modifying its allocated resources in order to match the incoming workload while achieving minimum cost. The decision making process is based on operator idleness and changes to the input’s record lag. We prove that our model not only successfully maintains the performance of the application while minimizing infrastructure costs, but can provide a better performance-to-cost ratio compared to already existing work on Flink autoscaling. The effectiveness of our model is supported by an exhaustive set of synthetic and real life workloads aimed to simulate a plethora of possible scenarios.

© Πολυτεχνείο Κρήτης 2012