Λήψη PDF
Ακολουθούν συχνές ερωτήσεις σε συνεντεύξεις για νέους και έμπειρους προγραμματιστές HBase
1) Εξηγήστε τι είναι το Hbase;
Το Hbase είναι ένα σύστημα διαχείρισης βάσης δεδομένων προσανατολισμένο στη στήλη που τρέχει πάνω από το HDFS (Hadoop Distribut File System). Το Hbase δεν είναι σχεσιακό κατάστημα δεδομένων και δεν υποστηρίζει δομημένη γλώσσα ερωτημάτων όπως η SQL.
Στο Hbase, ένας κύριος κόμβος ρυθμίζει τους διακομιστές συμπλέγματος και περιοχής για την αποθήκευση τμημάτων των πινάκων και λειτουργεί την εργασία στα δεδομένα.
2) Εξηγήστε γιατί να χρησιμοποιήσετε το Hbase;
- Σύστημα αποθήκευσης υψηλής χωρητικότητας
- Διανεμημένος σχεδιασμός για την κάλυψη μεγάλων τραπεζιών
- Καταστήματα με προσανατολισμό στη στήλη
- Οριζόντια επεκτάσιμη
- Υψηλή απόδοση και διαθεσιμότητα
- Ο βασικός στόχος του Hbase είναι εκατομμύρια στήλες, χιλιάδες εκδόσεις και δισεκατομμύρια σειρές
- Σε αντίθεση με το HDFS (Hadoop Distribut File System), υποστηρίζει τυχαίες λειτουργίες CRUD σε πραγματικό χρόνο
3) Αναφέρετε ποια είναι τα βασικά συστατικά του Hbase;
- Zookeeper: Κάνει το συντονισμό μεταξύ του πελάτη και του Hbase Maser
- Hbase Master: Το Hbase Master παρακολουθεί τον διακομιστή περιοχής
- RegionServer: Το RegionServer παρακολουθεί την περιοχή
- Περιοχή: Περιλαμβάνει στο χώρο αποθήκευσης δεδομένων μνήμης (MemStore) και στο Hfile.
- Πίνακες καταλόγου: Οι πίνακες καταλόγων αποτελούνται από ROOT και META
4) Εξηγήστε τι αποτελείται το Hbase;
- Το Hbase αποτελείται από ένα σύνολο πινάκων
- Και κάθε πίνακας περιέχει σειρές και στήλες όπως η παραδοσιακή βάση δεδομένων
- Κάθε πίνακας πρέπει να περιέχει ένα στοιχείο που ορίζεται ως πρωτεύον κλειδί
- Η στήλη Hbase δηλώνει ένα χαρακτηριστικό ενός αντικειμένου
5) Αναφέρετε πόσες λειτουργικές εντολές στο Hbase;
Η επιχειρησιακή εντολή στο Hbases είναι περίπου πέντε τύποι
- Παίρνω
- Βάζω
- Διαγράφω
- Σάρωση
- Αύξηση
6) Εξηγήστε τι είναι το WAL και το Hlog στο Hbase;
Το WAL (Write Ahead Log) είναι παρόμοιο με το αρχείο καταγραφής MySQL BIN. Καταγράφει όλες τις αλλαγές που συμβαίνουν στα δεδομένα. Είναι ένα τυπικό αρχείο ακολουθίας από το Hadoop και αποθηκεύει το HLogkey's. Αυτά τα πλήκτρα αποτελούνται από έναν διαδοχικό αριθμό, καθώς και από πραγματικά δεδομένα και χρησιμοποιούνται για την αναπαραγωγή δεδομένων που δεν έχουν ακόμη επιμείνει μετά από διακοπή λειτουργίας διακομιστή. Έτσι, σε μετρητά αποτυχίας διακομιστή, το WAL λειτουργεί ως σωσίβιο και ανακτά τα χαμένα δεδομένα.
7) Πότε πρέπει να χρησιμοποιήσετε το Hbase;
- Το μέγεθος των δεδομένων είναι τεράστιο: Όταν έχετε τόνους και εκατομμύρια εγγραφές για να λειτουργήσετε
- Πλήρης επανασχεδιασμός: Όταν μετακινείτε το RDBMS στο Hbase, το θεωρείτε ολοκληρωμένο επανασχεδιασμό και μετά απλώς αλλάζοντας τις θύρες
- Εντολές SQL-Less: Έχετε πολλές δυνατότητες όπως συναλλαγές. εσωτερικές συνδέσεις, στήλες που πληκτρολογούνται κ.λπ.
- Επενδύσεις σε υποδομές: Πρέπει να έχετε αρκετό σύμπλεγμα για να είναι πραγματικά χρήσιμο το Hbase
8) Στο Hbase τι είναι οι οικογένειες στηλών;
Οι οικογένειες στηλών περιλαμβάνουν τη βασική μονάδα φυσικής αποθήκευσης στο Hbase στην οποία εφαρμόζονται χαρακτηριστικά όπως συμπίεση.
9) Εξηγήστε ποιο είναι το πλήκτρο σειράς;
Το πλήκτρο γραμμής ορίζεται από την εφαρμογή. Καθώς το συνδυασμένο πλήκτρο είναι προκαθορισμένο από το πλήκτρο γραμμής, επιτρέπει στην εφαρμογή να καθορίσει την επιθυμητή σειρά ταξινόμησης. Επιτρέπει επίσης τη λογική ομαδοποίηση κελιών και βεβαιωθείτε ότι όλα τα κελιά με το ίδιο πλήκτρο γραμμής βρίσκονται μαζί στον ίδιο διακομιστή.
10) Εξηγήστε τη διαγραφή στο Hbase; Αναφέρετε ποιοι είναι οι τρεις τύποι μαρκαδόρων ταφόπλακας στο Hbase;
Όταν διαγράφετε το κελί στο Hbase, τα δεδομένα δεν διαγράφονται στην πραγματικότητα, αλλά έχει οριστεί ένας δείκτης ταφόπλακας, καθιστώντας τα διαγραμμένα κελιά αόρατα. Το Hbase που διαγράφεται στην πραγματικότητα αφαιρείται κατά τη διάρκεια των συμπυκνώσεων.
Υπάρχουν τρεις τύποι μαρκαδόρων:
- Δείκτης διαγραφής έκδοσης: Για διαγραφή, επισημαίνει μία μόνο έκδοση μιας στήλης
- Δείκτης διαγραφής στήλης: Για διαγραφή, επισημαίνει όλες τις εκδόσεις μιας στήλης
- Οικογενειακός δείκτης διαγραφής: Για διαγραφή, σημειώνει όλες τις στήλες για μια οικογένεια στηλών
11) Εξηγήστε πώς το Hbase διαγράφει πραγματικά μια σειρά;
Στο Hbase, ό, τι γράφετε θα αποθηκεύεται από RAM σε δίσκο, αυτές οι εγγραφές δίσκου είναι αμετάβλητη συμπύκνωση φραγής. Κατά τη διάρκεια της διαδικασίας διαγραφής στο Hbase, η κύρια διαδικασία συμπύκνωσης διαγράφει δείκτη ενώ οι μικρές συμπυκνώσεις δεν το κάνουν. Σε κανονικές διαγραφές, οδηγεί σε διαγραφή μαρκαδόρου - αυτά τα δεδομένα διαγραφής που αντιπροσωπεύουν αφαιρούνται κατά τη συμπίεση.
Επίσης, εάν διαγράψετε δεδομένα και προσθέσετε περισσότερα δεδομένα, αλλά με μια προγενέστερη χρονική σήμανση από την ταμπλό χρονικής σήμανσης, περαιτέρω Gets μπορεί να καλυφθούν από το δείκτη διαγραφής / ταφόπλακα και ως εκ τούτου δεν θα λάβετε την τιμή που έχει εισαχθεί παρά μετά τη μεγάλη συμπίεση.
12) Εξηγήστε τι θα συμβεί εάν αλλάξετε το μέγεθος μπλοκ μιας οικογένειας στηλών σε μια ήδη κατεχόμενη βάση δεδομένων;
Όταν αλλάζετε το μέγεθος μπλοκ της οικογένειας στηλών, τα νέα δεδομένα καταλαμβάνουν το νέο μέγεθος μπλοκ, ενώ τα παλιά δεδομένα παραμένουν εντός του παλιού μεγέθους μπλοκ. Κατά τη συμπίεση δεδομένων, τα παλιά δεδομένα θα λάβουν το νέο μέγεθος μπλοκ. Τα νέα αρχεία καθώς ξεκινούν, έχουν νέο μέγεθος μπλοκ ενώ τα υπάρχοντα δεδομένα θα συνεχίσουν να διαβάζονται σωστά. Όλα τα δεδομένα πρέπει να μετατραπούν στο νέο μέγεθος μπλοκ, μετά την επόμενη μεγάλη συμπίεση.
13) Αναφέρετε τη διαφορά μεταξύ Hbase και Relational Database;
Hbase | Σχεσιακή βάση δεδομένων |
|
|
14) Τι είναι η τάξη HBaseFsck;
Υπάρχει ένα όνομα εργαλείου που ονομάζεται πίσω είναι διαθέσιμο στο HBase, το οποίο υλοποιείται από την κλάση HBaseFsck. Προσφέρει αρκετούς διακόπτες γραμμής εντολών που επηρεάζουν τη συμπεριφορά του.
15) Ποιες είναι οι βασικές δομές του HBase;
Το πλήκτρο Row και το πλήκτρο Column είναι οι δύο πιο σημαντικές δομές κλειδιών που χρησιμοποιούν στο HBase
16) Συζητήστε πώς μπορείτε να χρησιμοποιήσετε φίλτρα στο Apache HBase
Φίλτρα σε κέλυφος HBase. Παρουσιάστηκε στο Apache HBase 0.92, το οποίο σας βοηθά να πραγματοποιήσετε φιλτράρισμα από την πλευρά του διακομιστή για πρόσβαση στο HBase μέσω κελύφους HBase ή λιτότητας.
17) Δομή σύνταξης υποστήριξης HBase όπως SQL ναι ή όχι;
Όχι, δυστυχώς, η υποστήριξη SQL για HBase δεν είναι διαθέσιμη αυτήν τη στιγμή. Ωστόσο, χρησιμοποιώντας το Apache Phoenix, μπορούμε να ανακτήσουμε δεδομένα από το HBase μέσω ερωτημάτων SQL.
18) Ποια είναι η έννοια της συμπίεσης στο HBase;
Τη στιγμή της έντονης εισερχόμενης εγγραφής, είναι αδύνατο να επιτευχθεί η βέλτιστη απόδοση έχοντας ένα αρχείο ανά κατάστημα. Το HBase σας βοηθά να συνδυάσετε όλα αυτά τα HFiles για να μειώσετε τον αριθμό των σπόρων δίσκου για κάθε ανάγνωση. Αυτή η διαδικασία είναι γνωστή ως Συμπύκνωση σε HBase.
19) Πώς θα εφαρμόσετε τις συνδέσεις στο HBase;
Το HBase, δεν υποστηρίζει άμεσα συνδέσμους αλλά χρησιμοποιεί εργασίες MapReduce, ενώ τα ερωτήματα μπορούν να εφαρμοστούν με την ανάκτηση δεδομένων με τη βοήθεια διαφορετικών πινάκων HBase.
20) Εξηγήστε το JMX σχετικά με το HBSE
Οι Java Extensions ή JMX είναι κατάσταση εξαγωγής των εφαρμογών Java είναι το πρότυπο για αυτές.
21) Ποια είναι η χρήση του MasterServer;
Το Master sever σας βοηθά να αντιστοιχίσετε μια περιοχή στον διακομιστή περιοχής. Σας βοηθά επίσης να χειριστείτε την εξισορρόπηση φορτίου που χρησιμοποιούμε το MasterServer.
22) Ορίστε τον όρο Thrift
Το Apache Thrift είναι γραμμένο σε C ++. Παρέχει μεταγλωττιστές σχήματος για διάφορες γλώσσες προγραμματισμού όπως C ++, Perl, PHP, Python, Ruby και άλλα.
23) Γιατί να χρησιμοποιήσετε την τάξη HColumnDescriptor;
Οι λεπτομέρειες σχετικά με την οικογένεια στηλών, όπως οι ρυθμίσεις συμπίεσης, ο αριθμός των εκδόσεων, αποθηκεύονται στο HColumnDescriptor.
24) Τι είναι ένα κελί στο HBase;
Ένα κελί στο HBase είναι η μικρότερη μονάδα ενός πίνακα Hbase. Σας βοηθά να κρατάτε ένα κομμάτι δεδομένων με τη μορφή πλειάδας {σειρά, στήλη, έκδοση}
25) Τι είναι το φίλτρο Bloom;
Η υποστήριξη HBase Bloom Filter σάς βοηθά να βελτιώσετε τη συνολική απόδοση του συμπλέγματος. Ένα φίλτρο HBase Bloom είναι ένας αποδοτικός χώρος για να ελέγξει εάν ένα HFile περιλαμβάνει συγκεκριμένα κελιά γραμμής ή σειράς.
26) Πείτε μου για τους τύπους των λειτουργιών HBase;
Απ. Δύο τύποι λειτουργιών HBase είναι:
- Διαβάστε τη λειτουργία
- Εγγραφή λειτουργίας
27) Ποια είναι η χρήση του HBase HMaster;
Οι κύριες ευθύνες ενός πλοιάρχου είναι:
- Συντονισμός των διακομιστών περιοχής
- Λειτουργίες διαχειριστή
28) Ποια τεχνική μπορείτε να χρησιμοποιήσετε στο HBase για άμεση πρόσβαση στο HFile χωρίς τη βοήθεια του HBase;
Για άμεση πρόσβαση στο HFile χωρίς τη χρήση του HBase, χρησιμοποιούμε τη μέθοδο HFile.main ().
29) Μπορεί ο διακομιστής περιοχής να βρίσκεται σε όλους τους DataNodes;
Ναι, οι διακομιστές περιοχής εκτελούνται στους ίδιους διακομιστές με τους DataNodes
30) Ονομάστε το φίλτρο που δέχεται το μέγεθος της σελίδας ως παράμετρο στο HBase
Ένα φίλτρο με το όνομα PageFilter δέχεται το μέγεθος της σελίδας ως παράμετρο.
Αυτό το έγγραφο συντάχθηκε με τα εργαλεία άμεσου μετατροπέα HTML.
- Επόμενο