Μαθήματα Πληροφορικής & Προγραμματισμού

Ο όρος database synchronization στα συστήματα αποθήκευσης

Ο όρος database synchronization στα συστήματα αποθήκευσης δεδομένων είναι η διαδικασία παγίωσης συνοχής των δεδομένων ανάμεσα σε δύο ή περισσότερες βάσεις δεδομένων, με αυτοματοποιημένες διαδικασίες αντιγραφής των μεταβολών από και προς τα μέλη της μονάδας διαχείρισης. Η επίτευξη αρμονικότητας και ταυτοποίησης των δεδομένων πρέπει να πραγματοποιείται διαρκώς. Η εξόρυξη δεδομένων από την πηγή (master) και η διακίνησή τους προς τον προορισμό (slave) αποτελεί την πιο απλή διαδικαστικά λειτουργία του συστήματος αποθήκευσης.

Ο συγχρονισμός καθορίζεται να πραγματοποιείται βάσει κάποιων προτύπων, τα οποία έχουν παγιωθεί για τη δημιουργία αντιγράφων (replication) δεδομένων. Γενικότερα ο όρος replication (replica: αντίγραφο) στην Πληροφορική αναφέρεται στην κοινή χρήση πληροφορίας προκειμένου να διασφαλίζεται η συνοχή μεταξύ απομακρυσμένων πόρων, όπως software ή hardware τμημάτων συστήματος επικοινωνίας/ βάσεων δεδομένων. Βασικοί στόχοι είναι η βελτιστοποίηση της αξιοπιστίας, της ανθεκτικότητας των συστημάτων σε σφάλματα και της προσβασιμότητας στην περιεχόμενη πληροφορία. Συγκεκριμένα στο  replication των βάσεων δεδομένων, η master database θεωρείται η  επίσημη πηγή και κατ’ επέκταση οι slave βάσεις συγχρονίζονται με αυτήν.

Ο όρος database synchronization στα συστήματα αποθήκευσης: MASTER – SLAVE MODEL

Ένα μοντέλο replication στη δικτύωση υπολογιστών είναι το μοντέλο Master- Slave και αποτελεί πρωτόκολλο επικοινωνίας μεταξύ των συνδεόμενων μελών. Σύμφωνα με αυτό, μία συσκευή ή διαδικασία κατέχει μονόδρομα τον έλεγχο μίας ή περισσότερων συσκευών. Στα περισσότερα συστήματα ο Master επιλέγεται από μία ομάδα εκλέξιμων συσκευών, καθιστώντας όλες τις υπόλοιπες πλέον στο ρόλο του Slave αυτού.

Το μοντέλο Master- Slave χρησιμοποιείται για σκοπούς κοινής χρήσης δεδομένων ή πληροφορίας, όπου δύο πανομοιότυπες μηχανές συνδεδεμένες σε δύο διαφορετικούς δίσκους λειτουργούν ως ζεύγος για τη διεκπεραίωση κοινού φόρτου εργασίας.  Η μία εξ αυτών ορίζεται ως master και ρυθμίζεται να λειτουργεί σε κατάσταση speed-control. Η άλλη ορίζεται ως slave  και λειτουργεί σε κατάσταση torque-control (επηρεάζεται από κάθε transaction που εκτελείται στην πρώτη). Εφόσον η σχέση Master – Slave έχει οριστικοποιηθεί, η κατεύθυνση του ελέγχου είναι πάντοτε από τον master προς τον/ τους slave/ slaves.

Ο όρος database synchronization στα συστήματα αποθήκευσης: MULTI – MASTER  MODEL

Ένα άλλο σύνηθες μοντέλο replication στη δικτύωση υπολογιστών είναι το μοντέλο Multi- Master. Τα δεδομένα επιτρέπεται να αποθηκεύονται σε μία ομάδα υπολογιστών, η οποία ενημερώνεται από οποιοδήποτε μέλος της λογικής μονάδας.

Σε αυτήν την περίπτωση όλα τα μέλη ανταποκρίνονται στα αιτήματα των  clients.  Το σύστημα Multi- Master διαχειρίζεται και διαμοιράζει στα μέλη του μοντέλου κάθε αλλαγή που έχει προκύψει στα δεδομένα κάθε μέλους προς όλα τα υπόλοιπα. Επιλύει επίσης πιθανές συγκρούσεις (conflicts) από ταυτόχρονες μεταβολές σε δεδομένα από διαφορετικά μέλη της ομάδας. Ο πρωταρχικός στόχος για την εφαρμογή ενός Multi-Master μοντέλου είναι η ανάγκη για διαθεσιμότητα των δεδομένων, ταυτόχρονα με την αύξηση της ταχύτητας απόκρισης του server.

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

Ο όρος database synchronization στα συστήματα αποθήκευσης: MULTI – MASTER  vs MASTER – SLAVE MODEL

Το Multi- Master replication  model έρχεται σε αντίθεση με το Master- Slave  model, καθότι στο τελευταίο, μόνο ένα και μοναδικό μέλος της ομάδας έχει καθοριστεί ως  master. Ο master είναι ο μόνος με δικαιώματα μεταβολής των δεδομένων και ενημέρωσης των υπολοίπων. Στην περίπτωση που κάποιο μέλος slave θελήσει να μεταβάλει τα δεδομένα, χρειάζεται πρωτίστως να έχει την έγκριση του master του.

Τα δικαιώματα ενημέρωσης (update) βρίσκονται σε ένα μόνο σημείο και ο έλεγχος των μελών είναι μονομερής, γεγονός που καθιστά το μοντέλο λιγότερο ευέλικτο σε σχέση με το Multi-Master. Ο master είναι ο μόνος με δικαιώματα εξυπηρέτησης αιτημάτων από τους clients. Σε πιθανή αποτυχία του, υπάρχει καθυστέρηση έως ότου ένας slave αντιγράψει εξολοκλήρου τον master προκειμένου να πάρει τη θέση του.

Στον αντίποδα των πλεονεκτημάτων του μοντέλου multi- master απέναντι σε σφάλματα, το μοντέλο master- slave καθιστά ευκολότερη την ακέραια συνοχή μεταξύ των μελών. H αλήθεια είναι ότι τα περισσότερα Multi-Master συστήματα δε διέπονται από πλήρη συνοχή, καθώς η ενημέρωση γίνεται ασύγχρονα και παραβιάζονται οι αρχές του ACID ( δες εδώ ). Η πολυπλοκότητα είναι αναπόφευκτη και ο λανθάνων χρόνος διακίνησης των δεδομένων αποτελούν ανασταλτικούς παράγοντες στο χειρισμό. Καθώς αυξάνονται οι κόμβοι, η επίλυση συγκρούσεων ανάμεσα στους πολλαπλούς masters καθίσταται ακόμα πιο δύσκολη.

Αφήστε ένα Σχόλιο

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

Αυτός ο ιστότοπος χρησιμοποιεί το Akismet για να μειώσει τα ανεπιθύμητα σχόλια. Μάθετε πώς υφίστανται επεξεργασία τα δεδομένα των σχολίων σας.