Transcript Lecture 2

ΑΠΟΘΗΚΕΣ ΔΕΔΟΜΕΝΩΝ (Data Warehouses)
Δρ. Παναγιώτης Συμεωνίδης
Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων
Τμήμα Πληροφορικής
Διατμηματικό Πρόγραμμα
Μεταπτυχιακών Σπουδών
Αριστοτέλειο Πανεπιστήμιο Θεσ/νικης
http://delab.csd.auth.gr/~symeon
Δρ. Παναγιώτης Συμεωνίδης – Αποθήκες Δεδομένων – Data Warehouses
1
On-Line Transaction Processing (OLTP) (1/3)
Σύστημα Επεξεργασίας Δοσοληψιών: OnLine Transaction Processing (OLTP)

Ένα
πλήρες
προγραμματισμό
δοσοληψιών
σύστημα
που
περιέχει
εφαρμογών, εκτέλεση και
εργαλεία
διαχείριση

Μια τέτοια εφαρμογή πρέπει να δουλεύει συνεχώς, να
αντεπεξέρχεται αποτυχιών, εξελίσσεται συνεχώς, είναι συνήθως
κατανεμημένη και περιλαμβάνει:
Σχεσιακή Βάση Δεδομένων
Δίκτυο
Προγράμματα εφαρμογής

Εξαιρετικά κρίσιμη για τη λειτουργία κάθε οργανισμού
2
για
των
On-Line Transaction Processing (OLTP) (2/3)
OLTP – Αεροπορική Εταιρεία
Κράτησε για
τον κ. Χ την
θέση 13Α για
Αθήνα!
Κράτησε για
τον κ. Y την
θέση 1C για
Κέρκυρα!
DB
Πόσοι
ταξιδεύουν για
Θεσσαλονίκη ?
3
1
...
100
On-Line Transaction Processing (OLTP) (3/3)
OLTP – Τράπεζα
Δάνεια
Ταμείο
DB
ΑΤΜ
Πιστωτικές
κάρτες
4
OLTP – Βασικά Χαρακτηριστικά
 Ελάχιστος χρόνος διαθέσιμος για την εκτέλεση μιας
δοσοληψίας.
 Περιορισμένος αριθμός προσβάσεων στο δίσκο.
 Περιορισμένος αριθμός υπολογισμών.
 Κάτω όριο λειτουργικών απαιτήσεων:
 τουλάχιστον 100 TPS σε μια ΒΔ της τάξης του 1 GB
 Άνω όριο λειτουργικών απαιτήσεων:
 μέχρι 50000 TPS σε μια ΒΔ μεγαλύτερη του 1 ΤB.
