Προγραμματισμός

Πώς επιτυγχάνει η Aerospike χαμηλό λανθάνοντα χρόνο και ισχυρή συνέπεια σε πολλούς ιστότοπους

Στη σημερινή παγκόσμια ψηφιακή οικονομία, οι οργανισμοί πρέπει να έχουν εφαρμογές που είναι πάντα ενεργές και που εκτελούνται σε πραγματικό χρόνο. Εφαρμογές όπως ψηφιακά συστήματα πληρωμών, παρακολούθηση αποθεμάτων σε πραγματικό χρόνο και διαδικτυακά παιχνίδια βασίζονται σε ανθεκτικά συστήματα με γρήγορη πρόσβαση σε κέντρα δεδομένων που διανέμονται σε όλο τον κόσμο. Για εφαρμογές όπως αυτές, είναι απαράδεκτο να διακυβεύεται η συνοχή των δεδομένων για οποιαδήποτε συναλλαγή, είτε τα δεδομένα αποθηκεύονται σε ένα ιδιωτικό σύννεφο, σε ένα δημόσιο σύννεφο ή σε οποιονδήποτε συνδυασμό και των δύο.

Ωστόσο, η λειτουργία ενός συμπλέγματος σε γεωγραφικά κατανεμημένα κέντρα δεδομένων ή περιοχές cloud εισάγει υψηλό κόστος, ασυνέπειες δεδομένων και περιορισμένη ανθεκτικότητα. Για να ξεπεράσει αυτά τα εμπόδια, η Aerospike ανέπτυξε μια δυνατότητα συμπλέγματος πολλαπλών τοποθεσιών στην Aerospike Database 5 που επιτρέπει στις επιχειρήσεις να λειτουργούν ένα σύμπλεγμα βάσεων δεδομένων σε πολλές τοποθεσίες χωρίς να διακινδυνεύουν την απώλεια δεδομένων ή να περιορίζουν τη διαθεσιμότητα δεδομένων.

Ομαδοποίηση πολλαπλών τοποθεσιών παρέχει μια ενεργή-ενεργή αρχιτεκτονική δεδομένων

Μια ενεργή-ενεργή αρχιτεκτονική δεδομένων καλύπτει πολλές περιοχές και αιτήματα εφαρμογών υπηρεσιών σε όλες τις τοποθεσίες. Κάθε τοποθεσία είναι "ενεργή". Οι εγγραφές δεδομένων αναπαράγονται σε διάφορες περιοχές, έτσι ώστε οι αναγνώσεις να μπορούν να υποβάλλονται σε επεξεργασία σε οποιαδήποτε τοποθεσία. Σε ορισμένες αρχιτεκτονικές, οι εγγραφές για μια δεδομένη εγγραφή δεδομένων αντιμετωπίζονται μόνο σε μια μοναδική κύρια τοποθεσία. Άλλες αρχιτεκτονικές επιτρέπουν την πραγματοποίηση τέτοιων εγγραφών σε πολλές τοποθεσίες. Κάθε προσέγγιση έχει τις προκλήσεις της που περιλαμβάνουν διαθεσιμότητα, συνέπεια και απόδοση.

Στο παρελθόν, οι οργανισμοί πραγματοποίησαν ανταλλαγές μεταξύ της συνοχής των δεδομένων και της υψηλής απόδοσης. Η βάση δεδομένων Aerospike 5 με ομαδοποίηση πολλαπλών τοποθεσιών εξαλείφει αυτές τις αντισταθμίσεις. Η ομαδοποίηση πολλαπλών τοποθεσιών συνδυάζει ισχυρή συνοχή με υποστήριξη παγκόσμιων κατανεμημένων εφαρμογών συναλλαγών που μπορούν να χαλαρώσουν τον λανθάνοντα χρόνο εγγραφής, ο οποίος ποικίλλει ανάλογα με την απόσταση μεταξύ των τοποθεσιών ενός συμπλέγματος, ενώ παράλληλα παρέχει καθυστέρηση ανάγνωσης δευτερολέπτων σε υψηλή απόδοση.

Πώς λειτουργούν τα συμπλέγματα πολλαπλών τοποθεσιών της Aerospike

