Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και...

61
Δρ. Παναγιώτης Συμεωνίδης – Αποθήκες Δεδομένων – Data Warehouses 1 Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών Αριστοτέλειο Πανεπιστήμιο Θεσ/νικης http://delab.csd.auth.gr/ http://delab.csd.auth.gr/ ~symeon ~symeon ΑΠΟΘΗΚΕΣ ΔΕΔΟΜΕΝΩΝ (Data Warehouses)

Upload: octavius-buchanan

Post on 04-Jan-2016

67 views

Category:

Documents


4 download

DESCRIPTION

ΑΠΟΘΗΚΕΣ ΔΕΔΟΜΕΝΩΝ ( Data Warehouses). Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών Αριστοτέλειο Πανεπιστήμιο Θεσ/νικης. http://delab.csd.auth.gr/~symeon. On-Line Transaction Processing (OLTP) (1/3). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Δρ. Παναγιώτης Συμεωνίδης – Αποθήκες Δεδομένων – Data Warehouses 1

Δρ. Παναγιώτης Συμεωνίδης

Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών

Αριστοτέλειο Πανεπιστήμιο Θεσ/νικης

http://delab.csd.auth.gr/~symeonhttp://delab.csd.auth.gr/~symeon

ΑΠΟΘΗΚΕΣ ΔΕΔΟΜΕΝΩΝ (Data Warehouses)

Page 2: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

2

Σύστημα Επεξεργασίας Δοσοληψιών: On-Line Transaction Processing (OLTP)

Ένα πλήρες σύστημα που περιέχει εργαλεία για προγραμματισμό εφαρμογών, εκτέλεση και διαχείριση των δοσοληψιών

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

Σχεσιακή Βάση Δεδομένων

Δίκτυο

Προγράμματα εφαρμογής

Εξαιρετικά κρίσιμη για τη λειτουργία κάθε οργανισμού

On-Line Transaction Processing (OLTP) (1/3)

Page 3: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

3

DB

Κράτησε για τον κ. Χ την

θέση 13Α για Αθήνα!

Κράτησε για τον κ. Χ την

θέση 13Α για Αθήνα!

Κράτησε για τον κ. Y την θέση 1C για

Κέρκυρα!

Κράτησε για τον κ. Y την θέση 1C για

Κέρκυρα!

Πόσοι ταξιδεύουν για Θεσσαλονίκη ?

Πόσοι ταξιδεύουν για Θεσσαλονίκη ?

1

100

...

OLTP – Αεροπορική Εταιρεία

On-Line Transaction Processing (OLTP) (2/3)

Page 4: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

4

DB

ΑΤΜ

Ταμείο

Πιστωτικές κάρτες

Δάνεια

OLTP – Τράπεζα

On-Line Transaction Processing (OLTP) (3/3)

Page 5: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

5

Ελάχιστος χρόνος διαθέσιμος για την εκτέλεση μιας δοσοληψίας.

Περιορισμένος αριθμός προσβάσεων στο δίσκο.

Περιορισμένος αριθμός υπολογισμών.

Κάτω όριο λειτουργικών απαιτήσεων: τουλάχιστον 100 TPS σε μια ΒΔ της τάξης του 1 GB

Άνω όριο λειτουργικών απαιτήσεων: μέχρι 50000 TPS σε μια ΒΔ μεγαλύτερη του 1 ΤB.

OLTP – Βασικά Χαρακτηριστικά

Page 6: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός OLTP

Αρκετά δεδομένα μπορεί να είναι ελλιπή (missing data)

ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ

Απόρριψη εγγραφών των οποίων κάποιες τιμές λείπουν

Αντικατάσταση των τιμών που λείπουν με την μέση τιμή της κατηγορίας

Αντικατάσταση των απουσών τιμών χαρακτηριστικών με τις αντίστοιχες τιμές παρόμοιων χαρακτηριστικών

Page 7: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός OLTP

Αρκετά δεδομένα μπορεί να έχουν θόρυβο και ασυνέπειες (Noisy and inconsistent data)

Εντοπισμός διπλότυπων εγγραφώνπ.χ. Συμεωνίδης & Συμαιωνίδης

Εντοπισμός λανθασμένων τιμών χαρακτηριστικών

π.χ. Μηδενική τιμή σε ένα χαρακτηριστικό που αφορά το βάρος προϊόντος

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

Page 8: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός OLTP

