Συστήματα OLAP. Πασχάλης Θρήσκος, PhD Λάρισα

Σχετικά έγγραφα
Άμεση Αναλυτική Επεξεργασία (OLAP)

Άμεση Αναλυτική Επεξεργασία (OLAP)

Data Cube. Μ.Χατζόπουλος 1

Αποθήκες Δεδομένων & Πολυδιάστατη Ανάλυση

ΛΕΞΕΙΣ ΚΛΕΙΔΙΑ: Λήψη απόφασης, Συστήματα Υποστήριξης Αποφάσεων, OLAP Ανάλυση, Περιβαλλοντική Εκπαίδευση ΕΙΣΑΓΩΓΗ

Υποστήριξη Αποφάσεων. Γεώργιος Ευαγγελίδης. (βασισμένο στο κεφ. 23 του βιβλίου «Συστήματα Διαχείρισης Βάσεων Δεδομένων»)

ΑΛΕΞΑΝΔΡΕΙΟ Τ.Ε.Ι ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

4 Πολυδιάστατη Ανάλυση και Αποθήκες Δεδομένων

Εισαγωγή στις Αποθήκες εδομένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

Εξόρυξη Γνώσης από εδοµένα (Data Mining)

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής. Αποθήκες εδοµένων και Εξόρυξη Γνώσης. (Data Warehousing & Data Mining) Γιάννης Θεοδωρίδης, Νίκος Πελέκης

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

SQL Data Manipulation Language

GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP.

Ηλεκτρονικοί Υπολογιστές II

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

Εξόρυξη Γνώσης από εδοµένα (Data Mining)

Open Office Calc. Ακαδημαϊκό έτος εαρινό εξάμηνο ΟΝΟΜΑΤΕΠΩΝΥΜΟ : ΑΡΙΘΜΟΣ ΜΗΤΡΩΟΥ:

Εισαγωγή στις Αποθήκες εδομένων

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων

Πανεπιστήμιο Πειραιώς, Τμήμα Πληροφορικής

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML.

Τμήμα Πληροφορικής ΑΠΘ

Αρχεία και Βάσεις Δεδομένων


5. ΠΟΛΥΔΙΑΣΤΑΤΗ ΑΝΑΛΥΣΗ ΔΕΔΟΜΕΝΩΝ

Επιχειρηματική Ευφυΐα (Business Intelligence - BI)

Σχεδίαση και Ανάπτυξη Απ ποθηκών Δεδομένωνν

Εισαγωγή στις Αποθήκες εδοµένων

4. ΔΗΜΙΟΥΡΓΙΑ ΜΟΝΤΕΛΟΥ ΠΟΛΥΔΙΑΣΤΑΤΗΣ ΑΝΑΛΥΣΗΣ

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη

Τίτλος Πακέτου Certified Computer Expert-ACTA

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση, ίαυλος ιαφάνεια 29-1

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

Η SQL ως γλώσσα ερωτημάτων. Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα)

ΜΑΘΗΜΑ: Διαχείριση Εφοδιαστικών Αλυσίδων. Φίλιππος Ι. Καρυπίδης Καθηγητής. Τμήμα: Τεχνολόγων Γεωπόνων Αγροτικής Οικονομίας

ΟΝΟΜΑΤΕΠΩΝΥΜΟ : Αντικείμενα: Βάσεις δεδομένων, σχέσεις μεταξύ πινάκων, ερωτήματα, φόρμες και αναφορές.

Βάσεις Δεδομένων. Εργαστήριο ΙV. Τμήμα Πληροφορικής ΑΠΘ

ΕργαλείοΠληροφόρησης καιανάπτυξης

Μοντέλο Διαστάσεων Αρχιτεκτονική Αποθηκών Δεδομένων. Πασχάλης Θρήσκος, PhD Λάρισα

Μάθημα: Συστήματα Διαχείρισης Βάσεων Δεδομένων Αναλυτικό Διάγραμμα Μελέτης

Ανάλυση Δεδομένων (Data Analysis) Άμεση Αναλυτική Επεξεργασία (OLAP) Λειτουργίες Συνάθροισης στην SQL (windowing, ranking)

ΣΤΡΑΤΗΓΙΚΟ MANAGEMENT KAI EΠΙΧΕΙΡHΜΑΤΙΚΗ ΕΥΦΥΙΑ. Παρουσίαση 2 ο μέρος:

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 6: SQL (Συζεύξεις, Εμφώλευση, Ομαδοποίηση) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

