Διαδικασία ETL (Extract, Transform και Load) στην αποθήκη δεδομένων

Πίνακας περιεχομένων:

Anonim

Τι είναι το ETL;

Το ETL είναι μια διαδικασία που εξάγει τα δεδομένα από διαφορετικά συστήματα προέλευσης και μετά μετατρέπει τα δεδομένα (όπως εφαρμογή υπολογισμών, συνενώσεις κ.λπ.) και τελικά φορτώνει τα δεδομένα στο σύστημα Data Warehouse. Η πλήρης μορφή του ETL είναι Extract, Transform και Load.

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

Προκειμένου να διατηρηθεί η αξία του ως εργαλείο για τους υπεύθυνους λήψης αποφάσεων, το σύστημα αποθήκης δεδομένων πρέπει να αλλάξει με τις επιχειρηματικές αλλαγές. Το ETL είναι μια επαναλαμβανόμενη δραστηριότητα (καθημερινή, εβδομαδιαία, μηνιαία) ενός συστήματος αποθήκης δεδομένων και πρέπει να είναι ευέλικτη, αυτοματοποιημένη και καλά τεκμηριωμένη.

Σε αυτό το σεμινάριο ETL, θα μάθετε-

  • Τι είναι το ETL;
  • Γιατί χρειάζεστε ETL;
  • Διαδικασία ETL στις Αποθήκες δεδομένων
  • Βήμα 1) Εξαγωγή
  • Βήμα 2) Μετασχηματισμός
  • Βήμα 3) Φόρτωση
  • Εργαλεία ETL
  • Βέλτιστες πρακτικές ETL διαδικασία

Γιατί χρειάζεστε ETL;

Υπάρχουν πολλοί λόγοι για την υιοθέτηση του ETL στον οργανισμό:

  • Βοηθά τις εταιρείες να αναλύουν τα επιχειρηματικά τους δεδομένα για τη λήψη κρίσιμων επιχειρηματικών αποφάσεων.
  • Οι βάσεις δεδομένων συναλλαγών δεν μπορούν να απαντήσουν σε πολύπλοκες επιχειρηματικές ερωτήσεις που μπορούν να απαντηθούν με το παράδειγμα ETL.
  • Η αποθήκη δεδομένων παρέχει ένα κοινό αποθετήριο δεδομένων
  • Το ETL παρέχει μια μέθοδο μεταφοράς δεδομένων από διάφορες πηγές σε αποθήκη δεδομένων.
  • Καθώς οι πηγές δεδομένων αλλάζουν, η αποθήκη δεδομένων θα ενημερωθεί αυτόματα.
  • Το καλά σχεδιασμένο και τεκμηριωμένο σύστημα ETL είναι σχεδόν απαραίτητο για την επιτυχία ενός έργου Data Warehouse.
  • Να επιτρέπεται η επαλήθευση των κανόνων μετασχηματισμού, συγκέντρωσης και υπολογισμών.
  • Η διαδικασία ETL επιτρέπει τη σύγκριση δειγμάτων δεδομένων μεταξύ της πηγής και του συστήματος στόχου.
  • Η διαδικασία ETL μπορεί να εκτελέσει πολύπλοκους μετασχηματισμούς και απαιτεί την επιπλέον περιοχή για την αποθήκευση των δεδομένων.
  • Το ETL βοηθά στη μετεγκατάσταση δεδομένων σε αποθήκη δεδομένων. Μετατροπή στις διάφορες μορφές και τύπους για συμμόρφωση με ένα συνεπές σύστημα.
  • Το ETL είναι μια προκαθορισμένη διαδικασία πρόσβασης και χειρισμού δεδομένων προέλευσης στη βάση δεδομένων προορισμού.
  • Το ETL στην αποθήκη δεδομένων προσφέρει βαθύ ιστορικό πλαίσιο για την επιχείρηση.
  • Βοηθά στη βελτίωση της παραγωγικότητας επειδή κωδικοποιεί και επαναχρησιμοποιείται χωρίς να χρειάζεται τεχνικές δεξιότητες.

Διαδικασία ETL στις Αποθήκες δεδομένων

Το ETL είναι μια διαδικασία 3 βημάτων

Διαδικασία ETL

Βήμα 1) Εξαγωγή

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