Τα δεδομένα μπορεί να είναι ετερογενή και να παρουσιάζουν συνωνυμίες ή αμφισημίες

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

Page 9: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

9

Εννοιολογική εναρμόνιση

EMP ID Name Birth Salary Total Income

DeptID

110 Kostas 1/1/72 1500 1200 132

… … …

Source 1:Personnel(Cobol)

EMPINCOME

IL_ID Descr

10 Μισθός

20 Επίδομα Τέκνων

30 Φόρος

... ...

Income Lookup

EMP ID IL_ID Amount

110 10 1500

110 30 300

EMP

EMP ID

Name Age

110 Kostas 30

120 Vasilis 48

130 Roula 29

Source 2: Accounting

(DB2)

Page 10: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

10

Αποκανονικοποίηση - Denormalization

EMPINCOME

IL_ID Descr

10 Μισθός

20 Επίδομα Τέκνων

30 Φόρος

... ...Income Lookup

EMP ID IL_ID Amount

110 10 1500

110 30 300

EMP

EMP ID

Name Age

110 Kostas 30

120 Vasilis 48

130 Roula 29

DW.EMP

DW

?

Page 11: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

11

Καθαρισμός των δεδομένων – Ομογενοποίηση κλειδιών

R1

ID Descr

10 Pepsi

20 Epsa

R2

ID Descr

100 Coca

110 Pepsi

120 EpsaDW.R

Lookup

Source ID

Source

Surrogate Key

10 R1 100

20 R1 110

10 R2 110

20 R2 120

ID Descr

10 Coca

20 Pepsi

+

+

Page 12: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός OLTP

Λόγω διαδικασιών ενημέρωσης, εισαγωγής, διαγραφής διατηρούν δεδομένα μόνο για την τρέχουσα κατάσταση.

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

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

Προκύπτουν περίπλοκα ερωτήματα SQL τα οποία δεν είναι εύκολο να συνταχθούν.

Page 13: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός OLTP

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

Τα δεδομένα οργανώνονται με Διάγραμμα Οντοτήτων-Συσχετίσεων (ΔΟΣ) και αρχών όπως η κανονικοποίηση, που παράγουν περίπλοκες βάσεις στο νοητικό επίπεδο

Page 14: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

14

Aνάλυση μεγάλου όγκου σύνθετων δεδομένων από διαφορετικές εφαρμογές

Ειδικού τύπου ερωτήματα συνάθροισης

Οπτικοποίηση/στατιστική ανάλυση/πολυδιάστατη ανάλυση

Εξόρυξη Γνώσης (Knowledge Discovery/Data Mining)

Εξεύρεση προτύπων σε τεράστιες βάσεις δεδομένων

OLAP + Data Mining => On-Line Analytical Mining

On-Line Αnalytical Processing (OLAP & OLAM)

Page 15: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

15

Ποιος ήταν ο όγκος πωλήσεων ανά περιοχή και κατηγορία προϊόντος την περασμένη χρονιά;

Πόσο σχετίζονται οι αυξήσεις τιμών των υπολογιστών με τα κέρδη των πωλήσεων τα 10 τελευταία χρόνια;

Ποια ήταν τα δέκα πρώτα καταστήματα σε πωλήσεις CD;

Τι ποσοστό από τους πελάτες που αγοράζουν αναψυκτικά αγοράζουν και πατατάκια;

Παραδείγματα ερωτήσεων OLAP

Page 16: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

16

Πρόσβαση σε μεγάλο όγκο δεδομένων

Συμμετοχή αθροιστικών και ιστορικών δεδομένων σε πολύπλοκες ερωτήσεις

Μεταβολή της «οπτικής γωνίας» παρουσίασης των δεδομένων (π.χ., από πωλήσεις ανά περιοχή -> πωλήσεις ανά τμήμα κλπ.)

Συμμετοχή πολύπλοκων υπολογισμών (π.χ. στατιστικές συναρτήσεις)

Γρήγορη απάντηση σε οποιαδήποτε χρονική στιγμή τεθεί ένα ερώτημα ( “On-Line”).

Λειτουργικά Χαρακτηριστικά Απαιτήσεων OLAP

Page 17: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

17

OLTP OLAPΛειτουργίες Αυτοματισμός Χάραξη

καθημερινών στρατηγικής εργασιών

Τύπος Δεδομένων Λεπτομερή Αθροιστικά

Όγκος Δεδομένων ~ 100 GB ~ 1 TB

