Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13584
Title: Σχεδιασμός Και Υλοποίηση Μηχανισμού Ενοποίησης Της Μη Σχεσιακής Βάσης Δεδομένων Mongodb Με Υπηρεσίες Διαχειριστή Ταυτόχρονων Συνδιαλλαγών
Authors: Ανδρέας Σχοινάς
Βαρβαρίγου Θεοδώρα
Keywords: βάσεις δεδομένων
απομόνωση στιγμιότυπου
έλεγχος συγχρονικότητας πολλαπλών εκδόσεων
mongodb
μη σχεσιακές βάσεις δεδομένων
διαχειριστής συναλλαγών
Issue Date: 17-Oct-2017
Abstract: Η MongoDB, είναι μία από τις πιο ευρέως διαδεδομένες NoSQL βάσεις δεδομένων, η οποία χρησιμοποιεί ένα ευέλικτο μοντέλο εγγράφων για την αποθήκευση των δεδομένων, το οποίο προσεγγίζει το πρότυπο JSON. Το μοντέλο αυτό, υποστηρίζει δεδομένα σε μορφή κλειδιού - τιμής και εκτός από τα συνηθισμένα είδη δεδομένων (τα οποία είναι διαθέσιμα στην μεγάλη πλειοψηφία των δημοφιλών γλωσσών προγραμματισμού), σαν εγγραφές, μπορεί επιπλέον να δεχθεί πίνακες, δυαδικά δεδομένα, ακόμα και άλλα έγγραφα. Το γεγονός αυτό προσφέρει τρομερή ευελιξία στους χρήστες, καθώς καθιστά την αλλαγή του μοντέλου δεδομένων, το ίδιο εύκολη και γρήγορη με την μεταβολή των ίδιων των εφαρμογών.Η προσαρμοστικότητα που προσφέρει λόγω του δυναμικού της σχήματος και της αντικειμενοστραφούς της φύσης καθιστούν την MongoDB ιδανική για εφαρμογές και αναλύσεις πραγματικού χρόνου. Έχει καθιερωθεί, συνεπώς, ως βάση δεδομένων γενικής χρήσης με πληθώρα εφαρμογών σε τομείς όπως τα ηλεκτρονικά καταστήματα, οι εφαρμογές για κινητά, εφαρμογές υπολογιστικού νέφους, αλλά και οι εφαρμογές γεωχωρικής φύσεως. Εφαρμογές της MongoDB, επίσης, περιλαμβάνουν αποθήκευση και διαχείριση μεγάλων δεδομένων (Big Data), καθώς και διαχείριση περιεχομένου και κατασκευή υποδομών για κοινωνικά δίκτυα και κινητά.Παρά το ολοένα και αυξανόμενο πλήθος εφαρμογών της MongoDB, η εφαρμογή της σε τομείς συναλλαγών (Transactions) είναι ακόμα σε εμβρυακό στάδιο. Το γεγονός, αυτό, παρατηρείται στις περισσότερες NoSQL βάσεις δεδομένων και συμβαίνει κυρίως λόγω της έλλειψης απαραίτητου ενδιάμεσου λογισμικού, που να επιτυγχάνει τον έγκυρο και αποδοτικό συγχρονισμό σε περιπτώσεις ταυτόχρονων συναλλαγών. Η επίλυση τυχών διενέξεων μπορεί να επιτευχθεί με την υλοποίηση ενός απλού συστήματος κλειδώματος, κατά το οποίο μόνο μία συναλλαγή θα επιτρέπεται να αλλάζει τα δεδομένα της βάσης την εκάστοτε στιγμή, ενώ οποιαδήποτε άλλη επιθυμεί επίσης να αλλάξει κάποιο δεδομένο θα πρέπει να περιμένει. Ωστόσο, η υλοποίηση αυτή υστερεί υπερβολικά σε θέμα ταχύτητας, ειδικά όταν εφαρμοστεί σε μεγάλα συστήματα, όπου τα δεδομένα της βάσης διαμοιράζονται σε πολλούς κόμβους και προσπελάζονται από χιλιάδες χρήστες.Η συγκεκριμένη διπλωματική εργασίας έχει ως σκοπό τον σχεδιασμό και την υλοποίηση μηχανισμού διαχείρισης ταυτόχρονων συναλλαγών προς μία βάση MongoDB, ο οποίος ελέγχει για τυχόν διενέξεις και στην συνέχεια αναθέτει χρονοσφραγίδες (timestamps) στις συναλλαγές καθιστώντας τες ικανές να δρομολογηθούν. Επιπλέον, σχεδιάστηκε και δημιουργήθηκε μία διεπαφή, με χρήση του συστήματος σειριοποίησης δεδομένων, Apache Avro, πάνω σε ήδη υλοποιημένο σύστημα συναλλαγών σε Mongo, η οποία μπορεί δυνητικά να χρησιμοποιηθεί, ώστε να ενσωματωθεί οποιοσδήποτε αντίστοιχος μηχανισμός για την διαχείριση των ταυτόχρονων συναλλαγών.
URI: http://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13584
Appears in Collections:Διπλωματικές Εργασίες - Theses

Files in This Item:
File SizeFormat 
DT2017-0242.pdf1.71 MBAdobe PDFView/Open


Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.