EBS Version Entersoft Business Suite Entersoft CRM

Σχεδιασμός Βάσεων Δεδομένων

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Έλεγχος (ποσοτικός ποιοτικός) (Από) Παλετοποίηση. «Παραγωγή εσωτερικού κωδικού» Ετικετοκόληση

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Πληροφορική 2. Βάσεις Δεδομένων (Databases)

Από τα Δεδομένα στην Πληροφορία: Διδακτικό Σενάριο για Εισαγωγή στη Γλώσσα SQL. Σ. Φίλου Β. Βασιλάκης

Βάσεις δεδομένων. (7 ο μάθημα) Ηρακλής Βαρλάμης

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

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

Βάσεις Δεδομένων (Databases)

ΕΝΟΤΗΤΑ 10 ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΣ ΚΑΙ ΔΙΑΙΡΕΣΗ

Τμήμα Πληροφορικής ΑΠΘ

Data Warehouse Refreshment via ETL tools. Panos Vassiliadis

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής.


ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων

5.1.1 Περιγραφή των συστατικών τμημάτων ενός γραφήματος

Ηλεκτρονικοί Υπολογιστές II

Πολυδιάστατη Ανάλυση Δεδομένων

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

ΟΝΟΜΑΤΕΠΩΝΥΜΟ : Αντικείμενα: περιγραφική στατιστική, γραφήματα, συναρτήσεις βάσεων δεδομένων, συγκεντρωτικοί πίνακες

ΕΝΟΤΗΤΑ 14 ΑΡΙΘΜΟΙ ΜΕΧΡΙ ΤΟ 100 ΠΡΑΞΕΙΣ ΜΕ ΠΟΛΛΑΠΛΑΣΙΑ ΤΟΥ 10 ΚΑΙ ΕΝΤΟΣ ΤΗΣ ΔΕΚΑΔΑΣ

Αποθήκες Δεδομένων και Εξόρυξη Δεδομένων

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ


SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke

Ομαδοποίηση ΙΙ (Clustering)

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

Μάθημα 3. Θεμέλια Επιχειρηματικής Ευφυΐας: Διαχείριση Βάσεων Δεδομένων και πληροφοριών

Βάσεις δεδομένων. (4 ο μάθημα) Ηρακλής Βαρλάμης

Σχεδίαση Βάσεων Δεδομένων

CYPDIS BI Platform. ών Υπηρεσιών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL

Τεχνολογία Πολιτισμικού Λογισμικού

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 7α: SQL (NULL, Διαίρεση) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

8. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ

Διαδικασία Διαχείρισης Παγίου Ενεργητικού

Τμήμα Πληροφορικής ΑΠΘ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2018 ΤΕΧΝΟΛΟΓΙΑ ΙΙ ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΠΡΑΚΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ

ΕΝΟΤΗΤΑ 9 ΑΡΙΘΜΟΙ ΜΕΧΡΙ ΤΟ 100. Απαγγέλλουν, διαβάζουν, γράφουν και αναγνωρίζουν ποσότητες αριθμών μέχρι το 100. Αρ1.2

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ (ΟΠΣ) ΓΙΑ ΤΗΝ ΠΡΟΓΡΑΜΜΑΤΙΚΗ ΠΕΡΙΟΔΟ ΣΕΣ

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ (ΟΠΣ) ΓΙΑ ΤΗΝ ΠΡΟΓΡΑΜΜΑΤΙΚΗ ΠΕΡΙΟΔΟ ΣΕΣ

FROM TESTOTA.REGISTRY

Περιεχόμενα. Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL. Συνένωση Σχέσεων στην SQL2 (3) Συνένωση Σχέσεων στην SQL2. (Join Relations Feature in SQL)

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ (ΟΠΣ) ΓΙΑ ΤΗΝ ΠΡΟΓΡΑΜΜΑΤΙΚΗ ΠΕΡΙΟΔΟ ΣΕΣ

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) Ενότητα Advanced Βάσεις Δεδομένων, Προχωρημένο Επίπεδο. Copyright 2013 ECDL Foundation Ref: SL_AM3_Syl2.

Έννοιες Διαχείρισης Βάσεων Δεδομένων και Αρχιτεκτονική

Certified Computer Expert (CCE)