Στο σχήμα 1 παρακάτω, ένα ενιαίο σύμπλεγμα Aerospike είναι διατεταγμένο με τη μορφή τριών ραφιών κατανεμημένων σε τρεις τοποθεσίες. Οι ιστότοποι θα μπορούσαν να είναι ένα κέντρο δεδομένων, μια περιοχή cloud ή ακόμη και διαφορετικές περιοχές cloud, όπως οι Υπηρεσίες Ιστού Amazon, το Google Cloud ή το Microsoft Azure. Οι εφαρμογές αναγνωρίζουν αυτό το γεωγραφικά κατανεμημένο περιβάλλον ως ένα ενιαίο σύστημα και οι αιτήσεις ανάγνωσης / εγγραφής αντιμετωπίζονται απρόσκοπτα. Για βέλτιστη απόδοση, διαβάζει τη διαδικασία τοπικά ενώ γράφει διαδρομή προς απομακρυσμένες τοποθεσίες, εάν χρειάζεται.

Αεροδιαστημική

Η συνειδητοποίηση Rack είναι μια σημαντική ικανότητα που επιτρέπει στα συμπλέγματα της Aerospike να αναπτύσσονται σε απομακρυσμένα κέντρα δεδομένων ή περιοχές cloud. Σε ένα σύμπλεγμα πολλαπλών τοποθεσιών, η δυνατότητα ενημέρωσης ραφιών της Aerospike επιτρέπει την αποθήκευση αντιγράφων των εγγραφών δεδομένων που ομαδοποιούνται σε διαμερίσματα δεδομένων σε διαφορετικά ράφια. Μέσω των ρυθμίσεων του παράγοντα αναπαραγωγής δεδομένων, κάθε ράφι μπορεί να ρυθμιστεί ώστε να αποθηκεύει ένα πλήρες αντίγραφο όλων των δεδομένων ώστε να μεγιστοποιείται η διαθεσιμότητα δεδομένων και η τοπική απόδοση ανάγνωσης.

Στο Σχήμα 1, ένας παράγοντας αναπαραγωγής του 3 δίνει εντολή στην Aerospike να διατηρεί αντίγραφα όλων των δεδομένων σε κάθε ράφι. Μόνο ένας κόμβος σε ένα ράφι του συμπλέγματος διατηρεί ένα κύριο αντίγραφο ενός δεδομένου διαμερίσματος δεδομένων ανά πάσα στιγμή. άλλα ράφια έχουν κόμβους που αποθηκεύουν αντίγραφα αυτού του διαμερίσματος. Η Aerospike συγχρονίζει το κύριο αντίγραφο με τα αντίγραφα σε διαφορετικά ράφια / κόμβους.

Η Aerospike διατηρεί ένα ρόστερ για να παρακολουθεί αυτές τις πληροφορίες. Στο σχήμα 1, το κύριο αντίγραφο του ρόστερ βρίσκεται στον κόμβο 3 του Rack 2 και τα αντίγραφα βρίσκονται στον κόμβο 1 του Rack 1 και στον κόμβο 2 του Rack 3. Αυτό το σύμπλεγμα θα διατηρήσει ισχυρή συνοχή, θα αποφύγει την απώλεια δεδομένων και θα διατηρήσει τη διαθεσιμότητα σε ένα- αποτυχίες ιστότοπου.

Πώς ανακυκλώνουν τα συμπλέγματα πολλαπλών ιστότοπων της Aerospike

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

Στο σχήμα 2 παρακάτω, μια αποτυχία δικτύου έχει προκαλέσει την αποσύνδεση του Rack 3 από τα Racks 1 και 2 για τη δημιουργία ενός σεναρίου split-brain, το οποίο είναι όταν κάποια τμήματα του συστήματος δεν είναι σε θέση να επικοινωνήσουν με άλλα. Το Rack 3 είναι ακόμα πάνω, με τους τρεις κόμβους να σχηματίζουν ένα υποσύμπλεγμα. Σε αυτήν την περίπτωση, τα Racks 1 και 2 ανακαλύπτουν εύκολα ότι το Rack 3 είναι έξω και σχηματίζει ένα σύμπλεγμα με έξι κόμβους. Αυτό γίνεται το πλειοψηφικό υποσύμπλεγμα και έχει πλήρη διαθεσιμότητα αφού έχει δύο αντίγραφα δεδομένων εντός του υποσυστήματος. Ένα τρίτο αντίγραφο δημιουργείται αυτόματα σε κάθε εγγραφή καθώς το σύστημα προχωρά σε συναλλαγές.

