Εκτέλεση και βελτιστοποίηση ροών εργασιών Big Data σε περιβάλλοντα πολλαπλών μηχανών - Μηλιός, Ιωάννης (Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών, 2017)
Τα τελευταία χρόνια παρατηρείται μια έκρηξη δεδομένων στο διαδίκτυο. Η ποικιλία των κοινωνικών δικτύων και η ευκολία με την οποία παρέχεται η πρόσβαση σε αυτά, οδηγεί τους χρήστες στη μεταμόρφωση τεράστιου όγκου δεδομένων σε ημερήσια βάση. Σε αυτό συμβάλλει και η πτώση της τιμής του υλικού, με αποτέλεσμα μοναδικοί χρήστες να χρησιμοποιούν πολλαπλές συσκευές για την παραγωγή εικόνων, κειμένων, video κ.τ.λ. Η πληροφορία που υπάρχει σε αυτά τα δεδομένα και η ανάγκη που προκύπτει για την εξόρυξή της οδήγησε, από τις αρχές της προηγούμενης δεκαετίας, στη δημιουργία κατανεμημένων συστημάτων όπου με ειδικούς αλγορίθμους επεξεργάζονται τα δεδομένα και ανακτούν την απαραίτητη πληροφορία. Η διαφορά στον τρόπο αποθήκευσης και οι ποικίλοι τρόποι επεξεργασίας όμως έχουν οδηγήσει στην δημιουργία πολλαπλών τέτοιων μηχανών. Λόγω αυτής της ποικιλίας και κυρίως της διαφορετικότητας τους, οι χρήστες φαίνεται να είναι εγκλωβισμένοι στη χρησιμοποίηση μόνο λίγων εξ’ αυτών με αποτέλεσμα να βάλλεται τόσο η επεκτασιμότητα όσο και η λειτουργία των εφαρμογών τους. Τη λύση στο παραπάνω πρόβλημα έρχονται να δώσουν συστήματα τα οποία θα αδιαφορούν για την πλατφόρμα εκτέλεσης των ροών εργασιών, θα αντιμετωπίζουν τους τελεστές των εφαρμογών σαν μαύρα-κουτιά και θα αναθέτουν τις προς εκτέλεση εργασίες στα αντίστοιχα βέλτιστα συστήματα προς εκτέλεση. Στην παρούσα διπλωματική εργασία παρουσιάζουμε την δημιουργία και εκτέλεση ροών εργασιών (workflows) σε δεδομένα μεγάλου όγκου, σε δύο διαφορετικά συστήματα, το IReS και το Rheem. Σκοπός μας είναι η σύγκρισή τους όσον αφορά στην ευκολία δημιουργίας των workflows , στην βελτιστοποίηση του πλάνου εκτέλεσης και στην επιλογή των ελάχιστων υπολογιστικών πόρων για τη μείωση του κόστους. Για την επιλογή των εκάστοτε συστημάτων επεξεργασίας το IReS και το Rheem χρησιμοποιούν μοντέλα, που έχουν δημιουργηθεί στη φάση της εκπαίδευσης. Η δημιουργία αυτών των μοντέλων μέσω αλγορίθμων μηχανικής μάθησης, βασίζεται σε δεδομένα όπως ο χρόνος εκτέλεσης, ο αριθμός των πυρήνων που χρησιμοποιήθηκαν, το μέγεθος της κύριας μνήμης κ.τ.λ. Μελετώντας διαφορετικά σενάρια χρήσης, οδηγούμαστε τέλος σε συμπεράσματα που αφορούν κυρίως τη διαφορετική προσέγγιση των συστημάτων απέναντι στους τελεστές των ροών εργασιών, την ύπαρξη ή μη βέλτιστης πολιτικής χρήσης των διαθέσιμων υπολογιστικών πόρων και την διαδικασία δημιουργίας και εκτέλεσης του βέλτιστου πλάνου.