Η λ ε κ τ ρ ο ν ι κ ό κ α τ ά σ τ η μ α. Γενικά χαρακτηριστικά της εφαρμογής για κατασκευή eshop

Transcript:

Συστήματα OLAP Πασχάλης Θρήσκος, PhD Λάρισα 2016-2017

«Τα συστήματα άμεσης αναλυτικής επεξεργασίας (OLTP) χρησιμοποιούνται για να απαντηθούν ερωτήματα πάνω σε πολυδιάστατα δεδομένα πολύ γρήγορα» Wikipedia https://en.wikipedia.org/wiki/online_analytical_processing

Στην στατιστική, τα πολυδιάστατα δεδομένα έχουν δύο χαρακτηριστικά: Ιδιότητες Μετρήσεις Τα συστήματα OLAP παρέχουν εργαλεία για να βοηθήσουν τον χρήστη να αναλύσει τα δεδομένα Τα συστήματα OLAP είναι ΒΔ, με διαφορετική αρχιτεκτονική και οργάνωση

Παραδείγματα ερωτήσεων OLAP Ποιος ο συντελεστής συσχέτισης μεταξύ ζημιών του τελευταίου χρόνου και της αύξησης τιμών του σιδηρομεταλλεύματος τα 5 τελευταία χρόνια; Ποια ήταν τα δέκα πρώτα καταστήματα σε πωλήσεις πλυντηρίων AEG; Ποιό ήταν το σύνολο των πωλήσεων ανά περιοχή και κατηγορία προϊόντος το έτος 2015; Τι ποσοστό από τους πελάτες που μπύρες AMSTEL αγοράζουν και πάνες μωρών; 4

Τα Συστήματα OLAP επιτρέπουν Πρόσβαση σε μεγάλο όγκο δεδομένων > 1ΤΒ Συμμετοχή αθροιστικών και ιστορικών δεδομένων σε πολύπλοκες ερωτήσεις Μεταβολή της «οπτικής γωνίας» (perspective) παρουσίασης των δεδομένων (π.χ., από ζημιές ανά περιοχή -> ζημιές ανά τμήμα κλπ.) Δυνατότητα ενσωμάτωσης πολύπλοκων υπολογισμών (π.χ. μέσης τιμή, τυπικό σφάλμα, min,max) Πολύ γρήγορη απόκριση για τεθεί ένα ερώτημα Εξόρυξη γνώσεις με την ανακάλυψη προτύπων μέσα από ένα τεράστιο όγκο δεδομένων

Γιατί OLAP αντί για OLTP Η οργάνωση είναι συνήθως σε κανονικοποιημένη μορφή (3NF), το οποίο για επιχειρησιακά ερωτήματα είναι δυσνόητο σε εννοιολογικό επίπεδο (πχ πελάτης, λογαριασμός) Η ανάλυση των δεδομένων δεν είναι εύκολο να γίνει με τη χρήση της SQL, αν και έχουν αναπτυχθεί επεκτάσεις του συντακτικού που βοηθούν Η οργάνωση σε φυσικό (B-Trees) δεν ενδείκνυται όσο αφορά τους χρόνους απόκρισης σε επιχειρησιακά ερωτήματα

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

Κύβος πωλήσεων αυτοκινήτων Κύβος Πωλήσεων Αυτοκινήτων Κόκκινα Μπλε Γκρι Ιουλ Αυγ Σεπ Ήπειρος Θεσσαλία

Προϊόν Ιεραρχίες Διαστάσεων Εάν μια διάσταση παίρνει τιμές από διαφορετικά επίπεδα, τότε το μετρήσιμο μπορεί να εκφραστεί σε διαφορετικά επίπεδα λεπτομέρειας Διαστάσεις: Προϊόν, Περιοχή, Χρόνος Βιομηχανία Κατηγορία Προϊόν Ιεραρχίες διαστάσεων Χώρα Περιφέρεια Νομός Πόλη Κατάστημα Έτος Τετράμηνο Μήνας Εβδομάδα Ημέρα 9 Χρόνος Κύβος ΠΩΛΗΣΕΩΝ Μέτρηση: Αριθμός Πωλήσεων για τις συγκεκριμένες διαστάσεις (Περιοχή, Προϊόν, Χρόνος)