Αεροδιαστημική

Κάθε συναλλαγή που πραγματοποιήθηκε στο Rack 3 πραγματοποιείται επίσης στο Rack 1 και στο Rack 2, και μόνο τότε θα προχωρήσουν οι συναλλαγές. Οι τοπικές εφαρμογές στο Rack 1 και το Rack 2 συνεχίζουν να λειτουργούν καλά. Οι τοπικές εφαρμογές στο Rack 3 δεν θα είναι διαθέσιμες. Χρησιμοποιώντας τον ισχυρό αλγόριθμο συνέπειας του Aerospike, το Rack 3 μπορεί να καθορίσει από ένα συνδυασμό του ρόστερ και το γεγονός ότι μπορεί να μιλήσει με τα Racks 1 και 2, ότι είναι ένα υποσύμπλεγμα μειοψηφίας και δεν είναι διαθέσιμο για ανάγνωση και εγγραφή της εφαρμογής. Και όταν το Rack 3 επιστρέψει ή επανασυνδεθεί με τα άλλα δύο ράφια, τα επιπλέον αντίγραφα δεδομένων που έχουν δημιουργηθεί στα Racks 1 και 2 για εγγραφές που έχουν συμβεί θα συγχωνευτούν ξανά στο Rack 3, ώστε να μπορεί να αρχίσει να αναλαμβάνει το τμήμα του το φορτίο. Όλα αυτά συμβαίνουν χωρίς παρέμβαση χειριστή, διατηρώντας ισχυρή συνέπεια χωρίς απώλεια δεδομένων και πλήρη διαθεσιμότητα κατά τη διάρκεια του συμβάντος split-brain.

Ανταπόκριση στις απαιτήσεις της συνεχώς παγκόσμιας οικονομίας

Ο συνεχώς ενεργός χαρακτήρας της σημερινής παγκόσμιας ψηφιακής οικονομίας απαιτεί συστήματα βάσεων δεδομένων που λειτουργούν χωρίς διακοπή ή κίνδυνο απώλειας δεδομένων. Η δυνατότητα συμπλέγματος πολλαπλών τοποθεσιών της Aerospike επιτρέπει στους οργανισμούς να αναπτύξουν ένα μόνο σύμπλεγμα σε πολλές τοποθεσίες με διαθεσιμότητα 24/7 και ισχυρή συνέπεια. Τώρα είναι δυνατόν να εφαρμοστούν νέοι τύποι εφαρμογών που περιλαμβάνουν παγκόσμιες κατανεμημένες συναλλαγές.

Η Srini Srinivasan είναι ιδρυτής και επικεφαλής του προϊόντος στην Aerospike, ηγέτης στις λύσεις δεδομένων NoSQL σε πραγματικό χρόνο επόμενης γενιάς. Έχει δύο δεκαετίες εμπειρίας στο σχεδιασμό, την ανάπτυξη και τη λειτουργία υποδομών μεγάλης κλίμακας. Έχει επίσης περισσότερα από 30 διπλώματα ευρεσιτεχνίας σε τεχνολογίες βάσεων δεδομένων, ιστού, κινητής τηλεφωνίας και κατανεμημένων συστημάτων. Συν-ίδρυσε την Aerospike για να λύσει τα προβλήματα κλιμάκωσης που αντιμετώπισε με το Διαδίκτυο και τα κινητά συστήματα, ενώ ήταν ανώτερος διευθυντής μηχανικής στο Yahoo.

Το New Tech Forum παρέχει έναν χώρο για να εξερευνήσετε και να συζητήσετε την αναδυόμενη τεχνολογία σε πρωτοφανές βάθος και εύρος. Η επιλογή είναι υποκειμενική, με βάση την επιλογή των τεχνολογιών που πιστεύουμε ότι είναι σημαντικές και έχουν μεγάλο ενδιαφέρον για τους αναγνώστες. δεν αποδέχεται ασφάλεια μάρκετινγκ για δημοσίευση και διατηρεί το δικαίωμα να επεξεργαστεί όλο το περιεχόμενο. Στείλτε όλες τις ερωτήσεις στο [email protected].

$config[zx-auto] not found$config[zx-overlay] not found