5
Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός
OLTP
Αρκετά δεδομένα μπορεί να είναι ελλιπή
(missing data)
ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ
Απόρριψη εγγραφών των οποίων κάποιες τιμές λείπουν
Αντικατάσταση των τιμών που λείπουν με την μέση
τιμή της κατηγορίας
Αντικατάσταση των απουσών τιμών χαρακτηριστικών
με τις αντίστοιχες τιμές παρόμοιων χαρακτηριστικών
Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός
OLTP
Αρκετά δεδομένα μπορεί να έχουν θόρυβο
και ασυνέπειες (Noisy and inconsistent data)
Εντοπισμός διπλότυπων εγγραφών
π.χ. Συμεωνίδης & Συμαιωνίδης
Εντοπισμός
χαρακτηριστικών
λανθασμένων
τιμών
π.χ. Μηδενική τιμή σε ένα χαρακτηριστικό που αφορά το
βάρος προϊόντος
Εξομάλυνση δεδομένων
π.χ. περιορισμός του αριθμού
αριθμητικού χαρακτηριστικού
των
τιμών
ενός
Προβλήματα σχεσιακών Βάσεων Δεδομένων ενός
OLTP
Τα δεδομένα μπορεί να είναι ετερογενή και
να παρουσιάζουν συνωνυμίες ή αμφισημίες
Π.χ.,
πελάτης
καταχωρημένος με
διαφορετικά στοιχεία στη βάσης του
τμήματος πωλήσεων από ότι στη βάση
του τμήματος μάρκετινγκ.
Εννοιολογική εναρμόνιση
Source 1:
Personnel
(Cobol)
EMP ID
Name
110
Kostas 1/1/72
…
…
Source 2: Accounting
(DB2)
EMP
ID
Name
110
Kostas 30
120
Vasilis 48
130
Roula
Salary Total
DeptID
Income
1500
1200
132
…
EMP ID IL_ID Amount
110
10
1500
110
30
300
EMP
INCOME
IL_ID Descr
Age
29
Birth
EMP
10
Μισθός
20
Επίδομα
Τέκνων
30
Φόρος
...
...
9
Income
Lookup
Αποκανονικοποίηση - Denormalization
IL_ID Descr
EMP ID IL_ID Amount
110
10
1500
110
30
300
EMP
ID
Name
110
Kostas 30
120
Vasilis 48
130
Roula
EMP
INCOME
Age
10
Μισθός
20
Επίδομα
Τέκνων
30
Φόρος
...
...
Income
Lookup
EMP
DW
29
DW.EMP
?
10
Καθαρισμός των δεδομένων –
Ομογενοποίηση κλειδιών
ID
ID
Descr
10
Coca
20
Pepsi
100 Coca
110 Pepsi
DW.R
R1
ID
Descr
10
Pepsi
20
Epsa
Descr
120 Epsa
+
+
R2
Lookup
Source Sour Surrogate
ID
ce
Key
10
R1
100
20
R1
110
10
R2
110
20
R2
11 120
Προβλήματα σχεσιακών Βάσεων
Δεδομένων ενός OLTP
Λόγω
διαδικασιών
ενημέρωσης,
εισαγωγής,
διαγραφής διατηρούν δεδομένα μόνο για την
τρέχουσα κατάσταση.
Π.χ., στη βάση του τμήματος προμηθειών διατηρούνται μόνο
όσοι προμηθευτές συνεργάζονται αυτή τη στιγμή ενώ μπορεί
να χρειασθούν δεδομένα και για προμηθευτές που
συνεργαζόταν στο παρελθόν προκειμένου να συγκριθούν οι
τιμές τους
Η ανάλυση των δεδομένων δεν είναι εύκολο να
επιτευχθεί με εργαλεία όπως η γλώσσα SQL.
Προκύπτουν περίπλοκα ερωτήματα SQL τα οποία δεν είναι
εύκολο να συνταχθούν.
Προβλήματα σχεσιακών Βάσεων
Δεδομένων ενός OLTP
Σε φυσικό επίπεδο οργάνωσης (π.χ.
δενδρικές μέθοδοι προσπέλασης) δεν είναι
σχεδιασμένα για να ανταποκρίνονται στις
απαιτήσεις περίπλοκων ερωτημάτων.
Τα δεδομένα οργανώνονται με Διάγραμμα
Οντοτήτων-Συσχετίσεων (ΔΟΣ) και αρχών
όπως η κανονικοποίηση, που παράγουν
περίπλοκες βάσεις στο νοητικό επίπεδο
On-Line Αnalytical Processing (OLAP & OLAM)
Aνάλυση μεγάλου όγκου σύνθετων δεδομένων από
διαφορετικές εφαρμογές
Ειδικού τύπου ερωτήματα συνάθροισης
Οπτικοποίηση/στατιστική ανάλυση/πολυδιάστατη
ανάλυση
Εξόρυξη Γνώσης (Knowledge Discovery/Data Mining)
Εξεύρεση προτύπων σε τεράστιες βάσεις
δεδομένων
OLAP + Data Mining => On-Line Analytical Mining
14
Παραδείγματα ερωτήσεων OLAP
Ποιος ήταν ο όγκος πωλήσεων ανά περιοχή και κατηγορία
προϊόντος την περασμένη χρονιά;
Πόσο σχετίζονται οι αυξήσεις τιμών των υπολογιστών με
τα κέρδη των πωλήσεων τα 10 τελευταία χρόνια;
Ποια ήταν τα δέκα πρώτα καταστήματα σε πωλήσεις CD;
Τι ποσοστό από τους πελάτες που αγοράζουν αναψυκτικά
αγοράζουν και πατατάκια;
15
Λειτουργικά Χαρακτηριστικά Απαιτήσεων OLAP
Πρόσβαση σε μεγάλο όγκο δεδομένων
Συμμετοχή αθροιστικών και ιστορικών δεδομένων σε
πολύπλοκες ερωτήσεις
Μεταβολή της «οπτικής γωνίας» παρουσίασης των
δεδομένων (π.χ., από πωλήσεις ανά περιοχή -> πωλήσεις
ανά τμήμα κλπ.)
Συμμετοχή πολύπλοκων υπολογισμών (π.χ. στατιστικές
συναρτήσεις)
Γρήγορη απάντηση σε οποιαδήποτε χρονική στιγμή τεθεί
ένα ερώτημα ( “On-Line”).
16
OLTP vs. OLAP
OLTP
Αυτοματισμός
καθημερινών
εργασιών
OLAP
Χάραξη
στρατηγικής
Τύπος Δεδομένων
Λεπτομερή
Αθροιστικά
Όγκος Δεδομένων
~ 100 GB
~ 1 TB
Φύση Δεδομένων
Δυναμικά
Στατικά, Iστορικά
Λειτουργίες
17
OLTP vs. OLAP
I/O Τύποι
Τροποποιήσεις
OLTP
Περιορισμένο I/O
Συνεχείς
Ενημερώσεις
OLAP
Εκτεταμένο I/O
Περιοδικές
Φόρτος
Δοσοληψίες με
πρόσβαση λίγων
εγγραφών
Ερωτήσεις που
σαρώνουν
εκατομμύρια εγγραφών
Σχεδίαση ΒΔ
Κατευθυνόμενη
από Εφαρμογή
Κατευθυνόμενη
από Περιεχόμενο
18
OLTP vs. OLAP
OLTP
Χαμηλόβαθμοι Υπ.
OLAP
Υψηλόβαθμοι Υπ.
Χρήση
Μέσω
προκατασκευασμένων
φορμών
Ad-hoc
Αριθμός Χρηστών
Χιλιάδες
Δεκάδες
Εστίαση
Εισαγωγή
Δεδομένων
Εξαγωγή
Πληροφοριών
Τυπικοί Χρήστες
19
Αποθήκες δεδομένων
Η τεχνολογία των αποθηκών δεδομένων
προσφέρει
ολοκλήρωση ετερογενών πηγών δεδομένων και
πλατφόρμα για αποδοτική ανάλυση ιστορικών δεδομένων
Μία αποθήκη δεδομένων αποτελεί μία συλλογή
δεδομένων που
επιλέγονται από τις Επιχειρησιακές Βάσεις Δεδομένων,
Ολοκληρώνονται (integrated),
τα δεδομένα αναλύονται με διαδικασίες όπως η On-line
Analytical Processing (OLAP) ή η εξόρυξη δεδομένων.
Αποθήκες δεδομένων
Μια κεντρικοποιημένη ΒΔ με σκοπό:
την ολοκλήρωση (integration) ετερογενών πηγών
πληροφοριών (data sources) => συνάθροιση όλης της
ενδιαφέρουσας πληροφορίας σε μία τοποθεσία
την αποφυγή της σύγκρουσης μεταξύ OLTP και OLAP
(DSS) συστημάτων => απόδοση εφαρμογών και
διαθεσιμότητα του συστήματος
Μπορεί να συμπληρώνεται και από εξειδικευμένα θεματικά
υποσύνολα (Data Marts) για περαιτέρω απόδοση των OLAP
εφαρμογών
21
Αποθήκες δεδομένων – Λειτουργικά
Χαρακτηριστικά
Ιστορικά Δεδομένα
 Ο χρονικός ορίζοντας μια αποθήκης δεδομένων είναι πολύ