Συχνά ο n-d κύβος λέγεται βασικός κυβοειδής (base cuboid). Περιέχει τον μεγαλύτερο βαθμός λεπτομέρειας. π.χ. Για κύβο με τέσσερεις διαστάσεις (Προϊόν, Χρόνος, Κατάστημα, Τοποθεσία ) έχουμε 4-D βασικό κυβοειδή O 0-D κύβος περιέχει το μεγαλύτερο επίπεδο περίληψης (apex cuboid). Το πλέγμα όλων των κυβοειδών ονομάζεται κύβος δεδομένων.

Πλέγμα Κυβοειδών Κύβος δεδομένων Σύνολο 0-D (apex) cuboid Χρόνος Προϊόν Θέση Προμηθευτής 1-D cuboids Χρόνος, Προϊόν Χρόνος, Θέση Προϊόν, Θέση Θέση, Προμηθευτής Χρόνος, Προμηθευτής Προϊόν, Προμηθευτής 2-D cuboids Χρόνος, Προϊόν, Θέση Χρόνος, Θέση, Προϊόν Χρόνος, Προϊόν, Προμηθευτής Προϊόν, Θέση, Προμηθευτής 3-D cuboids 4-D (base) cuboid Χρόνος, Προϊόν, Θέση, Προμηθευτής

Πράξεις OLAP Συναθροιστική Άνοδος (Roll UP) Παράγεται κύβος μειωμένων διαστάσεων όταν : Επιλέγουμε ανώτερο επίπεδο ιεραρχίας Αφαιρούμε διαστάσεις Αναλυτική κάθοδος (Drill Down) Παράγεται κύβος με αυξημένο αριθμό διαστάσεων όταν : Επιλέγουμε κατώτερο επίπεδο ιεραρχίας Προσθέτουμε διαστάσεις Οριζόντιος τεμαχισμός (Slice) Παράγεται εκφυλισμένος κύβος (τετράγωνο) εφαρμόζοντας επιλογή σε μια μόνο διάσταση

Πράξεις OLAP Κάθετος τεμαχισμός (Dice) Παράγεται κύβος εφαρμόζοντας επιλογή σε μια περισσότερες από μία διαστάσεις Περιστροφή (Pivot) Παράγεται κύβος με άλλη διάταξη (περιστροφή) των διαστάσεων με αποτέλεσμα την αναδιάταξη του κύβου στην οθόνη

Πράξεις OLAP

Πράξη Συναθροιστικής ανόδου Roll-up Η συναθροιστική άνοδος περιλαμβάνει τον υπολογισμό μίας συνολικής τιμής για μία θέση στην ιεραρχία μίας διάστασης δεδομένων. Για παράδειγμα, με μια συναθροιστική άνοδος, οι πωλήσεις σε επίπεδο Καταστημάτων δίνουν τις συνολικές πωλήσεις σε επίπεδο Πόλης και αυτές με τη σειρά τους με μία ακόμα συναθροιστική άνοδο παράγουν τις πωλήσεις σε επίπεδο Νομού. Χώρα Έτος Περιφέρεια Βιομηχανία Τετράμηνο Νομός Κατηγορία Μήνας Πόλη Προϊόν Εβδομάδα Κατάστημα Ημέρα

Συναθροιστική Άνοδος Πλυντήρια που χάλασαν Μακεδονία Ήπειρος Θεσσαλία Σύνολο Ιουλ 45 33 30 108 Αυγ 50 36 42 128 Σεπ 38 31 40 109 Σύνολο 133 100 112 345 Άνοδος ανά Μήνα Πλυντήρια που χάλασαν Θεσσαλία Ήπειρος Μακεδονία Σύνολο 133 100 112 345

Πράξη Αναλυτική Κάθοδος (Drill-Down) Ο χρήστης περνά από ένα ανώτερο επίπεδο μίας διάστασης που έχει συγκεντρωτικά δεδομένα σε ένα χαμηλότερο επίπεδο με πιο λεπτομερή δεδομένα. Πρόκειται για την αντίστροφη πράξη της συναθροιστικής ανόδου. Για παράδειγμα, κατά την αναλυτική κάθοδο, ξεκινάμε από τις πωλήσεις ανά Νομό και παίρνουμε τις αναλυτικές πωλήσεις ανά Πόλη και μετά τις πωλήσεις ανά Κατάστημα. Έτος Χώρα Βιομηχανία Τετράμηνο Νομός Κατηγορία Μήνας Πόλη Προϊόν Εβδομάδα Κατάστημα Ημέρα