Η αποθήκη δεδομένων πρέπει να ενσωματώνει συστήματα που έχουν διαφορετικά

DBMS, Hardware, Λειτουργικά Συστήματα και Πρωτόκολλα Επικοινωνίας. Οι πηγές θα μπορούσαν να περιλαμβάνουν εφαρμογές παλαιού τύπου όπως Mainframes, προσαρμοσμένες εφαρμογές, συσκευές σημείων επαφής όπως ATM, διακόπτες κλήσεων, αρχεία κειμένου, υπολογιστικά φύλλα, ERP, δεδομένα από προμηθευτές, συνεργάτες, μεταξύ άλλων.

Ως εκ τούτου, χρειάζεται κάποιος λογικός χάρτης δεδομένων προτού εξαχθούν και φορτωθούν φυσικά. Αυτός ο χάρτης δεδομένων περιγράφει τη σχέση μεταξύ πηγών και δεδομένων στόχων.

Τρεις μέθοδοι εξαγωγής δεδομένων:

  1. Πλήρης εξαγωγή
  2. Μερική εξαγωγή - χωρίς ειδοποίηση ενημέρωσης.
  3. Μερική εξαγωγή - με ειδοποίηση ενημέρωσης

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

Ορισμένες επικυρώσεις γίνονται κατά την Εξαγωγή:

  • Συμφιλίωση εγγραφών με τα δεδομένα προέλευσης
  • Βεβαιωθείτε ότι δεν έχουν φορτωθεί ανεπιθύμητα / ανεπιθύμητα δεδομένα
  • Έλεγχος τύπου δεδομένων
  • Καταργήστε όλους τους τύπους διπλών / κατακερματισμένων δεδομένων
  • Ελέγξτε εάν όλα τα κλειδιά είναι στη θέση τους ή όχι

Βήμα 2) Μετασχηματισμός

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

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

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

Ζητήματα ενοποίησης δεδομένων

Ακολουθούν τα προβλήματα ακεραιότητας δεδομένων:

  1. Διαφορετική ορθογραφία του ίδιου ατόμου όπως ο Jon, John κ.λπ.
  2. Υπάρχουν πολλοί τρόποι για να δηλώσετε το όνομα της εταιρείας όπως το Google, το Google Inc.
  3. Χρήση διαφορετικών ονομάτων όπως το Cleaveland, το Cleveland.
  4. Μπορεί να υπάρχει περίπτωση να δημιουργούνται διαφορετικοί αριθμοί λογαριασμού από διάφορες εφαρμογές για τον ίδιο πελάτη.
  5. Σε ορισμένα δεδομένα απαιτούνται αρχεία παραμένουν κενά
  6. Μη έγκυρο προϊόν που συλλέγεται στο POS ως μη αυτόματη καταχώριση μπορεί να οδηγήσει σε λάθη.

Οι επικυρώσεις γίνονται σε αυτό το στάδιο

  • Φιλτράρισμα - Επιλέξτε μόνο συγκεκριμένες στήλες για φόρτωση
  • Χρήση κανόνων και πινάκων αναζήτησης για τυποποίηση δεδομένων
  • Μετατροπή σετ χαρακτήρων και χειρισμός κωδικοποίησης
  • Μετατροπή μονάδων μετρήσεων όπως μετατροπή ώρας ημερομηνίας, μετατροπές νομισμάτων, αριθμητικές μετατροπές κ.λπ.
  • Έλεγχος επικύρωσης κατωφλίου δεδομένων. Για παράδειγμα, η ηλικία δεν μπορεί να υπερβαίνει τα δύο ψηφία.
  • Επικύρωση ροής δεδομένων από την περιοχή σταδιοποίησης στους ενδιάμεσους πίνακες.
  • Τα υποχρεωτικά πεδία δεν πρέπει να παραμένουν κενά.
  • Καθαρισμός (για παράδειγμα, χαρτογράφηση NULL σε 0 ή Φύλο Αρσενικό σε "M" και Θηλυκό σε "F" κ.λπ.)
  • Διαχωρίστε μια στήλη σε πολλαπλάσια και συγχωνεύστε πολλές στήλες σε μία στήλη.
  • Μεταφορά σειρών και στηλών,
  • Χρησιμοποιήστε αναζητήσεις για συγχώνευση δεδομένων
  • Χρήση οποιασδήποτε σύνθετης επικύρωσης δεδομένων (π.χ., εάν οι δύο πρώτες στήλες μιας σειράς είναι κενές, τότε απορρίπτει αυτόματα τη σειρά από την επεξεργασία)