Φύση Δεδομένων Δυναμικά Στατικά, Iστορικά

OLTP vs. OLAP

Page 18: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

18

OLTP OLAP

I/O Τύποι Περιορισμένο I/O Εκτεταμένο I/O

Τροποποιήσεις Συνεχείς Περιοδικές Ενημερώσεις

Φόρτος Δοσοληψίες με Ερωτήσεις που πρόσβαση λίγων σαρώνουνεγγραφών εκατομμύρια εγγραφών

Σχεδίαση ΒΔ Κατευθυνόμενη Κατευθυνόμενη από Εφαρμογή από Περιεχόμενο

OLTP vs. OLAP

Page 19: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

19

OLTP OLAPΤυπικοί Χρήστες Χαμηλόβαθμοι Υπ. Υψηλόβαθμοι Υπ.

Χρήση Μέσω Ad-hocπροκατασκευασμένωνφορμών

Αριθμός Χρηστών Χιλιάδες Δεκάδες

Εστίαση Εισαγωγή Εξαγωγή

Δεδομένων Πληροφοριών

OLTP vs. OLAP

Page 20: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Αποθήκες δεδομένων

Η τεχνολογία των αποθηκών δεδομένων προσφέρει

ολοκλήρωση ετερογενών πηγών δεδομένων και

πλατφόρμα για αποδοτική ανάλυση ιστορικών δεδομένων

Μία αποθήκη δεδομένων αποτελεί μία συλλογή δεδομένων που

επιλέγονται από τις Επιχειρησιακές Βάσεις Δεδομένων,

Ολοκληρώνονται (integrated),

τα δεδομένα αναλύονται με διαδικασίες όπως η On-line Analytical Processing (OLAP) ή η εξόρυξη δεδομένων.

Page 21: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

21

Μια κεντρικοποιημένη ΒΔ με σκοπό:

την ολοκλήρωση (integration) ετερογενών πηγών πληροφοριών (data sources) => συνάθροιση όλης της ενδιαφέρουσας πληροφορίας σε μία τοποθεσία

την αποφυγή της σύγκρουσης μεταξύ OLTP και OLAP (DSS) συστημάτων => απόδοση εφαρμογών και διαθεσιμότητα του συστήματος

Μπορεί να συμπληρώνεται και από εξειδικευμένα θεματικά υποσύνολα (Data Marts) για περαιτέρω απόδοση των OLAP εφαρμογών

Αποθήκες δεδομένων

Page 22: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

22

Ιστορικά Δεδομένα Ο χρονικός ορίζοντας μια αποθήκης δεδομένων είναι πολύ μεγαλύτερος από ότι ενός συστήματος σε λειτουργία

Η ΒΔ έχει τα τωρινά δεδομένα ενώ οι αποθήκες διατηρούν και παλιά δεδομένα (πχ τα προηγούμενα 5-10 χρόνια)

Τροποποιήσεις

Οι τροποποιήσεις στις πηγές δεδομένων δεν φαίνονται άμεσα στις αποθήκες δεδομένων, συνήθως περιοδικά

Μόνο δύο βασικές λειτουργίες: αρχικό φόρτωμα των δεδομένων (loading) και προσπέλαση δεδομένων (access)

Αποθήκες δεδομένων – Λειτουργικά Χαρακτηριστικά

Page 23: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Επιτυχία αποθηκών δεδομένων (1/2)

Πρώτες προσπάθειες στα μέσα της δεκαετίας του 1990, οπότε οι αποθήκες δεδομένων εξελίχθηκαν σε αγορά της τάξης των 2 δις $.

Στα τέλη της δεκαετίας του 1990, το 95% των 1000 επιχειρήσεων του Fortune ανέπτυσσαν αποθήκες δεδομένων, οπότε η αγορά των αποθηκών δεδομένων ανήρθε οικονομικά της τάξης των 7 δις $.

Εκτιμήθηκε ότι σε 3 χρόνια από την ανάπτυξη μίας αποθήκης δεδομένων, η απόσβεση γίνεται σε ποσοστό 400%.

Page 24: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Επιτυχία αποθηκών δεδομένων (2/2)

Επιτυχημένη περίπτωση εφαρμογής:

αλυσίδα υπεραγορών Walmart, με 2000 υποκαταστήματα.

βοήθησε την Walmart να βελτιστοποιήσει τις διαδικασίες προμήθειας προϊόντων και να μειώσει το κόστος αγοράς τους κατά 20%.