Αναλυτική Κάθοδος Πλυντήρια που χάλασαν Μακεδονία Ήπειρος Θεσσαλία Σύνολο Κάθοδος ανά χρώμα Πλυντήρια που χάλασαν 133 100 112 345 Θεσσαλία Ήπειρος Μακεδονία Σύνολο Κόκκινο 40 29 40 109 Μπλε 45 31 37 113 Γκρι 48 40 35 123 Σύνολο 133 100 112 345

Οριζόντιος Τεμαχισμός Κόκκινα Κόκκινα Μπλε Γρι Ήπειρος Μπλε Γκρι Ήπειρος Ιουλ Αυγ Σεπ Ιουλ Αυγ Σεπ

Κάθετος Τεμαχισμός Μπλε Ήπειρος Κόκκινα Ιουλ Αυγ Σεπ Μπλε Γρι Ήπειρος Ιουλ Αυγ Σεπ Μπλε Σύνολο Ιουλ Αυγ Σεπ

Πράξη Περιστροφής (Pivot) Εναλλαγή των γραμμών και των στηλών του κύβου, όπως αυτός παρουσιάζεται στην οθόνη Δεν απαιτείται κανένας νέος υπολογισμός ή συνάθροιση

Q2 Κατ 2 Q1 Κατ 1 Παράδειγμα Πράξης Pivot Σύνολο πωλήσεων Σύνολο πωλήσεων Προϊόντα Κατ 1 Κατ 2 Καταθέσεις Επενδύσεις Δάνεια Κάρτες Καταθέσεις Επενδύσεις Δάνεια Κάρτες 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 Εναλλαγή γραμμών και στηλών Προϊόντα Q1 Q2 Καταθέσεις Επενδύσεις Δάνεια Κάρτες Καταθέσεις Επενδύσεις Δάνεια Κάρτες 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

Προϊόν Περιφέρεια 23 Παράδειγμα Πράξης Περιστροφής Χυμός Γ Α Β 10 Αναψυκτικό Γάλα Σαμπουάν 50 20 12 Οδοντόπαστα Σαπούνι 15 10 1 2 3 4 5 6 Μήνας Προϊόν

Προϊόν 24 Παράδειγμα Πράξης Κάθετου Τεμαχισμού Χυμός Αναψυκτικό Γάλα Σαμπουάν Οδοντόπαστα Σαπούνι Γ Α Β 10 50 20 12 15 10 1 2 3 4 5 6 Μήνας

Προϊόν 25 Παράδειγμα Πράξης Αναλυτικής Καθόδου W S N Χυμός Αναψυκτικό Γάλα Σαμπουάν Οδοντόπαστα Σαπούνι 10 50 20 12 15 10 1 2 3 4 5 6 Μήνας

Προϊόν 26 Παράδειγμα Πράξης Αθροιστικής Ανόδου W S N Τρόφιμα 80 Είδη υγιεινής 37 1 2 3 4 5 6 Μήνας

Ερωτήματα που κάνουμε σε κύβους Μετρήσιμα Για ποια γεγονότα θα πρέπει να κάνουμε αναφορές Φίλτρα Ποιός (ποιοί) οριζόντιος τεμαχισμός του κύβου πρέπει να γίνει; Ομαδοποιήσεις Ποιος κάθετος τεμαχισμός πρέπει να γίνει; Κάθε διάσταση είναι : ομαδοποίησης Συνάθροισης Ν διαστάσεις 2 Ν σύνολα ομαδοποίησης Συνάθροιση = προβολή σε ένα υποχώρο μικρότερων διαστάσεων από τον αρχικό (βλ. SQL SELECT)

Κύβοι με μερικά σύνολα Προ-υπολογισμένες συναθροίσεις Γρήγορες απαντήσεις σε ερωτήματα OLAP Σε μια ιδεατή κατάσταση, προ-υπολογίζουμε όλα τα 2 Ν μερικά σύνολα Συνήθως, υπολογίζουμε τις συναθροίσεις όταν τις χρειαζόμαστε Συναθροίσεις ψηλά στην ιεραρχία μιας διαστάσεις μπορούν να υπολογιστούν από χαμηλότερες ιεραρχικά συναθροίσεις Το αντίστροφο δεν μπορεί να συμβεί