μεγαλύτερος από ότι ενός συστήματος σε λειτουργία
 Η ΒΔ έχει τα τωρινά δεδομένα ενώ οι αποθήκες διατηρούν και
παλιά δεδομένα (πχ τα προηγούμενα 5-10 χρόνια)
Τροποποιήσεις
 Οι τροποποιήσεις στις πηγές δεδομένων δεν φαίνονται άμεσα
στις αποθήκες δεδομένων, συνήθως περιοδικά
 Μόνο δύο βασικές λειτουργίες: αρχικό φόρτωμα των δεδομένων
(loading) και προσπέλαση δεδομένων (access)
22
Επιτυχία αποθηκών δεδομένων (1/2)
Πρώτες προσπάθειες στα μέσα της δεκαετίας του
1990, οπότε οι αποθήκες δεδομένων εξελίχθηκαν
σε αγορά της τάξης των 2 δις $.
Στα τέλη της δεκαετίας του 1990, το 95% των 1000
επιχειρήσεων του Fortune ανέπτυσσαν αποθήκες
δεδομένων, οπότε η αγορά των αποθηκών
δεδομένων ανήρθε οικονομικά της τάξης των 7
δις $.
Εκτιμήθηκε ότι σε 3 χρόνια από την ανάπτυξη
μίας αποθήκης δεδομένων, η απόσβεση γίνεται
σε ποσοστό 400%.
Επιτυχία αποθηκών δεδομένων (2/2)
Επιτυχημένη περίπτωση εφαρμογής:
αλυσίδα υπεραγορών Walmart, με 2000 υποκαταστήματα.
βοήθησε την Walmart να βελτιστοποιήσει τις διαδικασίες
προμήθειας προϊόντων και να μειώσει το κόστος αγοράς τους
κατά 20%.
ο όγκος των δεδομένων στην αποθήκη δεδομένων της
Walmart ανέρχεται στα 24 ΤΒ, σε ένα σύστημα 96 κόμβων με
900 επεξεργαστές και 2700 δίσκους.
Αποθήκες δεδομένων – Βασικές
Λειτουργίες
Αρχιτεκτονική αποθηκών δεδομένων
Μετασχηματισμός Δεδομένων
• Κανονικοποίηση Δεδομένων
• Μετατροπή τύπων δεδομένων
• Επιλογή χαρακτηριστικών και
στιγμιοτύπων
Κανονικοποίηση Δεδομένων
• Δεκαδική κλιμάκωση
• Κανονικοποίηση ΕλαχίστουΜεγίστου
originalVa lue  oldMin
newValue 
oldMax  oldMin
• Κανονικοποίηση με χρήση τιμών Zscores
originalVa lue  
newValue 

