Βίντεο: Sqoop Import and Export data from RDMBS and HDFS 2024
Έτοιμη να βουτήξετε στην εισαγωγή δεδομένων με το Sqoop; Ξεκινήστε ρίχνοντας μια ματιά στο σχήμα, το οποίο απεικονίζει τα βήματα σε μια τυπική διαδικασία εισαγωγής Sqoop από ένα RDBMS ή ένα σύστημα αποθήκης δεδομένων. Τίποτα δεν είναι πολύ περίπλοκο εδώ - ένας τυπικός πίνακας στοιχείων προϊόντων από μια (τυπική) φανταστική εταιρεία που εισάγεται σε ένα τυπικό σύμπλεγμα Apache Hadoop από ένα τυπικό σύστημα διαχείρισης δεδομένων (DMS).
Κατά τη διάρκεια του βήματος 1, το Sqoop χρησιμοποιεί την κατάλληλη υποδοχή για να ανακτήσει τα μεταδεδομένα του πίνακα προϊόντων από το στόχο DMS. (Τα μεταδεδομένα χρησιμοποιούνται για τη χαρτογράφηση των τύπων δεδομένων από τον πίνακα προϊόντων σε τύπους δεδομένων στη γλώσσα Java.)
Το βήμα 2 στη συνέχεια χρησιμοποιεί αυτά τα μεταδεδομένα για να δημιουργήσει και να μεταγλωττίσει μια τάξη Java που θα χρησιμοποιηθεί από μία ή περισσότερες εργασίες χαρτών εισαγάγετε τις πραγματικές σειρές από τον πίνακα προϊόντων. Το Sqoop αποθηκεύει την παραγόμενη κλάση Java στο χώρο temp ή σε έναν κατάλογο που καθορίζετε, έτσι ώστε να μπορείτε να το αξιοποιήσετε για την επακόλουθη επεξεργασία των αρχείων δεδομένων σας.
Το Sqoop που δημιούργησε τον κώδικα Java που είναι αποθηκευμένο για εσάς είναι σαν το δώρο που συνεχίζει να δίνει! Με αυτόν τον κώδικα, το Sqoop εισάγει αρχεία από το DMS και τα αποθηκεύει σε HDFS χρησιμοποιώντας ένα από τα τρία μορφότυπα που μπορείτε να επιλέξετε: δυαδικά δεδομένα Avro, αρχεία δυαδικών ακολουθιών ή αρχεία αρχείων με αστερίσκο. Στη συνέχεια, αυτός ο κωδικός είναι διαθέσιμος για μελλοντική επεξεργασία δεδομένων.
Τα αρχεία αλληλουχίας είναι φυσική επιλογή αν εισάγετε τύπους δυαδικών δεδομένων και θα χρειαστείτε την παραγόμενη κλάση Java για σειριοποίηση και αποεπεξεργασία των δεδομένων αργότερα - ίσως για επεξεργασία ή εξαγωγή MapReduce. Τα δεδομένα Avro - που βασίζονται στο ίδιο το πλαίσιο κατακερματισμού του Apache - είναι χρήσιμα αν χρειάζεται να αλληλεπιδράσετε με άλλες εφαρμογές μετά την εισαγωγή σε HDFS.
Τέλος, κατά τη διάρκεια του βήματος 3, το Sqoop διαιρεί τις εγγραφές δεδομένων στον πίνακα προϊόντων μέσω ενός αριθμού εργασιών χαρτών (με τον αριθμό των χαρτογράφων που καθορίζει προαιρετικά ο χρήστης) και εισάγει τα δεδομένα πίνακα σε HDFS, Hive ή HBase.