ο όγκος των δεδομένων στην αποθήκη δεδομένων της Walmart ανέρχεται στα 24 ΤΒ, σε ένα σύστημα 96 κόμβων με 900 επεξεργαστές και 2700 δίσκους.

Page 25: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Αποθήκες δεδομένων – Βασικές Λειτουργίες

Page 26: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Αρχιτεκτονική αποθηκών δεδομένων

Page 27: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Μετασχηματισμός Δεδομένων

• Κανονικοποίηση Δεδομένων

• Μετατροπή τύπων δεδομένων

• Επιλογή χαρακτηριστικών και στιγμιοτύπων

Page 28: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Κανονικοποίηση Δεδομένων

• Δεκαδική κλιμάκωση

• Κανονικοποίηση Ελαχίστου-Μεγίστου

• Κανονικοποίηση με χρήση τιμών Z-scores

lueoriginalVa

newValue

oldMinoldMax

oldMinlueoriginalVanewValue

Page 29: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

29

Μοντέλο Πολυδιάστατων Δεδομένων (Κύβος) και Λειτουργίες που εκτελούνται σε αυτό

Page 30: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

30

Μια αποθήκη δεδομένων βασίζεται σε ένα πολυδιάστατο μοντέλο δεδομένων (multidimensional data model) που αναπαριστά τα δεδομένα με τη μορφή ενός κύβου δεδομένων (data cube)

Ένας κύβος δεδομένων (data cube) επιτρέπει την μοντελοποίηση και την θεώρηση των δεδομένων από πολλές οπτικές γωνίες – Διαστάσεις (dimensions)

Για συγκεκριμένες τιμές στις διαστάσεις μια Μέτρηση (Measure) αφορά αυτό που μας ενδιαφέρει να μετρήσουμε

Item

Time

Κύβος ΠΩΛΗΣΕΙΣ

Locati

onΔιαστάσεις

Μέτρηση: Αριθμός Πωλήσεων για τις συγκεκριμένες διαστάσεις (Location, Item, Time)

Ορισμός κύβου δεδομένων

Page 31: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

31

Διαστάσεις: Product, Region, DateΙεραρχίες διαστάσεων:

Industry

Category

Product

Country

Region

City

Store

Year

Quarter

Month Week

Day

Item

Time

Κύβος ΠΩΛΗΣΕΙΣ

Locati

onΜέτρηση: Αριθμός Πωλήσεων για τις συγκεκριμένες διαστάσεις (Location, Item, Time)

Κάθε διάσταση παίρνει τιμές από διαφορετικά επίπεδα, μπορεί να εκφραστεί σε διαφορετικά επίπεδα λεπτομέρειας

Ιεραρχίες Διαστάσεων

Page 32: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

32

all

Europe North_America

MexicoCanadaSpainGermany

Vancouver

M. WindL. Chan

...

......

... ...

...

all

region

office

country

TorontoFrankfurtcity

Παράδειγμα: Εννοιολογική ιεραρχία (Concept Hierarchy) για Location

Page 33: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

33

Σχήμα Αστέρι (Star schema)Πίνακας γεγονότων στο κέντρο που συνδέεται με ένα σύνολο από πίνακες διαστάσεων

Πίνακας γεγονότων (Fact Table) έχει ως γνωρίσματα:τις μετρήσεις (πχ αριθμός πωλήσεων, τιμή σε δολάρια, κλπ) το πρωτεύον κλειδί κάθε σχετικού πίνακα διαστάσεων

Πίνακες Διαστάσεων Πίνακας με πληροφορία σχετικά με κάθε διάστασηΙtem (item_name, brand, type),Τime(day, week, month, quarter, year)

Μοντέλο Δεδομένων Σχήματος Αστέρα

Page 34: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

34

time_keydayday_of_the_weekmonthquarteryear

time

location_keystreetcitystate_or_provincecountry

location

Πίνακας Γεγονότων ΠΩΛΗΣΕΙΣ

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales

item_keyitem_namebrandtypesupplier_type

item

branch_keybranch_namebranch_type

branch

Μετρήσεις4 διαστάσεις (time, item, location, branch)

Παράδειγμα Σχήματος Αστεριού

Page 35: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

35

Είναι μια βελτίωση του σχήματος αστέρα σύμφωνα με την οποία η ιεραρχία διαστάσεων των πινάκων διάστασης κανονικοποιείται σε ένα σύνολο από μικρότερους πίνακες διαστάσεων