Πλέγμα ενός κύβου Περιφέρεια Χρώμα Χρόνος Αναλυτική Κάθοδος Περιφέρεια Χρόνος Περιφέρεια, Χρώμα Χρόνος, Χρώμα Περιφέρεια Χρόνος Χρώμα Συναθροιστική Άνοδος Σύνολο

Χώρα Παράδειγμα Συναθροίσεων TV PC VCR Σύνολο Χρόνος 1Qtr 2Qtr 3Qtr 4Qtr Σύνολο Ετήσιος τζίρος πωλήσεων TV στην Ελλάδα. Ελλάδα Ισπανία Ιταλία Ετήσιος τζίρος πωλήσεων of TV in All countries Σύνολο πωλήσεων

Σύγκριση MOLAP με ROLAP MOLAP = Πολυδιάστατο OLAP Η αποθήκευση των κύβων γίνεται με την μορφή πολυδιάστατου πίνακα (βλ. γλώσσα C) (Συνήθως) προ-υπολογίζονται όλες οι συναθροίσεις για καλύτερη απόκριση στα ερωτήματα Πλεονεκτήματα : Πολύ αποδοτική από άποψη χώρου και χρόνου η απόκριση σε ερωτήματα Μειονεκτήματα: Η κλιμάκωση δε μεγάλες διαστάσει δεν είναι εύκολη Χρειάζεται ειδικού τύπου αποθηκευτικά μέσα σε επίπεδο λογισμικού και υλικού

Αραίωση (Sparsity) Έστω για παράδειγμα ένα DW μιας Τράπεζας. Υποθέτουμε ότι έχουμε τις διαστάσεις: Πελάτης, Τραπεζικός Λογαριασμός, Τραπεζικό Κατάστημα, Ιστορικό Εάν η τράπεζα έχει 100.000 πελάτες, 10.000 Τραπεζικούς Λογαριασμούς, 1.000 Τραπεζικά Καταστήματα, and Ιστορικό για 1.000 days ο κύβος έχει 1.000.000.000.000.000 cells! Ευτυχώς, τα περισσότερα κελιά του κύβου είναι άδεια. Οι πολυδιάστατοι πίνακες δεν είναι ο καλύτερος τρόπος αποθήκευσης αραιών (sparse) δεδομένα.

Σύγκριση MOLAP με ROLAP ROLAP = Σχεσιακό OLAP Αποθήκευση των κύβων σε ΣΣΒΔ Η επερωτήσεις OLAP γίνονται με SQL Πλεονεκτήματα : Εύκολη κλιμάκωση σε πολλές διαστάσει Εύκολη κλιμάκωση σε μεγάλα σύνολα δεδομένων Sparsity is not a problem Χρησιμοποιεί γνωστή και ώριμη τεχνολογία Μειονεκτήματα : Η απόκριση των ερωτημάτων είναι αρκετά πιο αργή σε σχέση με ένα σύστημα MOLAP Χρειάζεται να κατασκευαστούν δείκτες στους πίνακες που χρησιμοποιούνται για τους κύβους

Διαπινάκωση (cross-tabulation) Είναι μια αναφορά με ομαδοποιημένα δεδομένα σε 2 διαστάσεις Γίνεται συνάθροιση ανά διάσταση Περιέχει μερικά σύνολα Ενέργειες που μπορούν να γίνουν Αριθμητική άνοδος (περεταίρω συνάθροιση) Αριθμητική κάθοδος (λιγότερη συνάθροιση)

Διαπινάκωση (cross-tabulation) Πλυντήρια που χάλασαν Θεσσαλία Ήπειρος Μακεδονία Σύνολο Κόκκινο 40 29 40 109 Μπλε 45 31 37 113 Γκρι 48 40 35 123 Σύνολο 133 100 112 345

Δημιουργία διαπινάκωσης (crosstabulation) με SQL Χαρακτηριστικά Ομαδοποίησης Μετρήσεις SELECT Περιφέρεια, Μήνας, SUM(Ποσότητα) FROM ΠΩΛΗΣΕΙΣ GROUP BY Περιφέρεια, Μήνας WHERE Χρώμα = Κόκκινο' Φίλτρα