Βήμα 3) Φόρτωση

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

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

Τύποι φόρτωσης:

  • Αρχική φόρτωση - συμπλήρωση όλων των πινάκων αποθήκης δεδομένων
  • Αυξητικό φορτίο - εφαρμογή συνεχιζόμενων αλλαγών, όταν απαιτείται περιοδικά.
  • Πλήρης ανανέωση - μείωση των περιεχομένων ενός ή περισσότερων πινάκων και επαναφόρτωση με νέα δεδομένα.

Φόρτωση επαλήθευσης

  • Βεβαιωθείτε ότι τα βασικά δεδομένα πεδίου δεν λείπουν ούτε είναι μηδενικά.
  • Δοκιμή προβολών μοντελοποίησης με βάση τους πίνακες προορισμού.
  • Ελέγξτε ότι οι συνδυασμένες τιμές και τα υπολογισμένα μέτρα.
  • Έλεγχοι δεδομένων στον πίνακα διαστάσεων καθώς και στον πίνακα ιστορικού.
  • Ελέγξτε τις αναφορές BI στον πίνακα πραγματικών στοιχείων και διαστάσεων.

Εργαλεία ETL

Υπάρχουν πολλά εργαλεία αποθήκευσης δεδομένων που διατίθενται στην αγορά. Εδώ είναι μερικά από τα πιο εξέχοντα:

1. MarkLogic:

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

https://www.marklogic.com/product/getting-started/


2. Oracle:

Η Oracle είναι η κορυφαία βάση δεδομένων στον κλάδο. Προσφέρει ένα ευρύ φάσμα επιλογών λύσεων Data Warehouse τόσο για εσωτερικές όσο και για cloud Βοηθά στη βελτιστοποίηση των εμπειριών των πελατών αυξάνοντας την επιχειρησιακή αποδοτικότητα.

https://www.oracle.com/index.html


3. Amazon RedShift:

Το Amazon Redshift είναι εργαλείο Datawarehouse. Είναι ένα απλό και οικονομικό εργαλείο για την ανάλυση όλων των τύπων δεδομένων χρησιμοποιώντας τυπικό SQL και υπάρχοντα εργαλεία BI. Επιτρέπει επίσης την εκτέλεση σύνθετων ερωτημάτων έναντι petabytes δομημένων δεδομένων.

https://aws.amazon.com/redshift/?nc2=h_m1

Ακολουθεί μια πλήρης λίστα με τα χρήσιμα Εργαλεία αποθήκης δεδομένων.

Βέλτιστες πρακτικές ETL διαδικασία

Ακολουθούν οι βέλτιστες πρακτικές για τα βήματα της διαδικασίας ETL:

Ποτέ μην προσπαθείτε να καθαρίσετε όλα τα δεδομένα:

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

Ποτέ μην καθαρίζετε οτιδήποτε:

Πάντα σχεδιάζετε να καθαρίζετε κάτι γιατί ο μεγαλύτερος λόγος για την κατασκευή της Data Warehouse είναι να προσφέρετε καθαρότερα και πιο αξιόπιστα δεδομένα.

Προσδιορίστε το κόστος καθαρισμού των δεδομένων:

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

Για να επιταχύνετε την επεξεργασία ερωτημάτων, έχετε βοηθητικές προβολές και ευρετήρια:

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

Περίληψη:

  • ETL Stand για Εξαγωγή, Μετασχηματισμό και Φόρτωση.
  • Το ETL παρέχει μια μέθοδο μεταφοράς δεδομένων από διάφορες πηγές σε αποθήκη δεδομένων.
  • Στο πρώτο βήμα εξαγωγής, τα δεδομένα εξάγονται από το σύστημα προέλευσης στην περιοχή σταδιοποίησης.
  • Στο στάδιο του μετασχηματισμού, τα δεδομένα που εξάγονται από την πηγή καθαρίζονται και μετασχηματίζονται.
  • Η φόρτωση δεδομένων στην αποθήκη δεδομένων προορισμού είναι το τελευταίο βήμα της διαδικασίας ETL.