Μοντέλο Δεδομένων Σχήματος Χιονονιφάδας (Snowflake schema)

Page 36: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

36

time_keydayday_of_the_weekmonthquarteryear

time

location_keystreetcity_key

location

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales

item_keyitem_namebrandtypesupplier_key

item

branch_keybranch_namebranch_type

branch

supplier_keysupplier_type

supplier

city_keycitystate_or_provincecountry

city

Πίνακας Γεγονότων ΠΩΛΗΣΕΙΣ

Μετρήσεις

Παράδειγμα Σχήματος Χιονονιφάδας

Page 37: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

37

Βασίζεται σε Πολλαπλούς Πίνακες Γεγονότων που μοιράζονται τους Πίνακες Διαστάσεων.

Μπορούμε να τους δούμε ως συλλογή από αστέρια ή γαλαξίες

Μοντέλο Δεδομένων - Αστερισμοί Γεγονότων (Fact constellations)

Page 38: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

38

time_keydayday_of_the_weekmonthquarteryear

time

location_keystreetcityprovince_or_statecountry

location

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales

item_keyitem_namebrandtypesupplier_type

item

branch_keybranch_namebranch_type

branch

time_key

item_key

shipper_key

from_location

to_location

dollars_cost

units_shipped

shipper_keyshipper_namelocation_keyshipper_type

shipper

Πίνακας Γεγονότων ΠΩΛΗΣΕΙΣ

Μετρήσεις

Πίνακας Γεγονότων ΑΠΟΣΤΟΛΗ

Παράδειγμα Σχήματος Αστερισμών Γεγονότων

Page 39: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

39

Συχνά ο n-D κύβος λέγεται βασικός κυβοειδής (base cuboid). Περιέχει

τον μεγαλύτερο βαθμός λεπτομέρειας.

π.χ. Για κύβο με τέσσερεις διαστάσεις (Item, Time, Branch, Location) έχουμε 4-

D βασικό κυβοειδή

O 0-D cuboid περιέχει τη μεγαλύτερο επίπεδο περίληψης (apex

cuboid).

Το πλέγμα όλων των κυβοειδών ονομάζεται κύβος δεδομένων.

Κύβος Δεδομένων - Ορολογία

Page 40: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

40

time, item

time, item, location

time, item, location, supplier

all

time item location supplier

time , location

time, supplier

item, location

item, supplier

location, supplier

time, item, supplier

time, location, supplier

item, location, supplier

0-D(apex) cuboid

1-D cuboids

2-D cuboids

3-D cuboids

4-D (base) cuboid

Πλέγμα Κυβοειδών – Κύβος δεδομένων

Page 41: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

OLAP και συνάθροιση

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

Οι βασικές συναθροιστικές συναρτήσεις είναιαθροίσματος (sum),

πλήθους (count),

μέσου όρου (avg),

μεγίστου (max), και

ελαχίστου (min).

Page 42: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

42

Εκτός από τις λεπτομερείς πληροφορίες των fact tables, μπορεί να υπολογίσουμε και συναθροίσεις των δεδομένων για καλύτερους χρόνους απόκρισης.

Για παράδειγμα, αν ο fact table είναι

SALES(GeographyCode, ProductCode, TimeCode, BrandCode, Amount, Unit)

μπορούμε να υπολογίσουμε

AVG(amount) ανά Region, Product, Quarter SUM(amount) ανά City MAX(units) ανά Brand, Month, με Region = Europe

Μετρήσεις - Συναθροίσεις

Page 43: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

43

Total annual salesof TV in U.S.A.Date

Produ

ct

Cou

ntr

ysum

sum TV

VCRPC

1Qtr 2Qtr 3Qtr 4Qtr

U.S.A

Canada

Mexico

Παράδειγμα Συναθροίσεων (1/2)

Total annual salesof TV in All countries

Total annual salesof all Devises in All countries

Page 44: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

44

RID City … Amount 1 Athens … $100 2 N.Y. … $300 3 Rome … $120 4 Athens … $250 5 Rome … $180 6 Rome … $65 7 N.Y. … $450

City Amount Athens $350 N.Y. $750 Rome $365

