Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους
Η υποδομή υπολογιστικού νέφους (cloud computing) αποτελεί μια νέα αναπτυσσόμενη τεχνολογία στον τομέα της πληροφορικής κατά την οποία η υπολογιστική ισχύς και η αποθήκευση δεδομένων μεταφέρεται από τον υπολογιστή γραφείου και τους φορητούς υπολογιστές σε μεγάλα κέντρα δεδομένων. Η ανάπτυξη του υπολο...
Κύριος συγγραφέας: | |
---|---|
Άλλοι συγγραφείς: | |
Μορφή: | Thesis |
Γλώσσα: | Greek |
Έκδοση: |
2018
|
Θέματα: | |
Διαθέσιμο Online: | http://hdl.handle.net/10889/10911 |
id |
nemertes-10889-10911 |
---|---|
record_format |
dspace |
institution |
UPatras |
collection |
Nemertes |
language |
Greek |
topic |
Υπολογιστικό νέφος Χρονοπρογραμματισμός Κατανομή υπολογιστικών πόρων Cloud computing Time scheduling Resources allocation 004.678 2 |
spellingShingle |
Υπολογιστικό νέφος Χρονοπρογραμματισμός Κατανομή υπολογιστικών πόρων Cloud computing Time scheduling Resources allocation 004.678 2 Πέγκας, Ανδρέας Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους |
description |
Η υποδομή υπολογιστικού νέφους (cloud computing) αποτελεί μια νέα αναπτυσσόμενη τεχνολογία στον τομέα της πληροφορικής κατά την οποία η υπολογιστική ισχύς και η αποθήκευση δεδομένων μεταφέρεται από τον υπολογιστή γραφείου και τους φορητούς υπολογιστές σε μεγάλα κέντρα δεδομένων. Η ανάπτυξη του υπολογιστικού νέφους είναι πλέον εφικτή χάρη στην αυξανόμενη δυνατότητα πρόσβασης στο διαδίκτυο, τη μείωση του κόστους αποθήκευσης δεδομένων καθώς τη συνεχή βελτίωση του διαδικτυακού λογισμικού. Οι χρήστες έχουν τη δυνατότητα να προσαρμόσουν τις υπηρεσίες δυναμικά, ανά πάσα στιγμή, ώστε να καλύπτονται οι εκάστοτε ανάγκες, ενώ οι πάροχοι μπορούν να επεκτείνουν δυναμικά την υποδομή των μηχανημάτων με μεγαλύτερη ευκολία και χωρίς τη δημιουργία προβλημάτων.
Επίσης, τα συνεχώς αυξανόμενα σε πλήθος δεδομένα τα οποία παράγονται από διάφορες πηγές, όπως είναι το διαδίκτυο και τα επιστημονικά πειράματα, έχουν δημιουργήσει μία τεράστια ποσότητα πολύπλοκων και διάχυτων ψηφιακών πληροφοριών. Η εξαγωγή χρήσιμων πληροφοριών από ψηφιακά δεδομένα μεγάλου όγκου απαιτεί έξυπνες και εύκολα επεκτάσιμες υπηρεσίες επεξεργασίας.
Τα τελευταία χρόνια έχουν γίνει αρκετές προσπάθειες να οριστούν πλαίσια για την επίλυση του προβλήματος της παράλληλης εκτέλεσης διεργασιών πάνω σε cloud. Έχουν προταθεί διάφορες αρχιτεκτονικές και αλγόριθμοι των οποίων σκοπός είναι η καλύτερη διαχείριση των υπολογιστικών πόρων του cloud.
Έχοντας γνώση της θεωρίας και μετά από μελέτη των υλοποιημένων εφαρμογών, σχετικών με τη διαχείριση πολύπλοκων υλοποιήσεων επιστημονικής ανάλυσης δεδομένων, η παρούσα μεταπτυχιακή εργασία έχει ως σκοπό την παρουσίαση και την εκτενή ανάλυση ενός καινοτόμου αλγόριθμου χρονοπρογραμματισμού επιστημονικών διεργασιών στο υπολογιστικό νέφος. Αυτός ο αλγόριθμος είναι βασισμένος σε ένα σύστημα βαθμολόγησης των εργασιών που βρίσκονται ανά πάσα χρονική στιγμή στην ουρά. Κάθε εργασία λαμβάνει ένα σύνολο από credits, τα οποία είναι ανάλογα του μεγέθους των υπολογιστικών απαιτήσεων της, τα οποία ελαττώνονται με την πάροδο του χρόνου. Προτεραιότητα δίνεται πάντοτε στις εργασίες με την μικρότερη βαθμολογία. Χαρακτηριστικό της προτεινόμενης προσέγγισης είναι ότι δεν απαιτείται η a-priori γνώση του χρόνου εκτέλεσης της κάθε εργασίας, καθιστώντας τον ιδανικό για περιβάλλοντα που εκτελούν νέες και διαφορετικού τύπου αναλύσεις, όπως στα ερευνητικά εργαστήρια.
Ο προτεινόμενος αυτός credit based αλγόριθμος έχει ως στόχο την βελτιστοποίηση ως προς το μέσο χρόνο αναμονής των επιστημονικών υπολογιστικών διεργασιών στην ουρά. Επιπλέον όμως γίνεται προσπάθεια ώστε να μεγιστοποιηθεί η χρήση των διαθέσιμων πόρων του υπολογιστικού συστήματος ανά πάσα χρονική στιγμή.
Πιο αναλυτικά η διπλωματική εργασία επικεντρώνεται στην υλοποίηση μίας εφαρμογής η οποία:
1) παρέχει στον χρήστη τη δυνατότητα να εισάγει και να ξεκινά μια σύνθετη ανάλυση δεδομένων,
2) αναλύει την απόδοση διαφόρων αλγορίθμων χρονοπρογραμματισμού με την χρήση μετρικών απόδοσης,
3) υπολογίζει τους απαιτούμενους υπολογιστικούς πόρους και υλοποιεί τον χρονοπρογραμματισμό εκτέλεσης του αιτούμενου συνόλου εργασιών.
με τελικό στόχο να παρέχει μικρότερους χρόνους εξυπηρέτησης εκτελέσεων υπολογιστικών διαδικασιών ανάλυσης δεδομένων και επίλυσης επιστημονικών προβλημάτων.
Τα αποτελέσματα που προέκυψαν από την πειραματική διαδικασία είναι αρκετά ικανοποιητικά. Ο προτεινόμενος credit based αλγόριθμος επιτυγχάνει 2 έως 6 φορές μικρότερο μέσο χρόνο απόκρισης από τον ευρέως χρησιμοποιούμενο FCFS. Παράλληλα παρουσιάζει λίγο χειρότερη απόδοση από άλλους θεωρητικούς αλγόριθμους χρονοπρογραμματισμού (EASY (Ahuva, 2001), AMBF (Bing, 2013), CMBF (Bing, 2013) ), οι οποίοι όμως έχουν πολύ υψηλότερη πολυπλοκότητα και δεν είναι πρακτικά εφαρμόσιμοι, για ποικίλους λόγους, στα σημερινά cloud computing συστήματα. |
author2 |
Λυκοθανάσης, Σπυρίδων |
author_facet |
Λυκοθανάσης, Σπυρίδων Πέγκας, Ανδρέας |
format |
Thesis |
author |
Πέγκας, Ανδρέας |
author_sort |
Πέγκας, Ανδρέας |
title |
Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους |
title_short |
Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους |
title_full |
Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους |
title_fullStr |
Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους |
title_full_unstemmed |
Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους |
title_sort |
διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους |
publishDate |
2018 |
url |
http://hdl.handle.net/10889/10911 |
work_keys_str_mv |
AT penkasandreas diacheirisēpolyplokōnypologistikōndiergasiōnmechrēsēalgorithmouchronoprogrammatismouanathesēsporōnseypodomēypologistikounephous AT penkasandreas managingcomplexcomputingprocessesbyusingatimeschedulingalgorithmforallocatingresourcestocloudinfrastructure |
_version_ |
1771297322698801152 |
spelling |
nemertes-10889-109112022-09-05T20:43:45Z Διαχείριση πολύπλοκων υπολογιστικών διεργασιών με χρήση αλγορίθμου χρονοπρογραμματισμού ανάθεσης πόρων σε υποδομή υπολογιστικού νέφους Managing complex computing processes by using a time scheduling algorithm for allocating resources to cloud infrastructure Πέγκας, Ανδρέας Λυκοθανάσης, Σπυρίδων Παυλίδης, Γεώργιος Χατζηλυγερούδης, Ιωάννης Pegkas, Andreas Υπολογιστικό νέφος Χρονοπρογραμματισμός Κατανομή υπολογιστικών πόρων Cloud computing Time scheduling Resources allocation 004.678 2 Η υποδομή υπολογιστικού νέφους (cloud computing) αποτελεί μια νέα αναπτυσσόμενη τεχνολογία στον τομέα της πληροφορικής κατά την οποία η υπολογιστική ισχύς και η αποθήκευση δεδομένων μεταφέρεται από τον υπολογιστή γραφείου και τους φορητούς υπολογιστές σε μεγάλα κέντρα δεδομένων. Η ανάπτυξη του υπολογιστικού νέφους είναι πλέον εφικτή χάρη στην αυξανόμενη δυνατότητα πρόσβασης στο διαδίκτυο, τη μείωση του κόστους αποθήκευσης δεδομένων καθώς τη συνεχή βελτίωση του διαδικτυακού λογισμικού. Οι χρήστες έχουν τη δυνατότητα να προσαρμόσουν τις υπηρεσίες δυναμικά, ανά πάσα στιγμή, ώστε να καλύπτονται οι εκάστοτε ανάγκες, ενώ οι πάροχοι μπορούν να επεκτείνουν δυναμικά την υποδομή των μηχανημάτων με μεγαλύτερη ευκολία και χωρίς τη δημιουργία προβλημάτων. Επίσης, τα συνεχώς αυξανόμενα σε πλήθος δεδομένα τα οποία παράγονται από διάφορες πηγές, όπως είναι το διαδίκτυο και τα επιστημονικά πειράματα, έχουν δημιουργήσει μία τεράστια ποσότητα πολύπλοκων και διάχυτων ψηφιακών πληροφοριών. Η εξαγωγή χρήσιμων πληροφοριών από ψηφιακά δεδομένα μεγάλου όγκου απαιτεί έξυπνες και εύκολα επεκτάσιμες υπηρεσίες επεξεργασίας. Τα τελευταία χρόνια έχουν γίνει αρκετές προσπάθειες να οριστούν πλαίσια για την επίλυση του προβλήματος της παράλληλης εκτέλεσης διεργασιών πάνω σε cloud. Έχουν προταθεί διάφορες αρχιτεκτονικές και αλγόριθμοι των οποίων σκοπός είναι η καλύτερη διαχείριση των υπολογιστικών πόρων του cloud. Έχοντας γνώση της θεωρίας και μετά από μελέτη των υλοποιημένων εφαρμογών, σχετικών με τη διαχείριση πολύπλοκων υλοποιήσεων επιστημονικής ανάλυσης δεδομένων, η παρούσα μεταπτυχιακή εργασία έχει ως σκοπό την παρουσίαση και την εκτενή ανάλυση ενός καινοτόμου αλγόριθμου χρονοπρογραμματισμού επιστημονικών διεργασιών στο υπολογιστικό νέφος. Αυτός ο αλγόριθμος είναι βασισμένος σε ένα σύστημα βαθμολόγησης των εργασιών που βρίσκονται ανά πάσα χρονική στιγμή στην ουρά. Κάθε εργασία λαμβάνει ένα σύνολο από credits, τα οποία είναι ανάλογα του μεγέθους των υπολογιστικών απαιτήσεων της, τα οποία ελαττώνονται με την πάροδο του χρόνου. Προτεραιότητα δίνεται πάντοτε στις εργασίες με την μικρότερη βαθμολογία. Χαρακτηριστικό της προτεινόμενης προσέγγισης είναι ότι δεν απαιτείται η a-priori γνώση του χρόνου εκτέλεσης της κάθε εργασίας, καθιστώντας τον ιδανικό για περιβάλλοντα που εκτελούν νέες και διαφορετικού τύπου αναλύσεις, όπως στα ερευνητικά εργαστήρια. Ο προτεινόμενος αυτός credit based αλγόριθμος έχει ως στόχο την βελτιστοποίηση ως προς το μέσο χρόνο αναμονής των επιστημονικών υπολογιστικών διεργασιών στην ουρά. Επιπλέον όμως γίνεται προσπάθεια ώστε να μεγιστοποιηθεί η χρήση των διαθέσιμων πόρων του υπολογιστικού συστήματος ανά πάσα χρονική στιγμή. Πιο αναλυτικά η διπλωματική εργασία επικεντρώνεται στην υλοποίηση μίας εφαρμογής η οποία: 1) παρέχει στον χρήστη τη δυνατότητα να εισάγει και να ξεκινά μια σύνθετη ανάλυση δεδομένων, 2) αναλύει την απόδοση διαφόρων αλγορίθμων χρονοπρογραμματισμού με την χρήση μετρικών απόδοσης, 3) υπολογίζει τους απαιτούμενους υπολογιστικούς πόρους και υλοποιεί τον χρονοπρογραμματισμό εκτέλεσης του αιτούμενου συνόλου εργασιών. με τελικό στόχο να παρέχει μικρότερους χρόνους εξυπηρέτησης εκτελέσεων υπολογιστικών διαδικασιών ανάλυσης δεδομένων και επίλυσης επιστημονικών προβλημάτων. Τα αποτελέσματα που προέκυψαν από την πειραματική διαδικασία είναι αρκετά ικανοποιητικά. Ο προτεινόμενος credit based αλγόριθμος επιτυγχάνει 2 έως 6 φορές μικρότερο μέσο χρόνο απόκρισης από τον ευρέως χρησιμοποιούμενο FCFS. Παράλληλα παρουσιάζει λίγο χειρότερη απόδοση από άλλους θεωρητικούς αλγόριθμους χρονοπρογραμματισμού (EASY (Ahuva, 2001), AMBF (Bing, 2013), CMBF (Bing, 2013) ), οι οποίοι όμως έχουν πολύ υψηλότερη πολυπλοκότητα και δεν είναι πρακτικά εφαρμόσιμοι, για ποικίλους λόγους, στα σημερινά cloud computing συστήματα. Cloud computing is a new, fast growing technology in the field of informatics, according to which the computing power and data storage is transferred from desktop and notebooks to large data centers. Cloud computing development is feasible due to the increasing access to the Internet, reducing data storage costs as well as the continuous improvement of the web application. Users have the ability to adapt the services dynamically at any time, to meet the current needs, while providers can dynamically expand infrastructure equipment more easily and without facing any problems. Furthermore, a growing number of data, which are generated from various sources, such as the Internet and various scientific experiments, have created an enormous amount of complex and diffuse digital information. The extraction of useful information from large digital data requires smart and easily scalable processing services. In the recent years there have been several attempts to define the framework for resolving the problem of parallel execution processes on cloud. There have been proposed various architectures and algorithms whose purpose is to better manage the cloud computing resources. Having knowledge of the theory and after studying previously applied applications which are related to the management of complex scientific data analysis outputs, the present thesis aims at presenting and providing an extensive analysis of an innovative scheduling algorithm for scientific processes in the cloud. This algorithm is based on a crediting system of the scheduled works that are in the queue at any time. Each work is assigned a number of credits, which are proportionate to the size of its computational requirements, and are reduced over time. Priority is always given to the work with the lowest number of credits. The credit based algorithm that is proposed by this thesis is designed to optimize with respect to the average waiting time of scientific computing processes in line. Furthermore it is attempting to maximize the use of available resources of the computer system at any time. More specifically, the thesis focuses on the implementation of an application which: 1) gives the user the ability to import and starts a complex data analysis procedure, 2) analyzes the performance of various scheduling algorithms using specific metric values, 3) calculates the required computing resources and implements the scheduling execution of all work requested. The algorithm’s ultimate goal to provide smaller service times for the execution computational data analysis procedures and for the solving of scientific problems. The results obtained are quite satisfactory. The proposed credit based algorithm achieves 2 to 6 times less average response time than the widely used FCFS. At the same time, it presents a slightly worse performance than other theoretical scheduling algorithms ( EASY (Ahuva, 2001), AMBF (Bing, 2013), CMBF (Bing, 2013) ), which are much higher in complexity and are not practical for a variety of reasons in today's cloud computing systems. 2018-01-04T12:16:09Z 2018-01-04T12:16:09Z 2017-10-04 Thesis http://hdl.handle.net/10889/10911 gr 0 application/pdf |