Μοντέλο Πολυδιάστατων Δεδομένων
(Κύβος) και Λειτουργίες που
εκτελούνται σε αυτό
29
Ορισμός κύβου δεδομένων
Μια αποθήκη δεδομένων βασίζεται
σε ένα πολυδιάστατο μοντέλο
δεδομένων (multidimensional data
model)
που
αναπαριστά
τα
δεδομένα με τη μορφή ενός κύβου
δεδομένων (data cube)
Κύβος ΠΩΛΗΣΕΙΣ
Για συγκεκριμένες τιμές στις
διαστάσεις μια Μέτρηση (Measure)
αφορά αυτό που μας ενδιαφέρει να
μετρήσουμε
Item
Ένας κύβος δεδομένων (data cube)
επιτρέπει την μοντελοποίηση και
την θεώρηση των δεδομένων από
πολλές οπτικές γωνίες – Διαστάσεις
(dimensions)
Διαστάσεις
Time
Μέτρηση: Αριθμός Πωλήσεων για τις
συγκεκριμένες
Item, Time)
30
διαστάσεις
(Location,
Ιεραρχίες Διαστάσεων
Κάθε διάσταση παίρνει τιμές από διαφορετικά
επίπεδα, μπορεί να εκφραστεί σε διαφορετικά
επίπεδα λεπτομέρειας
Κύβος ΠΩΛΗΣΕΙΣ
Industry
Country
Year
Category
Region
Quarter
Product
City
Store
Item
Διαστάσεις: Product, Region, Date
Ιεραρχίες διαστάσεων:
Week
Month
Time
Μέτρηση: Αριθμός Πωλήσεων για τις
Day
συγκεκριμένες
Item, Time)
31
διαστάσεις
(Location,
Παράδειγμα:
Εννοιολογική ιεραρχία (Concept Hierarchy) για Location
all
all
Europe
region
country
city
office
Germany
Frankfurt
...
...
Spain
North_America
Canada
Vancouver ...
...
L. Chan
32
...
...
Mexico
Toronto
M. Wind
Μοντέλο Δεδομένων Σχήματος Αστέρα
Σχήμα Αστέρι (Star schema)
Πίνακας γεγονότων στο κέντρο που συνδέεται με ένα
σύνολο από πίνακες διαστάσεων
Πίνακας γεγονότων (Fact Table) έχει ως γνωρίσματα:
τις μετρήσεις (πχ αριθμός πωλήσεων, τιμή σε
δολάρια, κλπ)
 το πρωτεύον κλειδί κάθε σχετικού πίνακα
διαστάσεων
Πίνακες Διαστάσεων
Πίνακας με πληροφορία σχετικά με κάθε διάσταση
Ιtem (item_name, brand, type),
Τime(day, week, month, quarter, year)
33
Παράδειγμα Σχήματος Αστεριού
time
item
time_key
day
day_of_the_week
month
quarter
year
Πίνακας Γεγονότων ΠΩΛΗΣΕΙΣ
time_key
item_key
branch_key
branch
location_key
branch_key
branch_name
branch_type
units_sold
dollars_sold
avg_sales
Μετρήσεις
item_key
item_name
brand
type
supplier_type
location
location_key
street
city
state_or_province
country
4 διαστάσεις (time, item, location,
branch)
34
Μοντέλο Δεδομένων Σχήματος
Χιονονιφάδας (Snowflake schema)
 Είναι μια βελτίωση του σχήματος αστέρα
σύμφωνα με την οποία η ιεραρχία διαστάσεων των
πινάκων διάστασης κανονικοποιείται σε ένα σύνολο
από μικρότερους πίνακες διαστάσεων
35
Παράδειγμα Σχήματος Χιονονιφάδας
time
time_key
day
day_of_the_week
month
quarter
year
Πίνακας Γεγονότων ΠΩΛΗΣΕΙΣ
time_key
item_key
branch_key
branch
location_key
branch_key
branch_name
branch_type
units_sold
dollars_sold
avg_sales
Μετρήσεις
36
item
item_key
item_name
brand
type
supplier_key
supplier
supplier_key
supplier_type
location
location_key
street
city_key
city
city_key
city
state_or_provin
ce
Μοντέλο Δεδομένων - Αστερισμοί
Γεγονότων (Fact constellations)
 Βασίζεται σε Πολλαπλούς Πίνακες
μοιράζονται τους Πίνακες Διαστάσεων.
Γεγονότων
που
 Μπορούμε να τους δούμε ως συλλογή από αστέρια ή γαλαξίες
37
Παράδειγμα Σχήματος Αστερισμών
Γεγονότων
time
time_key
day
day_of_the_week
month
quarter
year
item
Πίνακας Γεγονότων
ΠΩΛΗΣΕΙΣ
time_key
item_key
item_key
item_name
brand
type
supplier_type
location_key
branch_key
branch_name
branch_type
time_key
item_key
shipper_key
from_location
branch_key
branch
Πίνακας
Γεγονότων
ΑΠΟΣΤΟΛΗ
units_sold
dollars_sold
avg_sales
Μετρήσεις
38
location
to_location
location_key
street
city
province_or_state
country
dollars_cost
units_shipped
shipper
shipper_key
shipper_name
location_key
shipper_type
Κύβος Δεδομένων - Ορολογία
Συχνά ο n-D κύβος λέγεται βασικός κυβοειδής (base cuboid). Περιέχει
τον μεγαλύτερο βαθμός λεπτομέρειας.
π.χ. Για κύβο με τέσσερεις διαστάσεις (Item, Time, Branch, Location) έχουμε 4D βασικό κυβοειδή
O 0-D cuboid περιέχει τη μεγαλύτερο επίπεδο περίληψης (apex
cuboid).
Το πλέγμα όλων των κυβοειδών ονομάζεται κύβος δεδομένων.
39
Πλέγμα Κυβοειδών – Κύβος δεδομένων
all
0-D(apex) cuboid
time
item
location
supplier
1-D cuboids
time, item
time , location
item, location
location, supplier
2-D cuboids
time, supplier
item, supplier
time, location, supplier
3-D cuboids
time, item, location
time, item, supplier
item, location, supplier
4-D (base) cuboid
time, item, location, supplier
40
OLAP και συνάθροιση
Για την εφαρμογή OLAP πράξεων απαιτείται ο
ορισμός του τρόπου παραγωγής των κύβωναποτελεσμάτων, μέσω μίας συναθροιστικής
συνάρτησης
Οι βασικές συναθροιστικές συναρτήσεις είναι
αθροίσματος (sum),
πλήθους (count),
μέσου όρου (avg),
μεγίστου (max), και
ελαχίστου (min).
Μετρήσεις - Συναθροίσεις
 Εκτός από τις λεπτομερείς πληροφορίες των 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
42
Παράδειγμα Συναθροίσεων (1/2)
2Qtr
3Qtr
4Qtr
sum
U.S.A
Canada
Mexico
Country
TV
PC
VCR
sum
1Qtr
Date
Total annual sales
of TV in U.S.A.
Total annual sales
of TV in All countries
43
Total annual sales
of all Devises in All countries
Παράδειγμα Συναθροίσεων σε πίνακα
γεγονότων (2/2)
Χωριστός πίνακας/όψη
αθροισμάτων
Sales table
RID
1
2
3
4
5
6
7
City
Athens
N.Y.
Rome
Athens
Rome
Rome
N.Y.
Εκτεταμένος πίνακας πωλήσεων: Ενσωμάτωση
των αθροιστικών εγγραφών στον βασικό fact
table + μια επιπλέον στήλη που να εξηγεί το
επίπεδο συνάθροισης
sum
… Amount
… $100
… $300
… $120
… $250
… $180
…
$65
… $450
Extended Sales table
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
8
Athens … $350
9
N.Y. … $750
10
Rome … $365
City-dimension
sum table
City Amount
Athens
$350
N.Y.
$750
Rome
$365
44
Level
NULL
NULL
NULL
NULL
NULL
NULL
NULL
City
City
City
Βασικές Αλγεβρικές Πράξεις
Συναθροιστική Άνοδος (Roll up): συνάθροιση της πληροφορίας
= μετάβαση από χαμηλότερο σε υψηλότερο επίπεδο ιεραρχίας
(π.χ. από day σε month)
Αναλυτική Κάθοδος (Drill down): το αντίστροφο του Roll up
(π.χ month σε day)
Οριζόντιος Τεμαχισμός (Slice): πράξη της επιλογής εγγραφών
(where) από μία διάσταση.
Κάθετος Τεμαχισμός (Dice):
περισσότερες διαστάσεις.
πράξη
Περιστροφή (Pivot): αναδιάταξη
πολυδιάστατου κύβου στην οθόνη
45
της
της
επιλογής
από
προβολής
του
Πράξη Συναθροιστικής ανόδου Roll-up
Η συναθροιστική άνοδος περιλαμβάνει τον υπολογισμό μίας
συνολικής τιμής για μία θέση στην ιεραρχία μίας διάστασης
δεδομένων.
Για παράδειγμα, με ένα roll-up, οι πωλήσεις σε επίπεδο τοπικών
μαγαζιών (Store) παράγουν τις συνολικές πωλήσεις σε επίπεδο πόλης
(City) και αυτές με τη σειρά τους με ένα ακόμα roll-up παράγουν τις
πωλήσεις σε επίπεδο περιοχής (Region).
Industry
Category
Country
Region
Product
City
Store
46
Year
Quarter
Month Week
Day
Παράδειγμα Πράξης Roll-up
Industry
Country
Year
Category
Region
Quarter
Product
City
Sales volume
Month Week
Store
Day
Electronics
Toys
Clothing
Cosmetics
Electronics
Toys
Clothing
Cosmetics
Store1 Store2
$5,2
$1,9
$2,3
$1,1
$8,9
$0,75
$4,6
$1,5
$5,6
$1,4
$2,6
$1,1
$7,2
$0,4
$4,6
$0,5
Sales volume
Products
Year 1996
Q2
Q1
Products
Χρόνος: Επίπεδο Quarter
Electronics
Toys
Clothing
Cosmetics
Store1 Store2
$14,1
$2,65
$6,9
$2,6
$12,8
$1,8
$7,2
$1,6
Χρόνος: Επίπεδο Year
SUM(Sales volumes in dollars)
47
Πράξη Αναλυτικής καθόδου Drill-Down
Ο χρήστης περνά από ένα ανώτερο επίπεδο μίας διάστασης που έχει
συγκεντρωτικά δεδομένα σε ένα χαμηλότερο επίπεδο με πιο
λεπτομερή δεδομένα. Πρόκειται για την αντίστροφη πράξη του rollup.
Για παράδειγμα, κατά το drill down, ξεκινάμε από τις πωλήσεις ανά
περιοχή (Region) και παίρνουμε τις αναλυτικές πωλήσεις ανά πόλη
(City) και μετά τις πωλήσεις ανά κατάστημα (Store).
Industry Country
Year
Category Region
Quarter
Product
City
MonthWeek
Store
Day
48
Παράδειγμα Πράξης Drill-Down
Industry
Category
Country
Region
Product
Electronics Store1 Store2
$5,2
$1,9
$2,3
$1,1
$8,9
$0,75
$4,6
$1,5
VCR
Camcorder
TV
CD player
VCR
Camcorder
TV
CD player
$5,6
$1,4
$2,6
$1,1
$7,2
$0,4
$4,6
$0,5
Q1
Electronics
Toys
Clothing
Cosmetics
Electronics
Toys
Clothing
Cosmetics
Store1 Store2
Q2
Q2
Q1
Products
Item: Επίπεδο Industry
$1,4
$0,6
$2,0
$1,2
$2,4
$3,3
$2,2
$1,0
$1,4
$0,6
$2,4
$1,2
$2,4
$1,3
$2,5
$1,0
Item: Επίπεδο Category
49
Quarter
City Month Week
Store
Day
Sales volume
Sales volume
Year
Πράξη Περιστροφής (Pivot)
Εναλλαγή των γραμμών και των στηλών του κύβου,
όπως αυτός παρουσιάζεται στην οθόνη
Δεν απαιτείται κανένας νέος υπολογισμός στη ΑΔ
50
Παράδειγμα Πράξης Pivot
Sales volume
Sales volume
$5,2
$1,9
$2,3
$1,1
$8,9
$0,75
$4,6
$1,5
$5,6
$1,4
$2,6
$1,1
$7,2
$0,4
$4,6
$0,5
Store 1
Electronics
Toys
Clothing
Cosmetics
Electronics
Toys
Clothing
Cosmetics
Store1 Store2
Store 2
Q2
Q1
Products
Εναλλαγή γραμμών και στηλών
51
Products
Q1
Q2
Electronics
Toys
Clothing
Cosmetics
Electronics
Toys
Clothing
Cosmetics
$5,2
$1,9
$2,3
$1,1
$5,6
$1,4
$2,6
$1,1
$8,9
$0,75
$4,6
$1,5
$7,2
$0,4
$4,6
$0,5
Οριζόντιος Τεμαχισμός (slice)
Slice : Επιλογή συγκεκριμένων τιμών από μία διάσταση
(where της SQL) π.χ. Επέλεξε το 1o τρίμηνο από την διάσταση ημερομηνία
52
Κάθετος Τεμαχισμός (dice)
Dice : Επιλογή συγκεκριμένων τιμών από
περισσότερες διαστάσεις (εξάγει έναν
υποκύβο)
53
Παράδειγμα Βιβλιοπωλείου
20 υποκαταστήματα και στα πέντε γεωγραφικά
διαμερίσματα της Ελλάδας
Σε κάθε υποκατάστημα υπάρχουν 3 τμήματα: των
βιβλίων, των ηλεκτρονικών μέσων και των ειδών
γραφείου.
Οι επιχειρηματικές διαδικασίες του βιβλιοπωλείου
περιλαμβάνουν τις πωλήσεις προϊόντων
Μία από τις σημαντικότερες αποφάσεις στην
επιχείρηση, αποτελεί η τιμολόγηση/κοστολόγηση
των προϊόντων.
4 σχεδιαστικά βήματα για το σχήμα αστέρα
1)
2)
3)
4)
Επιλογή της διαδικασίας που θα μοντελοποιηθεί
Επιλογή επιπέδου λεπτομέρειας
Επιλογή των πινάκων διαστάσεων
Επιλογή των αριθμητικών γεγονότων (μετρήσεων)
Τα 4 βήματα για το βιβλιοπωλείο
1) Επιλογή της διαδικασίας που θα μοντελοποιηθεί
 Προτεραιότητα στη μοντελοποίηση της διαδικασίας