RID City … Amount Level 1 Athens … $100 NULL 2 N.Y. … $300 NULL 3 Rome … $120 NULL 4 Athens … $250 NULL 5 Rome … $180 NULL 6 Rome … $65 NULL 7 N.Y. … $450 NULL 8 Athens … $350 City 9 N.Y. … $750 City

10 Rome … $365 City

Χωριστός πίνακας/όψη αθροισμάτων

Extended Sales table

Sales table

City-dimension sum table

sum

Εκτεταμένος πίνακας πωλήσεων: Ενσωμάτωση των αθροιστικών εγγραφών στον βασικό fact table + μια επιπλέον στήλη που να εξηγεί το επίπεδο συνάθροισης

Παράδειγμα Συναθροίσεων σε πίνακα γεγονότων (2/2)

Page 45: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

45

Συναθροιστική Άνοδος (Roll up): συνάθροιση της πληροφορίας = μετάβαση από χαμηλότερο σε υψηλότερο επίπεδο ιεραρχίας (π.χ. από day σε month)

Αναλυτική Κάθοδος (Drill down): το αντίστροφο του Roll up (π.χ month σε day)

Οριζόντιος Τεμαχισμός (Slice): πράξη της επιλογής εγγραφών (where) από μία διάσταση.

Κάθετος Τεμαχισμός (Dice): πράξη της επιλογής από περισσότερες διαστάσεις.

Περιστροφή (Pivot): αναδιάταξη της προβολής του πολυδιάστατου κύβου στην οθόνη

Βασικές Αλγεβρικές Πράξεις

Page 46: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

46

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

Για παράδειγμα, με ένα roll-up, οι πωλήσεις σε επίπεδο τοπικών μαγαζιών (Store) παράγουν τις συνολικές πωλήσεις σε επίπεδο πόλης (City) και αυτές με τη σειρά τους με ένα ακόμα roll-up παράγουν τις πωλήσεις σε επίπεδο περιοχής (Region).

IndustryCategory

Product

Country

Region

City

Store

Year

Quarter

Month Week

Day

Πράξη Συναθροιστικής ανόδου Roll-up

Page 47: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

47

Sales volume

ElectronicsToysClothingCosmetics

Q1

$5,2$1,9$2,3$1,1

ElectronicsToysClothingCosmetics

Q2

$8,9$0,75$4,6$1,5

Products Store1 Store2

$5,6$1,4$2,6$1,1

$7,2$0,4$4,6$0,5

Sales volume

ElectronicsToysClothingCosmeticsY

ear

1996 $14,1

$2,65$6,9$2,6

Products Store1 Store2

$12,8$1,8$7,2$1,6

Χρόνος: Επίπεδο Quarter Χρόνος: Επίπεδο Year

SUM(Sales volumes in dollars)

Industry

Category

Product

Country

Region

City

Store

Year

Quarter

Month Week

Day

Παράδειγμα Πράξης Roll-up

Page 48: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

48

Ο χρήστης περνά από ένα ανώτερο επίπεδο μίας διάστασης που έχει συγκεντρωτικά δεδομένα σε ένα χαμηλότερο επίπεδο με πιο λεπτομερή δεδομένα. Πρόκειται για την αντίστροφη πράξη του roll-up.

Για παράδειγμα, κατά το drill down, ξεκινάμε από τις πωλήσεις ανά περιοχή (Region) και παίρνουμε τις αναλυτικές πωλήσεις ανά πόλη (City) και μετά τις πωλήσεις ανά κατάστημα (Store).

Industry

Category

Product

Country

Region

City

Store

Year

Quarter

MonthWeek

Day

Πράξη Αναλυτικής καθόδου Drill-Down

Page 49: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

49

Sales volume

ElectronicsToysClothingCosmetics

Q1

$5,2$1,9$2,3$1,1

ElectronicsToysClothingCosmetics

Q2

$8,9$0,75$4,6$1,5

Products Store1 Store2

$5,6$1,4$2,6$1,1

$7,2$0,4$4,6$0,5

Sales volume

VCRCamcorderTVCD player

Q1

$1,4$0,6$2,0$1,2

VCRCamcorderTVCD player

Q2

$2,4$3,3$2,2$1,0

Electronics Store1 Store2

$1,4$0,6$2,4$1,2

$2,4$1,3$2,5$1,0

IndustryCategory

Product

Country

Region

City

Store

Year

Quarter

Month Week

Day

Item: Επίπεδο Industry Item: Επίπεδο Category

Παράδειγμα Πράξης Drill-Down

Page 50: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

50

