Σε αυτό το σεμινάριο μπορούν να παρατηρηθούν λειτουργίες πινάκων όπως δημιουργία, αλλαγή και πτώση πινάκων στην ομάδα.
Στο παρακάτω στιγμιότυπο οθόνης, δημιουργούμε έναν πίνακα με στήλες και αλλάζουμε το όνομα του πίνακα.
1. Δημιουργία δείγματος πίνακα γκουρού με δύο ονόματα στηλών όπως "empid" και "empname"
2. Εμφάνιση πινάκων που υπάρχουν στη βάση δεδομένων guru99
3. Δείγμα Guru_ δείγματος κάτω από πίνακες
4. Τροποποίηση του πίνακα "guru_sample" ως "guru_sampleNew"
5. Και πάλι όταν εκτελείτε την εντολή "show", θα εμφανίζει το νέο όνομα Guru_sampleNew
Dropping table guru_sampleNew:
Τύποι πινάκων και η χρήση του:
Ερχόμενοι στους πίνακες είναι ακριβώς όπως ο τρόπος που δημιουργούμε σε παραδοσιακές σχεσιακές βάσεις δεδομένων. Οι λειτουργίες όπως το φιλτράρισμα, οι συνδέσεις μπορούν να εκτελεστούν στους πίνακες.
Η κυψέλη ασχολείται με δύο τύπους δομών πινάκων όπως εσωτερικούς και εξωτερικούς πίνακες, ανάλογα με τη φόρτωση και το σχεδιασμό του σχήματος στο Hive.
Εσωτερικοί πίνακες
- Ο εσωτερικός πίνακας είναι σφιχτά συνδεδεμένος στη φύση. Σε αυτόν τον τύπο πίνακα, πρώτα πρέπει να δημιουργήσουμε πίνακα και να φορτώσουμε τα δεδομένα.
- Μπορούμε να το ονομάσουμε αυτό ως δεδομένα για το σχήμα .
- Αν αφήσετε αυτόν τον πίνακα, θα καταργηθούν τόσο τα δεδομένα όσο και τα σχήματα.
- Η αποθηκευμένη θέση αυτού του πίνακα θα βρίσκεται στο / user / hive / warehouse.
Πότε να επιλέξετε εσωτερικό πίνακα:
- Εάν τα δεδομένα επεξεργασίας είναι διαθέσιμα στο τοπικό σύστημα αρχείων
- Εάν θέλουμε η Hive να διαχειριστεί τον πλήρη κύκλο ζωής των δεδομένων, συμπεριλαμβανομένης της διαγραφής
Δείγμα κώδικα απόσπασμα για εσωτερικό πίνακα
1. Για να δημιουργήσετε τον εσωτερικό πίνακα
Hive>CREATE TABLE guruhive_internaltable (id INT,Name STRING);Row format delimitedFields terminated by '\t';
2. Φορτώστε τα δεδομένα στον εσωτερικό πίνακα
Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO table guruhive_internaltable;
3. Εμφανίστε το περιεχόμενο του πίνακα
Hive>select * from guruhive_internaltable;
4. Για να ρίξετε τον εσωτερικό πίνακα
Hive>DROP TABLE guruhive_internaltable;
Εάν εγκαταλείψατε το guruhive_internaltable, συμπεριλαμβανομένων των μεταδεδομένων του και τα δεδομένα του θα διαγραφούν από το Hive.
Από το παρακάτω στιγμιότυπο οθόνης, μπορούμε να παρατηρήσουμε την έξοδο
Στον παραπάνω κώδικα και από το στιγμιότυπο οθόνης ακολουθούμε πράγματα,
- Δημιουργήστε τον εσωτερικό πίνακα
- Φορτώστε τα δεδομένα στον εσωτερικό πίνακα
- Εμφάνιση του περιεχομένου του πίνακα
- Για να ρίξετε τον εσωτερικό πίνακα
Εξωτερικοί πίνακες
- Ο εξωτερικός πίνακας είναι χαλαρά συνδεδεμένος στη φύση. Τα δεδομένα θα είναι διαθέσιμα σε HDFS. Ο πίνακας πρόκειται να δημιουργηθεί σε δεδομένα HDFS.
- Με άλλο τρόπο, μπορούμε να πούμε σαν να δημιουργεί ένα σχήμα δεδομένων .
- Κατά τη στιγμή της πτώσης του πίνακα πέφτει μόνο σχήμα, τα δεδομένα θα εξακολουθούν να είναι διαθέσιμα σε HDFS όπως και πριν.
- Οι εξωτερικοί πίνακες παρέχουν τη δυνατότητα δημιουργίας πολλαπλών σχημάτων για τα δεδομένα που είναι αποθηκευμένα σε HDFS αντί να διαγράφονται τα δεδομένα κάθε φορά όποτε ενημερώνεται το σχήμα
Πότε να επιλέξετε εξωτερικό πίνακα:
- Εάν η επεξεργασία δεδομένων είναι διαθέσιμη σε HDFS
- Χρήσιμο όταν τα αρχεία χρησιμοποιούνται εκτός του Hive
Δείγμα κώδικα απόσπασμα για εξωτερικό πίνακα
1. Δημιουργία εξωτερικού πίνακα
Hive>CREATE EXTERNAL TABLE guruhive_external(id INT,Name STRING)Row format delimitedFields terminated by '\t'LOCATION '/user/guru99hive/guruhive_external;
2. Εάν δεν προσδιορίζουμε την τοποθεσία κατά τη δημιουργία του πίνακα, μπορούμε να φορτώσουμε τα δεδομένα χειροκίνητα
Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO TABLE guruhive_external;
3. Εμφανίστε το περιεχόμενο του πίνακα
Hive>select * from guruhive_external;
4. Για να ρίξετε τον εσωτερικό πίνακα
Hive>DROP TABLE guruhive_external;
Από την ακόλουθη λήψη οθόνης, μπορούμε να παρατηρήσουμε την έξοδο
Στον παραπάνω κώδικα, ακολουθούμε πράγματα
- Δημιουργήστε τον εξωτερικό πίνακα
- Φορτώστε τα δεδομένα στον εξωτερικό πίνακα
- Εμφάνιση του περιεχομένου του πίνακα
- Πτώση εξωτερικού πίνακα
Διαφορά μεταξύ εσωτερικών Vs εξωτερικών πινάκων
χαρακτηριστικό | Εσωτερικός | Εξωτερικός |
---|---|---|
Σχέδιο | Δεδομένα για το σχήμα | Σχέδιο δεδομένων |
Τοποθεσία αποθήκευσης | / usr / κυψέλη / αποθήκη | Τοποθεσία HDFS |
Διαθεσιμότητα δεδομένων | Μέσα στο τοπικό σύστημα αρχείων | Εντός HDFS |