Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark

Στις μέρες μας, η επιστήμη των υπολογιστών καλείται να λύσει ένα σημαντικό πρόβλημα που έκανε την εμφάνισή του τα τελευταία χρόνια. Όπως είναι φυσικό με την εξέλιξη της τεχνολογίας ο αριθμός των συσκευών που χρησιμοποιούν τον παγκόσμιο ιστό γίνεται ολοένα και μεγαλύτερος, καθώς το κόστος μειώνετα...

Πλήρης περιγραφή

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Κάντας, Αριστείδης
Άλλοι συγγραφείς: Σιούτας, Σπυρίδων
Μορφή: Thesis
Γλώσσα:Greek
Έκδοση: 2020
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/10889/13167
id nemertes-10889-13167
record_format dspace
institution UPatras
collection Nemertes
language Greek
topic Μεγάλα δεδομένα
Ταξινόμηση
Big data
Classification
AkNN
Cloud
spellingShingle Μεγάλα δεδομένα
Ταξινόμηση
Big data
Classification
AkNN
Cloud
Κάντας, Αριστείδης
Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark
description Στις μέρες μας, η επιστήμη των υπολογιστών καλείται να λύσει ένα σημαντικό πρόβλημα που έκανε την εμφάνισή του τα τελευταία χρόνια. Όπως είναι φυσικό με την εξέλιξη της τεχνολογίας ο αριθμός των συσκευών που χρησιμοποιούν τον παγκόσμιο ιστό γίνεται ολοένα και μεγαλύτερος, καθώς το κόστος μειώνεται και οι ανάγκες αυξάνονται. Φυσικό επακόλουθο αυτής της κατάστασης είναι η δημιουργία πολύ μεγάλου όγκου δεδομένων. Χρειάστηκε λοιπόν η ανάπτυξη νέας τεχνολογίας, έτσι ώστε ο μεγάλος αυτός όγκος δεδομένων να μπορεί να διαχειριστεί, παράλληλα και κατανεμημένα με σκοπό να αναλυθεί και να χρησιμοποιηθεί για την εξαγωγή πληροφοριών. Η ανάπτυξη του Cloud έπαιξε σημαντικό ρόλο στην βελτιστοποίηση της κατάστασης καθώς επιτρέπει την χρήση μεγάλης υπολογιστικής ισχύς για την επίτευξη αυτού του σκοπού. Μεγάλη πρόοδο στην ανάπτυξη τέτοιου είδους τεχνολογίας έχει κάνει η Google με την δημιουργία του MapReduce framework το οποίο είναι ένα προγραμματιστικό μοντέλο για την επεξεργασία αλλά και δημιουργία μεγάλου όγκου δεδομένων. Το MapReduce αποτέλεσε την βάση πάνω στην οποία αναπτύχθηκε ένα ακόμα μοντέλο, το Apache Spark με μεγαλύτερες δυνατότητες, κυρίως όσον αφορά την διαχείριση batch δεδομένων αλλά και δεδομένων ροής. Ο σκοπός της παρούσας διπλωματικής είναι η υλοποίηση του ΑkNN (All-k-Nearest- Neighbors) αλγορίθμου στο προγραμματιστικό περιβάλλον Apache Spark με χρήση της γλώσσας προγραμματισμού Scala. Ο ΑkNN αποτελεί αλγόριθμο κατηγοριοποίησης. Συγκεκριμένα κατηγοριοποιεί ένα στοιχείο βάση των k κοντινότερων γειτόνων του. Ακριβώς για αυτόν τον λόγο αποτελεί ισχυρό εργαλείο κυρίως για εφαρμογές που αφορούν γεωγραφικά δεδομένα. Επιπλέον η χρήση του Apache Spark επιτρέπει την ομαλή και ασφαλή παραλληλοποίηση του αλγορίθμου με σκοπό την βέλτιστη κατηγοριοποίηση μεγάλου όγκου δεδομένων. Τέλος η χρήση της γλώσσας προγραμματισμού Scala, γίνεται καθώς είναι υψηλού επιπέδου, συνδυάζει την αντικειμενοστρέφια και τον συναρτησιακό προγραμματισμό, καθώς επίσης αποτελεί την γλώσσα στην οποία είναι γραμμένο το Apache Spark.
author2 Σιούτας, Σπυρίδων
author_facet Σιούτας, Σπυρίδων
Κάντας, Αριστείδης
format Thesis
author Κάντας, Αριστείδης
author_sort Κάντας, Αριστείδης
title Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark
title_short Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark
title_full Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark
title_fullStr Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark
title_full_unstemmed Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark
title_sort μελέτη-ανάπτυξη aknn αλγορίθμου σε περιβάλλον spark
publishDate 2020
url http://hdl.handle.net/10889/13167
work_keys_str_mv AT kantasaristeidēs meletēanaptyxēaknnalgorithmouseperiballonspark
AT kantasaristeidēs implementantionofaknnalgorithminsparkenviroment
_version_ 1771297171428081664
spelling nemertes-10889-131672022-09-05T06:57:18Z Μελέτη-Ανάπτυξη AkNN αλγορίθμου σε περιβάλλον Spark Implementantion of AkNN algorithm in Spark enviroment Κάντας, Αριστείδης Σιούτας, Σπυρίδων Σιούτας, Σπυρίδων Μακρής, Χρήστος Τσώλης, Δημήτριος Kantas, Aristidis Μεγάλα δεδομένα Ταξινόμηση Big data Classification AkNN Cloud Στις μέρες μας, η επιστήμη των υπολογιστών καλείται να λύσει ένα σημαντικό πρόβλημα που έκανε την εμφάνισή του τα τελευταία χρόνια. Όπως είναι φυσικό με την εξέλιξη της τεχνολογίας ο αριθμός των συσκευών που χρησιμοποιούν τον παγκόσμιο ιστό γίνεται ολοένα και μεγαλύτερος, καθώς το κόστος μειώνεται και οι ανάγκες αυξάνονται. Φυσικό επακόλουθο αυτής της κατάστασης είναι η δημιουργία πολύ μεγάλου όγκου δεδομένων. Χρειάστηκε λοιπόν η ανάπτυξη νέας τεχνολογίας, έτσι ώστε ο μεγάλος αυτός όγκος δεδομένων να μπορεί να διαχειριστεί, παράλληλα και κατανεμημένα με σκοπό να αναλυθεί και να χρησιμοποιηθεί για την εξαγωγή πληροφοριών. Η ανάπτυξη του Cloud έπαιξε σημαντικό ρόλο στην βελτιστοποίηση της κατάστασης καθώς επιτρέπει την χρήση μεγάλης υπολογιστικής ισχύς για την επίτευξη αυτού του σκοπού. Μεγάλη πρόοδο στην ανάπτυξη τέτοιου είδους τεχνολογίας έχει κάνει η Google με την δημιουργία του MapReduce framework το οποίο είναι ένα προγραμματιστικό μοντέλο για την επεξεργασία αλλά και δημιουργία μεγάλου όγκου δεδομένων. Το MapReduce αποτέλεσε την βάση πάνω στην οποία αναπτύχθηκε ένα ακόμα μοντέλο, το Apache Spark με μεγαλύτερες δυνατότητες, κυρίως όσον αφορά την διαχείριση batch δεδομένων αλλά και δεδομένων ροής. Ο σκοπός της παρούσας διπλωματικής είναι η υλοποίηση του ΑkNN (All-k-Nearest- Neighbors) αλγορίθμου στο προγραμματιστικό περιβάλλον Apache Spark με χρήση της γλώσσας προγραμματισμού Scala. Ο ΑkNN αποτελεί αλγόριθμο κατηγοριοποίησης. Συγκεκριμένα κατηγοριοποιεί ένα στοιχείο βάση των k κοντινότερων γειτόνων του. Ακριβώς για αυτόν τον λόγο αποτελεί ισχυρό εργαλείο κυρίως για εφαρμογές που αφορούν γεωγραφικά δεδομένα. Επιπλέον η χρήση του Apache Spark επιτρέπει την ομαλή και ασφαλή παραλληλοποίηση του αλγορίθμου με σκοπό την βέλτιστη κατηγοριοποίηση μεγάλου όγκου δεδομένων. Τέλος η χρήση της γλώσσας προγραμματισμού Scala, γίνεται καθώς είναι υψηλού επιπέδου, συνδυάζει την αντικειμενοστρέφια και τον συναρτησιακό προγραμματισμό, καθώς επίσης αποτελεί την γλώσσα στην οποία είναι γραμμένο το Apache Spark. Nowadays, computer science is called upon to solve a major problem that has emerged in recent years. As technology evolves, the number of devices that use the web is increasing as costs decrease and needs increase. The consequence of this situation is that a very large amount of data is generated. For this reason, there is the need to develop new technology in order to be able to manage effectively and distributed large amounts of data for the purpose of analyzing it and using it to extract information. The development of the Cloud has played an important role in optimizing the situation as it allows the use of high computing power to achieve this goal. Google has made great progress in developing such technology by creating the MapReduce framework, which is a programming model for processing and generating large amounts of data. MapReduce was the basis on which another model was developed, Apache Spark with greater capabilities, mainly in batch and stream data management. The purpose of this thesis is to implement the AkNN algorithm in the Apache Spark programming environment using the Scala programming language. AkNN is a categorization algorithm. In particular it categorizes a base element of its closest neighbors. For this reason it is a powerful tool mainly for geographical applications. In addition, the use of Apache Spark enables smooth and secure parallelism of the algorithm to better categorize large volumes of data. Last but not least, the Scala programming language is as high-level as possible, combining object-oriented and functional programming. It is also the language in which Apache Spark is written which is something that provides a lot of benefits. 2020-02-06T22:02:00Z 2020-02-06T22:02:00Z 2020-01-16 Thesis http://hdl.handle.net/10889/13167 gr 0 application/pdf application/octet-stream