Περίληψη
Τα τελευταία χρόνια η ανάγκη για γρήγορη και αξιόπιστη αποθήκευση δεδομένων σε διάφορα περιβάλλοντα αποθήκευσης έχει καταστεί ιδιαίτερα σημαντική. Πιο συγκεκριμένα, τα εταιρικά περιβάλλοντα αποθήκευσης επιβάλλουν τη χρήση συστημάτων αποθήκευσης τα οποία πρέπει να προσφέρουν ιδιαίτερα υψηλούς ρυθμούς αποθήκευσης και ανάκτησης δεδομένων καθώς επίσης και αδιάλειπτη λειτουργία ανεξάρτητα από το αν λαμβάνουν χώρα αστοχίες λογισμικού ή υλικού. Τέτοιου είδους αστοχίες δεν πρέπει να επηρεάζουν τη λειτουργία του συστήματος αποθήκευσης για το σύνολο των χρηστών και κυρίως δεν πρέπει να καθιστούν την ανάκτηση μέρους των δεδομένων αδύνατη για κανένα χρήστη. Επιπλέον, η ανάπτυξη του Διαδικτύου έχει δημιουργήσει νέες προοπτικές αναφορικά με την αποθήκευση και το διαμοιρασμό δεδομένων σε ευρείας κλίμακας συστήματα αποθήκευσης. Στα πλαίσια της παρούσας διατριβής ασχολούμαστε με εταιρικά περιβάλλοντα αποθήκευσης καθώς επίσης και με δίκτυα ευρείας περιοχής, όπως παραδείγματος χάριν τα συνεργατικά ασύρμα ...
Τα τελευταία χρόνια η ανάγκη για γρήγορη και αξιόπιστη αποθήκευση δεδομένων σε διάφορα περιβάλλοντα αποθήκευσης έχει καταστεί ιδιαίτερα σημαντική. Πιο συγκεκριμένα, τα εταιρικά περιβάλλοντα αποθήκευσης επιβάλλουν τη χρήση συστημάτων αποθήκευσης τα οποία πρέπει να προσφέρουν ιδιαίτερα υψηλούς ρυθμούς αποθήκευσης και ανάκτησης δεδομένων καθώς επίσης και αδιάλειπτη λειτουργία ανεξάρτητα από το αν λαμβάνουν χώρα αστοχίες λογισμικού ή υλικού. Τέτοιου είδους αστοχίες δεν πρέπει να επηρεάζουν τη λειτουργία του συστήματος αποθήκευσης για το σύνολο των χρηστών και κυρίως δεν πρέπει να καθιστούν την ανάκτηση μέρους των δεδομένων αδύνατη για κανένα χρήστη. Επιπλέον, η ανάπτυξη του Διαδικτύου έχει δημιουργήσει νέες προοπτικές αναφορικά με την αποθήκευση και το διαμοιρασμό δεδομένων σε ευρείας κλίμακας συστήματα αποθήκευσης. Στα πλαίσια της παρούσας διατριβής ασχολούμαστε με εταιρικά περιβάλλοντα αποθήκευσης καθώς επίσης και με δίκτυα ευρείας περιοχής, όπως παραδείγματος χάριν τα συνεργατικά ασύρματα μητροπολιτικά. Η βασική συνεισφορά της εργασίας συνοψίζεται στη σχεδίαση, υλοποίηση και πειραματική αξιολόγηση ενός συστήματος αποθήκευσης δεδομένων, το οποίο βασίζεται στις βασικές ιδιότητες ενός δομημένου δικτύου ομότιμων κόμβων και σε χαμηλού επιπέδου, αναφορικά με τις λειτουργίες εισόδου/εξόδου δεδομένων ενός λειτουργικού συστήματος, μηχανισμούς αποθήκευσης δεδομένων. Πιο συγκεκριμένα, οι πελάτες του προτεινόμενου συστήματος υλοποιούνται ως χαμηλού επιπέδου λογισμικό, το οποίο φορτώνεται στον πυρήνα ενός λειτουργικού συστήματος και υποστηρίζει αποθήκευση και ανάκτηση δεδομένων σε επίπεδο block. Οι κόμβοι αποθήκευσης του συστήματος συνδέονται σε ένα δομημένο δίκτυο ομότιμων κόμβων πάνω στο οποίο υλοποιείται ένας κατανεμημένος πίνακας κατακερματισμού. Ο πίνακας αυτός παρέχει μια απλή διεπαφή για την αποθήκευση και ανάκτηση δεδομένων στους πελάτες τους συστήματος. Επικουρική συνεισφορά της παρούσας διατριβής αποτελεί και η υλοποίηση ενός ανοικτού συστήματος παρακολούθησης δεικτών ποιότητας υπηρεσίας σε συνεργατικά ασύρματα μητροπολιτικά δίκτυα, το οποίο είναι συμπληρωματικό του συστήματος αποθήκευσης στα αντίστοιχα περιβάλλοντα. Τα βασικά χαρακτηριστικά του προτεινόμενου συστήματος είναι τα παρακάτω: · Υλοποίηση πελατών σε επίπεδο block που επιτρέπει την αποδέσμευση του συστήματος αποθήκευσης από την πολυπλοκότητα της λειτουργίας ενός συστήματος αρχείων. · Υπάρχοντα (τοπικής και διαμοιραζόμενης πρόσβασης) αλλά και νέα συστήματα αρχείων μπορούν να λειτουργήσουν πάνω από το προτεινόμενο σύστημα. · Οι κόμβοι αποθήκευσης είναι εντελώς αποκεντρικοποιημένοι και μπορούν να λειτουργούν ο ένας ανεξάρτητα από τον άλλο. · Δυνατότητα κλιμάκωσης αναφορικά με τον υποστηριζόμενο αριθμό κόμβων αποθήκευσης, όπως αυτή υποστηρίζεται εν γένει από τα δομημένα δίκτυα ομότιμων κόμβων. · Δυνατότητα κλιμάκωσης αναφορικά με τους υποστηριζόμενους πελάτες και το διαθέσιμο χώρο αποθήκευσης. · Εύκολη διαχείριση και παρακολούθηση παραμέτρων που επηρεάζουν τη λειτουργία των κόμβων αποθήκευσης και των πελατών του συστήματος. · Υποστήριξη πλεονασμού των δεδομένων για συγκεκριμένους πελάτες. · Γρήγορη και διαφανής ανάκαμψη του συστήματος από αστοχίες υλικού και λογισμικού με τη χρήση ημερολογίων. · Αυτόματη κατανομή φόρτου στους κόμβους αποθήκευσης του δικτύου. Στην παρούσα διατριβή παρουσιάζονται και αξιολογούνται δύο σενάρια λειτουργίας του προτεινόμενου συστήματος. Στην πρώτη περίπτωση το σύστημα εγκαθίσταται σε μια συστάδα υπολογιστών (computer cluster) και αξιολογείται η απόδοση του σε ένα περιβάλλον αποθήκευσης υψηλής απόδοσης. Τα αποτελέσματα της πειραματικής ανάλυσης δείχνουν την ιδιαίτερα ικανοποιητική απόδοση του συστήματος αναφορικά με την αποθήκευση και ανάκτηση δεδομένων, κάτω από διάφορες μορφές προσπέλασης (access patterns), καθώς επίσης και τη δυνατότητα κλιμάκωσής του σε επίπεδα που το διαθέσιμο εύρος ζώνης εξαντλείται. Στη δεύτερη περίπτωση παρουσιάζονται οι δυνατότητες χρήσης του προτεινόμενου συστήματος σε συνεργατικά ασύρματα μητροπολιτικά δίκτυα (wireless community networks) και αξιολογείται η απόδοση του μέσω της εξομοίωσης ενός τέτοιου συστήματος. Αναφορικά με τα συνεργατικά μητροπολιτικά δίκτυα, στην παρούσα διατριβή συνεισφέρουμε και την υλοποίηση ενός ανοικτού συστήματος παρακολούθησης και μέτρησης παραμέτρων που αφορούν στην ποιότητα των προσφερόμενων δικτυακών υπηρεσιών, το οποίο είναι συμπληρωματικό της λειτουργίας του συστήματος αποθήκευσης.
περισσότερα
Περίληψη σε άλλη γλώσσα
The ideal storage system is globally accessible, always available, provides unlimited performance and capacity for an unlimited number of clients, requires no management and can be applied to any storage environment. Over the last twenty years great effort has been made by the research community to design and evaluate storage systems that approximate the ideal one. Notable innovations include hardware-based storage systems, distributed block-based storage systems, remote and distributed file systems. The storage systems deployed so far are tailored for specific storage environments. More specifically, hardware-based storage systems are very expensive in terms of deployment and administration costs, while they do not scale well as the demand for more storage space and storage servers grows. Distributed file systems use dedicated metadata servers that accessed during every file operation resulting to possible deficiencies and bottlenecks. Moreover, they cannot support high performance en ...
The ideal storage system is globally accessible, always available, provides unlimited performance and capacity for an unlimited number of clients, requires no management and can be applied to any storage environment. Over the last twenty years great effort has been made by the research community to design and evaluate storage systems that approximate the ideal one. Notable innovations include hardware-based storage systems, distributed block-based storage systems, remote and distributed file systems. The storage systems deployed so far are tailored for specific storage environments. More specifically, hardware-based storage systems are very expensive in terms of deployment and administration costs, while they do not scale well as the demand for more storage space and storage servers grows. Distributed file systems use dedicated metadata servers that accessed during every file operation resulting to possible deficiencies and bottlenecks. Moreover, they cannot support high performance enterprise applications which access the underlying storage infrastructure directly bypassing the caching mechanism provided by the operating system. The client-server block devices proposed so far suffer from scalability issues, since a single server keeps all the available storage space. On the other hand, distributed block-based storage systems overcome this problem albeit they utilize global data structured that must be maintained across all storage nodes. This fact results to limited scalability because the basic parameters of these systems must be statically assigned when the system is initiated. Different storage environments present great differentiation, in terms of system requirements and constraints that must be taken into account when designing a storage infrastructure. For instance, enterprise storage systems should support high I/O throughput, system resilience even after catastrophic failures, data reliability as well as low deployment, administration and maintenance costs. On the other hand, I/O performance would not be the first priority of a wide-area cooperative storage infrastructure, since performance in such environments is bounded by the maximum available bandwidth of each client. The proposed approach is based on the combination of block-based storage clients, which are implemented as low-level kernel modules, with the special properties that peer-to-peer overlay networks can provide. Following this approach, we argue that an overlay network, which acts as a generic storage infrastructure available to an arbitrary number of clients, can be deployed in every target storage environment. Minimum tuning of the overlay network parameters allows the direct adoption of such an approach in these environments, while the desirable system properties are maintained in acceptable levels. Our approach has been evaluated in a computer cluster and in an emulated wide-area wireless network. The main contributions of this thesis are: · A thorough analysis of the design requirements that a distributed storage system should satisfy so that it can provide an efficient solution when deployed in high performance clusters and large scale networks. · The design and the open source implementation of such a system. · An extensive evaluation of the proposed system. · Regarding wide area cooperative environments, like a wireless community network, we have also contributed an implementation of an open source system for measuring QoS indicators. This system complements the storage system. The experimental evaluation of our system indicates its viability in both cluster and wide-area storage environments. More specifically, in a cluster storage environment we show that the proposed system can perform equally to well-known distributed storage systems, while it behaves exceptionally for several access patterns, like direct I/O. In wide-area environments we prove that our system can saturate clients’ links for both read and write I/O patterns even in high latency network infrastructures, due to its ability to parallelize, when possible, the I/O procedure.
περισσότερα