Τα υπολογιστικά νέφη, που πριν από λίγα μόλις χρόνια αποτελούσαν μια εξειδικευμένη αγορά για «νέους» χρήστες με περιπετειώδεις διαθέσεις, εξελίχθηκαν σε μια αγορά δισεκατομμυρίων δολαρίων και πλέον αποτελούν τη μεγαλύτερη πλατφόρμα για υπολογισμούς μεγάλης κλίμακας για κάθε τύπο δεδομένων. Η πανταχού παρούσα πρόσβαση σε μια δυνητικά απεριόριστη δεξαμενή από υπολογιστικούς πόρους, οδήγησε σε μια επανάσταση στις διαδικτυακές υπηρεσίες με αποτέλεσμα όλο και περισσότεροι «κλασσικοί παίχτες» της παλαιάς σχολής της ανάλυσης δεδομένων να μεταβαίνουν σε πλατφόρμες νεφών προσπαθώντας να εξασφαλίσουν και αυτοί ένα κομμάτι της «πίτας» του νέφους. Καθώς τα νέφη επεκτείνονται, όλο και περισσότεροι πελάτες του νέφους μετακινούν τις επιχειρήσεις τους σε πλατφόρμες νέφους σκοπεύοντας να επιτύχουν μεγαλύτερους βαθμούς αξιοπιστίας, ευελιξίας και απόδοσης. Είναι επόμενο να δημιουργείται συνεπώς η ανάγκη για καλύτερες και πιο ευέλικτες μεθόδους χρονοδρομολόγησης προσαρμοσμένες στους πόρους του νέφους που είναι «ρευστοί» και δυναμικοί. Αυτοί οι πόροι έχουν επίπεδα ανομοιογένειας ανήκουστα στα κλασσικά κατανεμημένα συστήματα. Σε αυτή τη διατριβή, σκοπός μας είναι να εξερευνήσουμε πως οι υπάρχουσες μέθοδοι χρονοδρομολόγησης μπορούν να διασκευαστούν και να βελτιστοποιηθούν έτσι ώστε να είναι χρήσιμες σε περιβάλλοντα νέφους αλλά και να αναπτύξουμε νέες, μοντέρνες μεθόδους που είναι πιο καλά προσαρμοσμένες σε περιβάλλοντα νεφών. Γι᾽ αυτό το λόγο, έχουμε χωρίσει τη διατριβή αυτή σε δύο θεματικές ενότητες, στην πρώτη ερευνούμε τη χρήση μεθόδων χρονοδρομολόγησης για εργασίες τύπου ομάδας, ενώ στη δεύτερη παρουσιάζουμε καινοτόμα σχήματα για μετα-ευρετική βελτιστοποίηση της χρονοδρομολόγησης εργασιών τύπου «σάκου-από-εργασίες». Η προσφορά αυτής της διατριβής επίκειται στην προσαρμογή και την ανάπτυξη πολλαπλών μεθοδολογιών χρονοδρομολόγησης για διάφορες οικογένειες παράλληλων εργασιών σε δυναμικά μονο-νεφικά και πολυ-νεφικά συστήματα με διάφορους βαθμούς ετερογένειας σε απόδοση, κόστος και μέγεθος.
Cloud Computing, just a niche market for early adopters with adventurous temperaments a few years ago, has evolved into a multi-billion dollar business and has established itself as the major computing platform for all kinds of data analysis in the exa scale. Ubiquitous access, to a virtually infinite pool of computing resources has spurred a revolution in online services with more and more old-school data-analytics “players” moving to the cloud and seeking a piece of the cloud computing pie. As the clouds grow, so do the scores of clients looking to move their businesses to the cloud trying to incorporate greater levels of flexibility, reliability and performance into their infrastructure. A need therefore arises, the need for better and more flexible scheduling of the cloud's resources, which are fluid and dynamic in nature. These resources, have levels of heterogeneity that are unheard of in classical distributed systems. In this thesis, our aim is, to explore how current scheduling methods can be adapted and optimized for use in the clouds and also develop new, modern methods that are better suited for cloud environments. To that end, we have partitioned this thesis into two sections, in the first we explore the use of gang scheduling methodologies while in the second we introduce novel scheduling schemes for meta-heuristic optimization in bag-of-tasks (BoT) scheduling. The contribution of this thesis lies in the adaptation and exploration of multiple methodologies, both well established and novel ones, in the scheduling of different families of parallel applications in dynamic single, multi, and inter-cloud computing models with varying degrees of performance, cost and size heterogeneity.