Σύνολα ; Η συνάθροιση με SQL χρησιμοποιώντας τη GROUP BY δεν υπολογίζει τα μερικά σύνολα και γενικά Η διαπινάκωση δεν είναι πλήρης. Number of Autos Sold Θεσσαλία Ήπειρος Μακεδονία Σύνολο Κόκκινο 40 29 40 ; Μπλε 45 31 37 ; Γκρι 48 40 35 ; Σύνολο ; ; ; ; Περιφέρια Μήνας SUM Θεσσαλία Ιουλ 45 Θεσσαλία Αυγ 50 Θεσσαλία Sep 38 Ήπειρος Ιουλ 33 Ήπειρος Αυγ 36 Ήπειρος Sep 31 Μακεδονία Ιουλ 30 Μακεδονία Αυγ 42 Μακεδονία Σεπ 40

Λύση: χρήση του UNION ALL Αρχικό ερώτημα Μερικό σύνολο ανά Νομό Μερικό σύνολο ανά Μήνα Γενικό σύνολο SELECT Νομός, Μήνας, SUM(Ποσότητα) FROM ΠΩΛΗΣΕΙΣ GROUP Νομός, Μήνας WHERE Χρώμα= Κόκκινο UNION ALL SELECT Νομός, "ALL", SUM(Ποσότητα) FROM ΠΩΛΗΣΕΙΣ GROUP BY Νομός WHERE Χρώμα= Κόκκινο' UNION ALL SELECT "ALL", Μήνας, SUM(Ποσότητα) FROM ΠΩΛΗΣΕΙΣ GROUP BY Μήνας WHERE Χρώμα= Κόκκινο UNION ALL SELECT "ALL", "ALL", SUM(Ποσότητα) FROM ΠΩΛΗΣΕΙΣ WHERE WHERE Χρώμα= Κόκκινο'

Μια καλύτερη λύση Η λύση με το UNION ALL γίνεται αρκετά πολύπλοκη εάν έχουμε παραπάνω από 2 αθροιζόμενα χαρακτηριστικά Με Ν αθροιζόμενα χαρακτηριστικά 2 n διαφορετικά UNION ALL (βλ. θεωρία συνόλων) Οι επεκτάσεις OLAP που προστέθηκαν στο συντακτικό της SQL 99 είναι πιο κατάλληλες για τέτοια ερωτήματα Επεκτάσεις CUBE, ROLLUP SELECT Περιφέρια, Μήνας, SUM(Ποσότητα) FROM ΠΩΛΗΣΕΙΣ GROUP BY CUBE(Περιφέρεια, Μήνας) WHERE Χρώμα= Κόκκινο'

Αποτελέσματα του CUBE ερωτήματος Παρατηρήσετε την εμφάνιση τουnotice NULL Στα Μερικά σύνολα σε όλα τα επίπεδα Περιφέρεια Χρόνος SUM(Ποσότητα) Θεσσαλία Ιουλ 45 Θεσσαλία Αυγ 50 Θεσσαλία Σεπ 38 Θεσσαλία NULL 133 Ήπειρος Ιουλ 33 Ήπειρος Αυγ 36 Ήπειρος Σεπ 31 Ήπειρος NULL 100 Μακεδονία Ιουλ 30 Μακεδονία Αυγ 42 Μακεδονία Σεπ 40 Μακεδονία NULL 112 NULL Ιουλ 108 NULL Αυγ 128 NULL Σεπ 109 NULL NULL 345

ROLLUP vs. CUBE Ο κύβος υπολογίζει όλο το πλέγμα Η συναθροιστική άνοδος υπολογίζει μια μόνο διαδρομή μέσα από το πλέγμα Order of GROUP BY list matters Groups by all prefixes of the GROUP BY list GROUP BY ROLLUP(A,B,C) A,B,C (A,B) Μερικό σύνολο (A) Μερικό σύνολο Γενικό σύνολο GROUP BY CUBE(A,B,C) A,B,C Μερικά σύνολα για τα: (A,B), (A,C), (B,C), (A), (B), (C) Γενικό σύνολο

Παράδειγμα ROLLUP SELECT Χρώμα, Μήνα, Περιφέρεια, SUM(Ποσότητα) FROM ΠΩΛΗΣΕΙΣ GROUP BY ROLLUP(Χρώμα, Μήνα, Περιφέρεια) Περιφέρεια Χρόνος Περιφέρεια Χρώμα Χρόνος Περιφέρεια, Χρώμα Χρόνος, Χρώμα Περιφέρεια Χρόνος Χρώμα Σύνολο