Εναλλαγή των γραμμών και των στηλών του κύβου, όπως αυτός παρουσιάζεται στην οθόνη

Δεν απαιτείται κανένας νέος υπολογισμός στη ΑΔ

Πράξη Περιστροφής (Pivot)

Page 51: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

51

Sales volume

ElectronicsToysClothingCosmetics

Q1

$5,2$1,9$2,3$1,1

ElectronicsToysClothingCosmetics

Q2

$8,9$0,75$4,6$1,5

Products Store1 Store2

$5,6$1,4$2,6$1,1

$7,2$0,4$4,6$0,5

Sales volume

ElectronicsToysClothingCosmetics

Stor

e 1 $5,2

$1,9$2,3$1,1

ElectronicsToysClothingCosmetics

Stor

e 2 $5,6

$1,4$2,6$1,1

Products Q1 Q2

$8,9$0,75$4,6$1,5

$7,2$0,4$4,6$0,5

Εναλλαγή γραμμών και στηλών

Παράδειγμα Πράξης Pivot

Page 52: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

52

Slice : Επιλογή συγκεκριμένων τιμών από μία διάσταση (where της SQL) π.χ.

Οριζόντιος Τεμαχισμός (slice)

52

Επέλεξε το 1o τρίμηνο από την διάσταση ημερομηνία

Page 53: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

53

Dice : Επιλογή συγκεκριμένων τιμών από περισσότερες διαστάσεις (εξάγει έναν υποκύβο)

Κάθετος Τεμαχισμός (dice)

Page 54: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Παράδειγμα Βιβλιοπωλείου

20 υποκαταστήματα και στα πέντε γεωγραφικά διαμερίσματα της Ελλάδας

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

Οι επιχειρηματικές διαδικασίες του βιβλιοπωλείου περιλαμβάνουν τις πωλήσεις προϊόντων

Μία από τις σημαντικότερες αποφάσεις στην επιχείρηση, αποτελεί η τιμολόγηση/κοστολόγηση των προϊόντων.

Page 55: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

4 σχεδιαστικά βήματα για το σχήμα αστέρα

1) Επιλογή της διαδικασίας που θα μοντελοποιηθεί

2) Επιλογή επιπέδου λεπτομέρειας

3) Επιλογή των πινάκων διαστάσεων

4) Επιλογή των αριθμητικών γεγονότων (μετρήσεων)

Page 56: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Τα 4 βήματα για το βιβλιοπωλείο1) Επιλογή της διαδικασίας που θα μοντελοποιηθεί

Προτεραιότητα στη μοντελοποίηση της διαδικασίας πωλήσεων (πλέον κρίσιμη)

2) Επιλογή επιπέδου λεπτομέρειας όσο το δυνατόν μεγαλύτερο επίπεδο λεπτομέρειας: καταγράφουμε

ξεχωριστά κάθε ατομική συναλλαγή ενός πελάτη

3) Επιλογή των πινάκων διαστάσεων («ποιες πληροφορίες περιγράφουν κάθε γραμμή του πίνακα γεγονότων») πελάτης, προϊόν, ημερομηνία, υποκατάστημα, συναλλαγή

4) Επιλογή των αριθμητικών γεγονότων (τι μετράμε σε κάθε γραμμή του πίνακα γεγονότων) αριθμός τεμαχίων, κόστος πώλησης

Page 57: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Σχήμα αστέρα για το βιβλιοπωλείο

Page 58: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Κύβος δεδομένων Βιβλιοπωλείου (χωρίς διάσταση πελάτη)

Μετρική (measure)

Ιεραρχίες Διαστάσεων

Τεμάχια

Page 59: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Πράξεις OLAP

Page 60: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Πράξεις Roll-up & Drill-Down

Page 61: Δρ. Παναγιώτης Συμεωνίδης Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Δρ. Παναγιώτης Συμεωνίδης – Αποθήκες Δεδομένων – Data Warehouses 61

Δρ. Παναγιώτης Συμεωνίδης

Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων Τμήμα Πληροφορικής

Διατμηματικό Πρόγραμμα Μεταπτυχιακών Σπουδών

Αριστοτέλειο Πανεπιστήμιο Θεσ/νικης

http://delab.csd.auth.gr/~symeonhttp://delab.csd.auth.gr/~symeon

ΑΠΟΘΗΚΕΣ ΔΕΔΟΜΕΝΩΝ (Data Warehouses)