Βίντεο: hadoop yarn architecture 2024
Ξεκινώντας μια συζήτηση για την αρχιτεκτονική HBase (Hadoop Database), περιγράφοντας το RegionServers αντί του MasterServer μπορεί να σας εκπλήξει. Ο όρος RegionServer φαίνεται να υποδηλώνει ότι εξαρτάται (και είναι δευτερεύον) από το MasterServer και ότι πρέπει να συζητήσετε πρώτα το MasterServer. Όπως συμβαίνει και με το παλιό τραγούδι, "δεν είναι απαραίτητα έτσι. "
Οι RegionServers εξαρτώνται από το MasterServer για ορισμένες λειτουργίες, αλλά όχι με την έννοια της σχέσης master-slave για αποθήκευση και ανάκτηση δεδομένων. Στην επάνω αριστερή γωνία του σχήματος, παρατηρήστε ότι οι πελάτες δεν δείχνουν στο MasterServer, αλλά δείχνουν το σύμπλεγμα Zookeeper και το RegionServers.
Το MasterServer δεν βρίσκεται στη διαδρομή αποθήκευσης και πρόσβασης δεδομένων - αυτή είναι η δουλειά του cluster των Zookeeper και του RegionServers. Ρίξτε μια ματιά στις κύριες λειτουργίες του MasterServer, το οποίο είναι επίσης μια διαδικασία λογισμικού (ή δαίμονας) όπως το RegionServers. Το MasterServer είναι εκεί για
-
Παρακολούθηση των RegionServers στο σύμπλεγμα HBase: Το MasterServer διατηρεί μια λίστα ενεργών RegionServers στο σύμπλεγμα HBase.
-
Όταν δημιουργείται ένας πίνακας ή αλλάζουν τα χαρακτηριστικά του (ρύθμιση συμπίεσης, ρυθμίσεις προσωρινής μνήμης, έκδοση έκδοσης κλπ.), Το MasterServer χειρίζεται τη λειτουργία και αποθηκεύει τα απαιτούμενα μεταδεδομένα. Αντιστοίχιση περιοχών:
-
Το MasterServer εκχωρεί περιοχές σε RegionServers. Διαχείριση ανακατεύθυνσης του RegionServer:
-
Όπως συμβαίνει με κάθε κατανεμημένο σύμπλεγμα, ελπίζετε ότι οι αποτυχίες του κόμβου δεν συμβαίνουν και σχεδιάζετε γι 'αυτούς ούτως ή άλλως. Όταν αποτυγχάνουν οι διακομιστές περιοχής, ο Zookeeper ειδοποιεί το MasterServer ώστε να ξεκινήσει η λειτουργία failover και επαναφοράς.
-
Μπορείτε να θυμηθείτε ότι οι πίνακες αποτελούνται από περιοχές που είναι ομοιόμορφα κατανεμημένες σε όλα τα διαθέσιμα RegionServers. Αυτό είναι το έργο του thread balancer (ή chore , αν προτιμάτε) το οποίο το MasterServer ενεργοποιεί περιοδικά. Διαχειριστείτε (και καθαρίστε) πίνακες καταλόγων:
-
Δύο πίνακες βασικών καταλόγων χρησιμοποιούνται από το σύστημα HBase για να βοηθήσουν έναν πελάτη να βρει ένα συγκεκριμένο ζεύγος τιμών κλειδιού στο σύστημα. Το MasterServer παρέχει διαχείριση αυτών των κρίσιμων πινάκων εξ ονόματος του συνολικού συστήματος HBase.
Καθαρίστε το WAL:
-
Το MasterServer αλληλεπιδρά με το WAL κατά την αποτυχία του RegionServer και καθαρίζει περιοδικά τα αρχεία καταγραφής. Παρέχετε ένα πλαίσιο συνεργατών για την παρακολούθηση των κύριων λειτουργιών:
-
Ακολουθεί ένας νέος όρος για το αναπτυσσόμενο γλωσσάρι σας HBase. Coprocessors λειτουργούν στο πλαίσιο του MasterServer ή του RegionServers. Για παράδειγμα, ένας coprocessor παρατηρητή MasterServer σάς επιτρέπει να αλλάξετε ή να επεκτείνετε την κανονική λειτουργικότητα του διακομιστή όταν πραγματοποιούνται λειτουργίες όπως δημιουργία πίνακα ή διαγραφή πίνακα. Συχνά συνεργατών χρησιμοποιούνται για τη διαχείριση δεικτών πίνακα για προηγμένες εφαρμογές HBase. Ένας coprocessor, που τρέχει στο πλαίσιο του MasterServer ή του RegionServer (ή και των δύο) μπορεί να χρησιμοποιηθεί για την ενίσχυση της ασφάλειας, τη δημιουργία δευτερογενών ευρετηρίων και πολλά άλλα. Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με τους συνεργαζόμενους σε ένα blog της κοινότητας HBase.
Όπως συμβαίνει με όλες τις τεχνολογίες ανοιχτού κώδικα Hadoop, οι λειτουργίες του MasterServer πιθανόν να αλλάξουν με την πάροδο του χρόνου καθώς η κοινότητα των μηχανικών εργάζεται σε καινοτομίες που έχουν σχεδιαστεί για να ενισχύσουν το HBase. Από τη συγγραφή αυτή, ωστόσο, έχετε τώρα μια αρκετά λεπτομερή λίστα που χρησιμεύει ως αναφορά υψηλού επιπέδου για το MasterServer.
Τέλος, ένα ακόμα σημαντικό σημείο για το HBase MasterServer: Υπάρχει και πρέπει να υπάρχει ένα Backup MasterServer σε οποιοδήποτε σύμπλεγμα HBase. Πρέπει να υπάρχει μόνο ένα ενεργό πρόγραμμα MasterServer οποιαδήποτε στιγμή, οπότε το backup MasterServer είναι για λόγους αποτυχίας.
Μπορείτε να θυμηθείτε ότι το MasterServer δεν είναι στη διαδρομή πρόσβασης δεδομένων για τους πελάτες HBase. Ωστόσο, μπορεί επίσης να θυμάστε ότι το MasterServer είναι υπεύθυνο για δράσεις όπως το failover του RegionServer και η εξισορρόπηση φορτίου. Τα καλά νέα είναι ότι οι πελάτες μπορούν να συνεχίσουν να διερωτώνουν το σύμπλεγμα HBase εάν ο κύριος πάει κάτω, αλλά για τις κανονικές λειτουργίες συμπλέγματος, ο κύριος δεν πρέπει να παραμείνει κάτω για οποιοδήποτε χρονικό διάστημα.