Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Οποιαδήποτε λειτουργία μεγάλων δεδομένων απαιτεί μεγάλη υπολογιστική ισχύ. Μια τυπική μετακίνηση δεδομένων από μια βάση δεδομένων στο Hadoop μπορεί να διαρκέσει εβδομάδες ή να κοστίσει όσο ένα φτερό αεροπλάνου. Δεν θέλετε να περιμένετε και να ξοδέψετε χρήματα; Ισορροπήστε το φορτίο σε διαφορετικές πλατφόρμες. Ένας τρόπος είναι η βελτιστοποίηση pushdown.

Ζήτησα από τον κορυφαίο εκπαιδευτή της Ρωσίας για την ανάπτυξη και τη διαχείριση προϊόντων Informatica, Alexey Ananyev, να μιλήσει για τη λειτουργία βελτιστοποίησης pushdown στο Informatica Big Data Management (BDM). Έχετε μάθει ποτέ να εργάζεστε με προϊόντα Informatica; Πιθανότατα, ήταν ο Alexey που σας είπε τα βασικά του PowerCenter και εξήγησε πώς να δημιουργήσετε αντιστοιχίσεις.

Alexey Ananyev, επικεφαλής εκπαίδευσης στο DIS Group

Τι είναι το pushdown;

Πολλοί από εσάς είστε ήδη εξοικειωμένοι με την Informatica Big Data Management (BDM). Το προϊόν μπορεί να ενσωματώσει μεγάλα δεδομένα από διαφορετικές πηγές, να τα μετακινήσει μεταξύ διαφορετικών συστημάτων, να παρέχει εύκολη πρόσβαση σε αυτά, να σας επιτρέπει να τα προφίλ και πολλά άλλα.
Στα σωστά χέρια, το BDM μπορεί να κάνει θαύματα: οι εργασίες θα ολοκληρωθούν γρήγορα και με ελάχιστους υπολογιστικούς πόρους.

Το θέλεις κι εσύ; Μάθετε να χρησιμοποιείτε τη δυνατότητα pushdown στο BDM για τη διανομή του υπολογιστικού φορτίου σε διαφορετικές πλατφόρμες. Η τεχνολογία Pushdown σάς επιτρέπει να μετατρέψετε τη χαρτογράφηση σε σενάριο και να επιλέξετε το περιβάλλον στο οποίο θα εκτελεστεί αυτό το σενάριο. Αυτή η επιλογή σας επιτρέπει να συνδυάσετε τα δυνατά σημεία διαφορετικών πλατφορμών και να επιτύχετε τη μέγιστη απόδοσή τους.

Για να διαμορφώσετε το περιβάλλον εκτέλεσης σεναρίου, πρέπει να επιλέξετε τον τύπο pushdown. Το σενάριο μπορεί να εκτελεστεί εξ ολοκλήρου στο Hadoop ή να διανεμηθεί μερικώς μεταξύ της πηγής και του νεροχύτη. Υπάρχουν 4 πιθανοί τύποι pushdown. Η αντιστοίχιση δεν χρειάζεται να μετατραπεί σε σενάριο (εγγενής). Η αντιστοίχιση μπορεί να πραγματοποιηθεί όσο το δυνατόν περισσότερο στην πηγή (πηγή) ή πλήρως στην πηγή (πλήρης). Η χαρτογράφηση μπορεί επίσης να μετατραπεί σε σενάριο Hadoop (καμία).

Βελτιστοποίηση Pushdown

Οι αναφερόμενοι 4 τύποι μπορούν να συνδυαστούν με διαφορετικούς τρόπους - το pushdown μπορεί να βελτιστοποιηθεί για τις συγκεκριμένες ανάγκες του συστήματος. Για παράδειγμα, είναι συχνά πιο κατάλληλο να εξαγάγετε δεδομένα από μια βάση δεδομένων χρησιμοποιώντας τις δικές της δυνατότητες. Και τα δεδομένα θα μετατραπούν χρησιμοποιώντας το Hadoop, ώστε να μην υπερφορτωθεί η ίδια η βάση δεδομένων.

Ας εξετάσουμε την περίπτωση που και η πηγή και ο προορισμός βρίσκονται στη βάση δεδομένων και μπορεί να επιλεγεί η πλατφόρμα εκτέλεσης μετασχηματισμού: ανάλογα με τις ρυθμίσεις, θα είναι Informatica, διακομιστής βάσης δεδομένων ή Hadoop. Ένα τέτοιο παράδειγμα θα σας επιτρέψει να κατανοήσετε με μεγαλύτερη ακρίβεια την τεχνική πλευρά της λειτουργίας αυτού του μηχανισμού. Φυσικά, στην πραγματική ζωή, αυτή η κατάσταση δεν προκύπτει, αλλά είναι η καταλληλότερη για την επίδειξη λειτουργικότητας.

Ας πάρουμε τη χαρτογράφηση για να διαβάσουμε δύο πίνακες σε μια ενιαία βάση δεδομένων Oracle. Και αφήστε τα αποτελέσματα της ανάγνωσης να καταγράφονται σε έναν πίνακα στην ίδια βάση δεδομένων. Το σχήμα χαρτογράφησης θα είναι ως εξής:

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Με τη μορφή χαρτογράφησης στο Informatica BDM 10.2.1 μοιάζει με αυτό:

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Τύπος pushdown – εγγενής

