Μετά την επιτυχή εγκατάσταση του HBase πάνω από το Hadoop, έχουμε ένα διαδραστικό κέλυφος για την εκτέλεση διαφόρων εντολών και την εκτέλεση πολλών λειτουργιών. Χρησιμοποιώντας αυτές τις εντολές, μπορούμε να εκτελέσουμε πολλαπλές λειτουργίες σε πίνακες δεδομένων που μπορούν να προσφέρουν καλύτερες αποδόσεις αποθήκευσης δεδομένων και ευέλικτη αλληλεπίδραση από τον πελάτη.
Μπορούμε να αλληλεπιδράσουμε με το HBase με δύο τρόπους,
- Διαδραστική λειτουργία κελύφους HBase και
- Μέσω Java API
Στο HBase, η λειτουργία διαδραστικού κελύφους χρησιμοποιείται για την αλληλεπίδραση με το HBase για λειτουργίες πίνακα, διαχείριση πίνακα και μοντελοποίηση δεδομένων. Χρησιμοποιώντας το μοντέλο Java API, μπορούμε να εκτελέσουμε όλους τους τύπους πινάκων και λειτουργιών δεδομένων στο HBase. Μπορούμε να αλληλεπιδράσουμε με την HBase χρησιμοποιώντας αυτές τις δύο μεθόδους.
Η μόνη διαφορά μεταξύ αυτών των δύο είναι το Java API να χρησιμοποιεί κώδικα java για σύνδεση με το HBase και το shell mode χρησιμοποιούν εντολές κελύφους για σύνδεση με το HBase.
Γρήγορη υπέρβαση του HBase προτού προχωρήσουμε-
- Το HBase χρησιμοποιεί αρχεία Hadoop ως σύστημα αποθήκευσης για την αποθήκευση μεγάλου όγκου δεδομένων. Το Hbase αποτελείται από Master Servers και Regions Servers
- Τα δεδομένα που πρόκειται να αποθηκευτούν στο HBase θα έχουν τη μορφή περιοχών. Επιπλέον, αυτές οι περιοχές θα χωριστούν και θα αποθηκευτούν σε διακομιστές πολλαπλών περιοχών
- Αυτή η εντολή κελύφους επιτρέπει στον προγραμματιστή να καθορίσει σχήματα πίνακα και λειτουργίες δεδομένων χρησιμοποιώντας πλήρη αλληλεπίδραση τρόπου κελύφους
- Όποια εντολή χρησιμοποιούμε, θα αντικατοπτρίζεται στο μοντέλο δεδομένων HBase
- Χρησιμοποιούμε εντολές κελύφους HBase σε διερμηνείς σεναρίων λειτουργικού συστήματος όπως το κέλυφος Bash
- Το Bash shell είναι ο προεπιλεγμένος διερμηνέας εντολών για τις περισσότερες από τις λειτουργικές διανομές Linux και Unix
- Οι προηγμένες εκδόσεις HBase παρέχουν εντολές κελύφους αντικειμενοστρεφείς αναφορές για πίνακες
- Οι μεταβλητές αναφοράς πίνακα μπορούν να χρησιμοποιηθούν για την εκτέλεση λειτουργιών δεδομένων σε λειτουργία κελύφους HBase
Για παραδείγματα ,
- Σε αυτό το σεμινάριο, δημιουργήσαμε έναν πίνακα στον οποίο η «εκπαίδευση» αντιπροσωπεύει το όνομα του πίνακα και αντιστοιχεί στο όνομα της στήλης "guru99".
- Σε ορισμένες εντολές "γκουρού99", το ίδιο αντιπροσωπεύει ένα όνομα πίνακα.
Σε αυτό το σεμινάριο- θα μάθετε,
- Γενικές εντολές
- Εντολές διαχείρισης πινάκων
- Εντολές χειρισμού δεδομένων
- Εντολές αναπαραγωγής συμπλέγματος
Γενικές εντολές
Στο Hbase, οι γενικές εντολές κατηγοριοποιούνται σε ακόλουθες εντολές
- Κατάσταση
- Εκδοχή
- Βοήθεια Table (σάρωση, πτώση, λήψη, τοποθέτηση, απενεργοποίηση κ.λπ.)
- Ποιός είμαι
Για να μπείτε στην εντολή HBase shell, πρώτα απ 'όλα, πρέπει να εκτελέσουμε τον κώδικα όπως αναφέρεται παρακάτω
hbase Shell
Μόλις φτάσουμε στο κέλυφος HBase, μπορούμε να εκτελέσουμε όλες τις εντολές κελύφους που αναφέρονται παρακάτω. Με τη βοήθεια αυτών των εντολών, μπορούμε να εκτελέσουμε όλους τους τύπους πινάκων σε λειτουργία κελύφους HBase.
Ας εξετάσουμε όλες αυτές τις εντολές και τη χρήση τους μία προς μία με ένα παράδειγμα.
Κατάσταση
Syntax:status
Αυτή η εντολή θα δώσει λεπτομέρειες σχετικά με την κατάσταση του συστήματος, όπως ένας αριθμός διακομιστών που υπάρχουν στο σύμπλεγμα, ο ενεργός αριθμός διακομιστών και η μέση τιμή φόρτωσης. Μπορείτε επίσης να περάσετε συγκεκριμένες παραμέτρους ανάλογα με την αναλυτική κατάσταση που θέλετε να γνωρίζετε για το σύστημα. Οι παράμετροι μπορεί να είναι «περίληψη», «απλό» ή «λεπτομερές» , η προεπιλεγμένη παράμετρος που παρέχεται είναι «περίληψη».
Παρακάτω έχουμε δείξει πώς μπορείτε να μεταβιβάσετε διαφορετικές παραμέτρους στην εντολή κατάστασης.
Εάν παρατηρήσουμε το παρακάτω στιγμιότυπο οθόνης, θα έχουμε μια καλύτερη ιδέα.
hbase(main):001:0>statushbase(main):002:0>status 'simple'hbase(main):003:0>status 'summary'hbase(main):004:0> status 'detailed'
Όταν εκτελούμε αυτήν την κατάσταση εντολών, θα δώσει πληροφορίες σχετικά με τον αριθμό των παρόντων διακομιστών, τους νεκρούς διακομιστές και το μέσο φορτίο του διακομιστή, εδώ στο στιγμιότυπο οθόνης δείχνει τις πληροφορίες όπως 1 ζωντανός διακομιστής, 1 νεκρός διακομιστής και μέσο φορτίο 7.0000.
Εκδοχή
Syntax: version
- Αυτή η εντολή θα εμφανίσει την τρέχουσα χρησιμοποιούμενη έκδοση HBase σε λειτουργία εντολών
- Εάν εκτελέσετε την εντολή έκδοσης, θα δώσει έξοδο όπως φαίνεται παραπάνω
Βοήθεια πίνακα
Syntax:table_help
Αυτή η εντολή καθοδηγεί
- Τι και πώς να χρησιμοποιήσετε εντολές που αναφέρονται σε πίνακα
- Θα παρέχει διαφορετικές χρήσεις εντολών κελύφους HBase και τις σύνταξές της
- Εδώ στην οθόνη που φαίνεται παραπάνω, δείχνει τη σύνταξη της εντολής " create" και " get_table" με τη χρήση της. Μπορούμε να χειριστούμε τον πίνακα μέσω αυτών των εντολών μόλις δημιουργηθεί ο πίνακας στο HBase.
- Θα δώσει εντολές χειρισμού πίνακα όπως put, get και όλες τις άλλες πληροφορίες εντολών.
ποιός είμαι
Σύνταξη:
Syntax: Whoami
Αυτή η εντολή "whoami" χρησιμοποιείται για να επιστρέψει τις τρέχουσες πληροφορίες χρήστη HBase από το σύμπλεγμα HBase.
Θα παρέχει πληροφορίες όπως
- Ομάδες που υπάρχουν στο HBase
- Οι πληροφορίες χρήστη, για παράδειγμα, σε αυτή την περίπτωση, το "hduser" αντιπροσωπεύουν το όνομα χρήστη όπως φαίνεται στο στιγμιότυπο οθόνης
TTL (Time To Live) - Χαρακτηριστικό
Στο HBase, οι οικογένειες στηλών μπορούν να ρυθμιστούν σε τιμές χρόνου σε δευτερόλεπτα χρησιμοποιώντας TTL. Το HBase θα διαγράψει αυτόματα σειρές μόλις συμπληρωθεί ο χρόνος λήξης. Αυτό το χαρακτηριστικό ισχύει για όλες τις εκδόσεις μιας σειράς - ακόμη και για την τρέχουσα έκδοση.
Ο χρόνος TTL που κωδικοποιείται στη βάση HB για τη σειρά καθορίζεται σε UTC. Αυτό το χαρακτηριστικό χρησιμοποιείται με εντολές διαχείρισης πίνακα.
Παρακάτω αναφέρονται σημαντικές διαφορές μεταξύ χειρισμού TTL και TTL οικογένειας στηλών
- Τα κύτταρα TTL εκφράζονται σε μονάδες χιλιοστών του δευτερολέπτου αντί σε δευτερόλεπτα.
- Τα κελιά TTL δεν μπορούν να επεκτείνουν την πραγματική διάρκεια ζωής ενός κελιού πέρα από τη ρύθμιση TTL επιπέδου οικογένειας στηλών.
Εντολές διαχείρισης πινάκων
Αυτές οι εντολές θα επιτρέψουν στους προγραμματιστές να δημιουργήσουν πίνακες και σχήματα πινάκων με σειρές και σειρές στηλών.
Ακολουθούν οι εντολές διαχείρισης πίνακα
- Δημιουργώ
- Λίστα
- Περιγράφω
- Καθιστώ ανίκανο
- Απενεργοποίηση όλων
- επιτρέπω
- Ενεργοποίηση όλων
- Πτώση
- Drop_all
- Εμφάνιση_ φίλτρων
- Αλλάζω
- Alter_status
Ας εξετάσουμε διάφορες χρήσεις εντολών στο HBase με ένα παράδειγμα.
Δημιουργώ
Syntax: create,
Παράδειγμα:-
hbase(main):001:0> create 'education' ,'guru99'0 rows(s) in 0.312 seconds=>Hbase::Table - education
Το παραπάνω παράδειγμα εξηγεί πώς να δημιουργήσετε έναν πίνακα στο HBase με το καθορισμένο όνομα που δίνεται σύμφωνα με το λεξικό ή τις προδιαγραφές σύμφωνα με την οικογένεια στηλών. Εκτός από αυτό μπορούμε επίσης να περάσουμε και ορισμένα χαρακτηριστικά εύρους πίνακα σε αυτό.
Για να ελέγξουμε εάν ο πίνακας «εκπαίδευση» έχει δημιουργηθεί ή όχι, πρέπει να χρησιμοποιήσουμε την εντολή «λίστα» όπως αναφέρεται παρακάτω.
Λίστα
Syntax:list
- Η εντολή "List" θα εμφανίσει όλους τους πίνακες που υπάρχουν ή δημιουργούνται στο HBase
- Η έξοδος που εμφανίζεται στο παραπάνω στιγμιότυπο οθόνης δείχνει προς το παρόν τους υπάρχοντες πίνακες στο HBase
- Εδώ σε αυτό το στιγμιότυπο οθόνης, δείχνει ότι υπάρχουν συνολικά 8 πίνακες στο HBase
- Μπορούμε να φιλτράρουμε τιμές εξόδου από πίνακες περνώντας προαιρετικές παραμέτρους κανονικής έκφρασης
Περιγράφω
Syntax:describe