πωλήσεων (πλέον κρίσιμη)
2) Επιλογή επιπέδου λεπτομέρειας
 όσο το δυνατόν μεγαλύτερο επίπεδο λεπτομέρειας:
καταγράφουμε ξεχωριστά κάθε ατομική συναλλαγή ενός
πελάτη
3) Επιλογή των πινάκων διαστάσεων («ποιες πληροφορίες
περιγράφουν κάθε γραμμή του πίνακα γεγονότων»)
 πελάτης, προϊόν, ημερομηνία, υποκατάστημα, συναλλαγή
4) Επιλογή των αριθμητικών γεγονότων (τι μετράμε σε κάθε
γραμμή του πίνακα γεγονότων)
 αριθμός τεμαχίων, κόστος πώλησης
Σχήμα αστέρα για το βιβλιοπωλείο
Κύβος δεδομένων Βιβλιοπωλείου
(χωρίς διάσταση πελάτη)
Μετρική (measure)
Τεμάχια
Ιεραρχίες Διαστάσεων
Πράξεις OLAP
Πράξεις Roll-up & Drill-Down
ΑΠΟΘΗΚΕΣ ΔΕΔΟΜΕΝΩΝ (Data Warehouses)
Δρ. Παναγιώτης Συμεωνίδης
Εργ. Τεχνολογίας και Επεξεργασίας Δεδομένων
Τμήμα Πληροφορικής
Διατμηματικό Πρόγραμμα
Μεταπτυχιακών Σπουδών
Αριστοτέλειο Πανεπιστήμιο Θεσ/νικης
http://delab.csd.auth.gr/~symeon
Δρ. Παναγιώτης Συμεωνίδης – Αποθήκες Δεδομένων – Data Warehouses
61