Ανάπτυξη κατανεμημένου συστήματος σε υπολογιστικό νέφος
Development of a cloud oriented distributed system
Πτυχιακή εργασία
Author
Ευθυμιάδης, Αλέξανδρος
Χαλδαίος, Ιωάννης
Date
2018-06-19Advisor
Γιαννακόπουλος, ΠαναγιώτηςSubject
TPSH::Επιστήμη Υπολογιστών::Βάσεις Δεδομένων ; TPSH::Επιστήμη Υπολογιστών::Επιστήμη Υπολογιστή (Software)Keywords
Κατανεμημένα συστήματα ; Μη-σχεσιακές βάσεις δεδομένων ; Java ; Εικονοποίηση ; Ταυτοχρονισμός πολλαπλών εκδόσεων ; Docker ; MongoDB ; Υπολογιστικό νέφος ; Αξιολόγηση απόδοσης συστήματοςAbstract
Με την συνεχώς αυξανόμενη εξέλιξη της τεχνολογίας, τα κατανεμημένα συστήματα γίνονται ολοένα και πιο διαδεδομένα, διότι με αυτή τη τεχνολογία, η επεξεργασία των δεδομένων κατανέμεται σε πολλούς υπολογιστές και δε περιορίζεται σε μία μόνο μηχανή. Πρόκειται για ένα τεράστιο και σύνθετο πεδίο έρευνας, στον τομέα της πληροφορικής. Ο στόχος αυτής της εργασίας είναι η μελέτη, ο σχεδιασμός και η υλοποίηση ενός καταναμημένου συστήματος με τη βοήθεια της τεχνολογίας sharding, που μας παρέχει η μη-σχεσιακή βάση δεδομένων, με προσανατολισμό εγγράφων, ΜongoDB. Tέλος, γίνεται μία σύγκριση των αποτελεσμάτων από τη χρήση των διάφορων μεθόδων sharding, Ranged Based Sharding και Hashed Ranged Sharding, και ποιο είναι το “σωστό” shard κλειδί.
Abstract
With the ever-growing technological expansion of the world, distributed systems are becoming more and more widespread because they’re trying to distribute the load of a system, to multiple computers instead of one. Distributed system are a vast and complex field of study in computer science. The purpose of this thesis is the research, design and development of a distributed system with the help of the NoSQL, document-oriented database, MongoDB, by using the Sharding technology. Finally we are doing a comparison of the different methods of sharding that MongoDB offers, Ranged Based Sharding and Hashed Ranged Sharding and what is the best shard key to use.