Ιδρυματικό Αποθετήριο [SANDBOX]
Πολυτεχνείο Κρήτης
EN  |  EL

Αναζήτηση

Πλοήγηση

Ο Χώρος μου

Βελτιστοποίηση ερωτημάτων σε πολλαπλές πλατφόρμες στο Apache Beam

Stamatakis Georgios

Πλήρης Εγγραφή


URI: http://purl.tuc.gr/dl/dias/35A1A964-5FD6-4BCD-8B32-A65ACD15D5FD
Έτος 2019
Τύπος Διπλωματική Εργασία
Άδεια Χρήσης
Λεπτομέρειες
Βιβλιογραφική Αναφορά Γεώργιος Σταματάκης, "Βελτιστοποίηση ερωτημάτων σε πολλαπλές πλατφόρμες στο Apache Beam", Διπλωματική Εργασία, Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών, Πολυτεχνείο Κρήτης, Χανιά, Ελλάς, 2019 https://doi.org/10.26233/heallink.tuc.81197
Εμφανίζεται στις Συλλογές

Περίληψη

Ζούμε σε μια εποχή όπου η ταχεία αύξηση των ροών δεδομένων τόσο σε πολυπλοκότητα όσο και σε ταχύτητα εισάγει νέες προκλήσεις σε καθημερινή βάση. Τέτοιες ροές είναι συχνά άπειρε, εκπέμπουν δεδομένα σε υψηλές ταχύτητες και μπορούν να δημιουργηθούν από μη στατικές κατανομές με αποτέλεσμα να απαιτείται μια σύγχρονη προσέγγιση όταν σε αυτά τα δεδομένα εκτελούνται πολύπλοκα ερωτήματα. Δεδομένου ότι οι σύγχρονες πλατφόρμες επεξεργασίας ροών Μεγάλων Δεδομένων εξελίσσονται ταχύτατα απαιτούνται προγραμματιστικές γλώσσες υψηλού επιπέδου για την παροχή υποστήριξης όλο και πιο περίπλοκων ερωτημάτων. Ωστόσο, η επεξεργασία των ερωτημάτων απαιτεί τη μετάφραση μιας γλώσσας υψηλού επιπέδου σε ένα σύνολο εντολών επεξεργασίας δεδομένων χαμηλότερου επιπέδου και επιπλέον η παραγωγή ενός βέλτιστου σχεδίου εκτέλεσης για το κάθε ερώτημα μπορεί να είναι εξαιρετικά δύσκολη καθώς απαιτεί την ελαχιστοποίηση του κόστους με βάση τα διαθέσιμα στατιστικά στοιχεία. Ο στόχος της βελτιστοποίησης ερωτημάτων είναι να μεγιστοποιηθούν (ή να ελαχιστοποιηθούν) συγκεκριμένα μέτρα απόδοσης όπως η ρυθμαπόδοση και ο χρόνος απόκρισης που είναι ζωτικής σημασίας για την απόδοση ενός συστήματος επεξεργασίας ροών, αλλά για να γίνει αυτό αποτελεσματικά χρειάζεται να παρακολουθείται ένας αριθμός στατιστικών στοιχείων και μέτρων απόδοσης. Τέτοια στατιστικά συνήθως περιλαμβάνουν την υγεία και τη χρήση των τελεστών μιας τοπολογίας, την ταχύτητα και την απόδοση του δικτύου, τα στατιστικά στοιχεία υλικού κάθε κόμβου και τελεστή καθώς και πληροφορίες σχετικά με τις εισερχόμενες ροές δεδομένων.Σε αυτή τη Διπλωματική εργασία προτείνουμε μια πλατφόρμα βελτιστοποίησης ερωτημάτων πραγματικού χρόνου που συγκεντρώνει διάφορα στατιστικά στοιχεία από διάφορες σύγχρονες πλατφόρμες επεξεργασίας ροών δεδομένων και με βάση τα ζητούμενα ερωτήματα κάθε ένα από αυτά ανατίθεται στη κατάλληλη πλατφόρμα με βάση κάποια στρατηγική. Τέτοιες στρατηγικές στοχεύουν στο συνδυασμό των μετρήσεων και των στατιστικών στοιχείων που συλλέγονται από την πλατφόρμα μας, τόσο στο παρελθόν όσο και στο παρόν, προκειμένου να αντιστοιχούν σωστά τα ερωτήματα στα διαθέσιμα πλαίσια. Η προτεινόμενη πλατφόρμα περιλαμβάνει τρεις βασικές ενότητες, η πρώτη από τις οποίες είναι υπεύθυνη για τη συγκέντρωση διαθέσιμων μετρήσεων από τους διαχειριστές πόρων και τις διαθέσιμες πλατφόρμες. Η δεύτερη ενότητα αποτελείται από μια εφαρμογή χώνεψης δεδομένων στη πλατφόρμα Kafka Streams που μας επιτρέπει να εκτελούμε κατανεμημένη δειγματοληψία σε εισερχόμενες ροές δεδομένων με σκοπό τη συλλογή στατιστικών σχετικά με τα δεδομένα που εισέρχονται όπως η ρυθμαπόδοση και ο χρόνος απόκρισης. Τέλος, με βάση τις διαθέσιμες μετρήσεις, κάθε ερώτημα ανατίθεται σε μία πλατφόρμα που εκτελεί μια τοπολογία σχεδιασμένη στο Apache Beam, μια πλατφόρμα που μας επιτρέπει να γράφουμε κώδικα υψηλού επιπέδου που μπορεί να εκτελεστεί στη συνέχεια με ευκολία σε διάφορες πλατφόρμες επεξεργασίας δεδομένων.Τα πειραματικά αποτελέσματα αποδεικνύουν ότι τα στατιστικά στοιχεία βελτιώνουν την αντιστοίχιση ερωτημάτων σε πλατφόρμες καθώς και τα συνολικά μέτρα απόδοσης. Επίσης, η αύξηση του επιπέδου παραλληλισμού στις πλατφόρμες αποδίδει καλύτερα αποτελέσματα λόγω του υψηλότερου ρυθμού απορρόφησης. Τέλος, η πειραματική αξιολόγηση δείχνει ότι διάφορες στρατηγικές μπορούν να λειτουργήσουν με πιο αποτελεσματικό τρόπο κάτω από προϋποθέσεις.

Διαθέσιμα αρχεία

Υπηρεσίες

Στατιστικά