Εάν επιλέξουμε τον εγγενή τύπο pushdown, τότε η αντιστοίχιση θα γίνει στον διακομιστή Informatica. Τα δεδομένα θα διαβαστούν από τον διακομιστή Oracle, θα μεταφερθούν στον διακομιστή Informatica, θα μετατραπούν εκεί και θα μεταφερθούν στο Hadoop. Με άλλα λόγια, θα έχουμε μια κανονική διαδικασία ETL.

Τύπος pushdown – πηγή

Όταν επιλέγουμε τον τύπο πηγής, έχουμε την ευκαιρία να διανείμουμε τη διαδικασία μας μεταξύ του διακομιστή βάσης δεδομένων (DB) και του Hadoop. Όταν μια διεργασία εκτελείται με αυτήν τη ρύθμιση, τα αιτήματα για ανάκτηση δεδομένων από πίνακες θα αποστέλλονται στη βάση δεδομένων. Και τα υπόλοιπα θα εκτελεστούν με τη μορφή βημάτων στο Hadoop.
Το διάγραμμα εκτέλεσης θα μοιάζει με αυτό:

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Παρακάτω είναι ένα παράδειγμα ρύθμισης του περιβάλλοντος χρόνου εκτέλεσης.

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Σε αυτήν την περίπτωση, η χαρτογράφηση θα πραγματοποιηθεί σε δύο βήματα. Στις ρυθμίσεις του θα δούμε ότι έχει μετατραπεί σε σενάριο που θα σταλεί στην πηγή. Επιπλέον, ο συνδυασμός πινάκων και ο μετασχηματισμός δεδομένων θα εκτελεστούν με τη μορφή ενός παρακαμφθέντος ερωτήματος στην πηγή.
Στην παρακάτω εικόνα, βλέπουμε μια βελτιστοποιημένη αντιστοίχιση στο BDM και ένα επανακαθορισμένο ερώτημα στην πηγή.

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Ο ρόλος του Hadoop σε αυτή τη διαμόρφωση θα περιοριστεί στη διαχείριση της ροής δεδομένων - στην ενορχήστρωση της. Το αποτέλεσμα του ερωτήματος θα σταλεί στο Hadoop. Μόλις ολοκληρωθεί η ανάγνωση, το αρχείο από το Hadoop θα γραφτεί στο νεροχύτη.

Τύπος pushdown – πλήρης

Όταν επιλέγετε τον πλήρη τύπο, η αντιστοίχιση θα μετατραπεί πλήρως σε ερώτημα βάσης δεδομένων. Και το αποτέλεσμα του αιτήματος θα σταλεί στο Hadoop. Ένα διάγραμμα μιας τέτοιας διαδικασίας παρουσιάζεται παρακάτω.

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Ένα παράδειγμα ρύθμισης φαίνεται παρακάτω.

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Ως αποτέλεσμα, θα έχουμε μια βελτιστοποιημένη χαρτογράφηση παρόμοια με την προηγούμενη. Η μόνη διαφορά είναι ότι όλη η λογική μεταφέρεται στον δέκτη με τη μορφή παράκαμψης της εισαγωγής του. Ένα παράδειγμα βελτιστοποιημένης χαρτογράφησης παρουσιάζεται παρακάτω.

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Εδώ, όπως και στην προηγούμενη περίπτωση, ο Hadoop παίζει τον ρόλο του μαέστρου. Αλλά εδώ η πηγή διαβάζεται στο σύνολό της και στη συνέχεια η λογική επεξεργασίας δεδομένων εκτελείται σε επίπεδο δέκτη.

Ο τύπος pushdown είναι μηδενικός

Λοιπόν, η τελευταία επιλογή είναι ο τύπος pushdown, εντός του οποίου η αντιστοίχιση μας θα μετατραπεί σε σενάριο Hadoop.

Η βελτιστοποιημένη χαρτογράφηση θα μοιάζει τώρα ως εξής:

Πώς να μετακινήσετε, να ανεβάσετε και να ενσωματώσετε πολύ μεγάλα δεδομένα φθηνά και γρήγορα; Τι είναι η βελτιστοποίηση pushdown;

Εδώ τα δεδομένα από τα αρχεία προέλευσης θα διαβαστούν πρώτα στο Hadoop. Στη συνέχεια, χρησιμοποιώντας δικά του μέσα, αυτά τα δύο αρχεία θα συνδυαστούν. Μετά από αυτό, τα δεδομένα θα μετατραπούν και θα φορτωθούν στη βάση δεδομένων.

Κατανοώντας τις αρχές της βελτιστοποίησης pushdown, μπορείτε να οργανώσετε πολύ αποτελεσματικά πολλές διαδικασίες για εργασία με μεγάλα δεδομένα. Έτσι, πολύ πρόσφατα, μια μεγάλη εταιρεία, μέσα σε λίγες μόνο εβδομάδες, κατέβασε μεγάλα δεδομένα από την αποθήκευση στο Hadoop, τα οποία είχε συλλέξει στο παρελθόν για αρκετά χρόνια.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο