Η συνέπεια δεδομένων σημαίνει ότι τα ίδια δεδομένα φαίνονται ίδια παντού. Η διεύθυνση ενός πελάτη στο σύστημα χρέωσης ταιριάζει με τη διεύθυνση στο σύστημα αποστολής. Η καταμέτρηση αποθεμάτων στην αποθήκη ταιριάζει με την καταμέτρηση στον ιστότοπο. Όταν τα συστήματα διαφωνούν, οι αποφάσεις είναι λανθασμένες. Οι παραγγελίες αποστέλλονται σε παλιές διευθύνσεις. Οι πελάτες αγοράζουν προϊόντα που δεν είναι σε απόθεμα. Η συνέπεια δεν είναι προαιρετική για συστήματα που εξαρτώνται το ένα από το άλλο.
Τα κατανεμημένα συστήματα δυσκολεύουν τη συνέπεια. Τα δεδομένα που αναπαράγονται σε πολλαπλούς διακομιστές μπορεί να μην είναι συγχρονισμένα. Ένα διαμέρισμα δικτύου απομονώνει μια περιοχή από μια άλλη. Και οι δύο περιοχές δέχονται εγγραφές. Όταν το διαμέρισμα διορθωθεί, τα δεδομένα έρχονται σε διένεξη. Το θεώρημα CAP λέει ότι μπορείτε να έχετε συνέπεια, διαθεσιμότητα και ανοχή διαμερισμάτων, αλλά όχι και τα τρία ταυτόχρονα. Οι περισσότερες κατανεμημένες βάσεις δεδομένων επιλέγουν τη διαθεσιμότητα και την τελική συνέπεια. Αυτό σημαίνει ότι τα δεδομένα συγκλίνουν με την πάροδο του χρόνου, αλλά υπάρχει ένα παράθυρο όπου διαφορετικοί κόμβοι βλέπουν διαφορετικές τιμές. Η ισχυρή συνέπεια απαιτεί συντονισμό, ο οποίος κοστίζει καθυστέρηση. Η επιλογή εξαρτάται από την εφαρμογή. Ένα τραπεζικό καθολικό χρειάζεται ισχυρή συνέπεια. Μια ροή μέσων κοινωνικής δικτύωσης μπορεί να ανεχθεί την τελική συνέπεια. Η σωστή απάντηση δεν είναι καθολική. Εξαρτάται από το τι σπάει όταν τα δεδομένα διαφωνούν.
Μοντέλα συνέπειας
- Ισχυρό — όλοι οι κόμβοι βλέπουν τα ίδια δεδομένα αμέσως
- Τελικά — οι κόμβοι συγκλίνουν με την πάροδο του χρόνου
- Οι αιτιώδεις — σχετικές επεμβάσεις εξετάζονται με τη σειρά
- Διαβάστε τα κείμενά σας — βλέπετε αμέσως τις δικές σας ενημερώσεις
Η συνέπεια είναι ένα φάσμα. Το ερώτημα είναι πόση ασυνέπεια μπορεί να ανεχθεί η εφαρμογή πριν χαλάσει.
Comments
No comments yet. Be the first to share a thought.
Leave a comment