SQL power wabit
Power wabit Ας υποθέσουμε ότι έχουμε δημιουργήσει με το mondrian ένα ή περισσότερα σχήματα, που μπορεί το κάθε ένα να περιέχει έναν ή περισσότερους κύβους. Κάθε σχήμα μπορεί να αναφέρεται σε διαφορετική βάση δεδομένων. Στο παράδειγμά μας έχουμε φτιάξει μόνο ένα σχήμα, βασισμένo στη βάση δεδομένων test1. Το σχήμα έχει δύο διαστάσεις, το χρόνο και το προϊόν. Στη διάσταση των προϊόντων υπάρχει μία ιεραρχία με δύο επίπεδα (όνομα κατηγορίας και όνομα προϊόντος) ενώ στη διάσταση του χρόνου υπάρχει μία ιεραρχία με τρία επίπεδα (χρόνος, τρίμηνο και όνομα μήνα). Η ποσότητα που μετράμε είναι η είσπραξη (πεδίο dollars_sold )
To σχήμα <Schema name="final"> <Cube name="example cube 1" visible="true" cache="true" enabled="true"> <Table name="sales_fact" alias=""> </Table> <Dimension type="standarddimension" visible="true" foreignkey="product_dim_id" name="product dimension"> <Hierarchy name="product hierarchy" visible="true" hasall="true" primarykey="product_dim_id"> <Table name="products_dim" alias=""> </Table> <Level name="product category" visible="true" table="products_dim" column="category_name" type="string" uniquemembers="false"> </Level> <Level name="product" visible="true" table="products_dim" column="product_name" type="string" uniquemembers="true"> </Level> </Hierarchy> </Dimension> <Dimension type="timedimension" visible="true" foreignkey="date_dim_id" name="time dimension"> <Hierarchy name="time hierarhy" visible="true" hasall="true" primarykey="date_dim_id"> <Table name="date_dim" alias=""> </Table> <Level name="year" visible="true" column="sales_year" type="integer" uniquemembers="false" leveltype="timeyears"> </Level> <Level name="quarter" visible="true" column="sales_quarter" type="integer" uniquemembers="false" leveltype="timequarters"> </Level> <Level name="month" visible="true" column="sales_month_name" type="string" uniquemembers="false" leveltype="timemonths"> </Level> </Hierarchy> </Dimension> <Measure name="dollars sold" column="dollars_sold" datatype="numeric" aggregator="sum" visible="true"> </Measure> </Cube> </Schema> Το
Προκαταρκτικά Όταν εκτελέσουμε για πρώτη φορά το power wabit, πρώτη δουλειά μας είναι να φέρουμε τον driver που θα κάνει τη διασύνδεση με τη mysql. Επιλέγουμε MySQL, πατάμε Add JAR και θα βρούμε το αρχείο αυτό στο φάκελο lib, μέσα στο φάκελο του Kettle (pdi-ce...\data integration) Πατάμε open, επιλέγουμε OK και τελειώσαμε με αυτό.
Προκαταρκτικά Το πακέτο αυτό θα επεξεργαστεί και απεικονίσει τα δεδομένα της βάσης μας, άρα σε πρώτη φάση θα πρέπει να συνδεθούμε με τη βάση δεδομένων. Πατάμε add και μετά database connection και δημιουργούμε μία νέα σύνδεση με τη βάση δεδομένων, όπως έχουμε κάνει σε όλα τα πακέτα με το οποία δουλέψαμε μέχρι τώρα. Στο παράθυρο που φαίνεται πιο κάτω έχω αφήσει κενά τα πεδία Database, Username και Password, όπου ο καθένας θα βάλει τα δικά του. Δεν ξεχνάμε να ελέγξουμε αν η σύνδεση είναι επιτυχημένη, πριν πατήσουμε ΟΚ
Προκαταρκτικά Εκτός από τη σύνδεση με τη βάση δεδομένων, χρειαζόμαστε και ένα ή περισσότερα σχήματα. Στο παράδειγμά μας θα χρησιμοποιήσουμε ένα σχήμα, που το φτιάξαμε στο mondrian. Επιλέγουμε add -->olap connection, εισάγουμε το όνομα της σύνδεσης με τη βάση που μόλις φτιάξαμε και βρίσκουμε το αρχείο xml που αντιστοιχεί στο σχήμα μας. Επιλέγουμε ΟΚ και τελειώσαμε και με αυτό. Στη συνέχεια επιλέγουμε το olap connection που μόλις φτιάξαμε και πατάμε start.
Το περιβάλλον εργασίας
Κάθε φορά επιλέγουμε έναν κύβο, τα δεδομένα του οποίου θα επεξεργαστούμε στην κεντρική περιοχή της επιφάνειας εργασίας. Για να το κάνουμε αυτό πατάμε choose cube και επιλέγουμε τον ένα και μοναδικό κύβο που έχουμε. Οι διαστάσεις και οι τιμές που θα επεξεργαστούμε εμφανίζονται στο δεξιό μέρος της επιφάνειας εργασίας. Πιο συγκεκριμένα, έχουμε δύο δοαστάσεις και κάθε κελί του κύβου μας περιέχει μία τιμή, από το πεδίο dollars_sold.
Στη συνέχεια μεταφέρουμε διαστάσεις και τιμές στην κεντρική περιοχή. Στην παρακάτω εικόνα έχουμε μεταφέρει τη διάσταση του χρόνου στον κάθετο άξονα, τη διάσταση των προϊόντων στον οριζόντιο άξονα και από τις μετρήσεις μεταφέραμε τη μοναδική που είχαμε το πεδίο dollars_sold.
Κλικάροντας τα + και πλοηγούμαστε στις ιεραρχίας, είτε αθροίζοντας (κλικάροντας το -, ανεβαίνουμε επίπεδα στην ιεραρχία) τα δεδομένα των κελιών είτε αναλύοντάς τα (κλικάροντας το + κατεβαίνουμε επίπεδα στην ιεραρχία). Οι ενέργειες που κάναμε (γραμμή, στήλη, μέτρηση) καταγράφονται σαν συστατικά στοιχεία ενός νέου ερωτήματος (Το βλέπουμε στα ερωτήματα στην αριστερή πλευρά της επιφάνειας εργασίας)
Στο πάνω μέρος της επιφάνειας εργασίας, η επιλογή Omit empty rows μπορεί να φανεί χρήσιμη, γιατί θα φύγουν οι κενές γραμμές. Αν θέλουμε να εξαφανίσουμε μία γραμμή ή στήλη κάνουμε δεξί κλικ πάνω στο όνομα της και επιλέγουμε exclude member... Για να δημιουργήσουμε μία γραφική παράσταση, επιλέγουμε create chart στο πάνω μέρος της επιφάνειας εργασίας και η μεσαία περιοχή μετατρέπεται στην εικόνα που βλέπουμε παρακάτω
Μία γραφική παράσταση συνήθως εμφανίζει κάποιες μετρήσεις (τιμές), σε συνάρτηση με τις τιμές μίας διάστασης π.χ. εισπράξεις σε συνάρτηση με το χρόνο. Η διάσταση ορίζεται ως κατηγορία
Ας υποθέσουμε τώρα ότι οι μετρήσεις που θέλουμε να εμφανιστούν, είναι οι εισπράξεις από software. Στη στήλη που αντιστοιχεί στις μετρήσεις αυτές, επιλέγουμε series. Στο παράδειγμά μας θα εμφανίσουμε επίσης τις εισπράξεις από office equipment και άρα θα επιλέξουμε series και για τη στήλη αυτή. Στο μεσαίο μέρος της επιφάνειας εργασίας εμφανίζεται πάντα η προεπισκόπηση της γραφικής μας παράστασης (στο παράδειγμα έχουμε εξαιρέσει άδειες γραμμές καθώς και γραμμές ή στήλες με τιμή null)
Μπορούμε τώρα να φανταστούμε ότι στο αριστερό μέρος της επιφάνειας εργασίας έχουμε δημιουργήσει πολλά olap ερωτήματα, και πολλές γραφικές παραστάσεις. Ο στόχος μας είναι να δημιουργήσουμε μία αναφορά που να είναι εύκολα κατανοητή και να περιέχει χρήσιμη πληροφορία. Στο αριστερό μέρος της οθόνης, υπάρχουν ορισμένα πρότυπα για να δημιουργήσουμε την αναφορά μας, ενώ μπορούμε εύκολα να δημιουργήσουμε και δικά μας σχέδια. Μία αναφορά αποτελείται από κουτιά, κάθε ένα από τα οποία περιέχει είτε μία γραφική παράσταση, είτε δεδομένα.
Στην παρακάτω εικόνες έχει επιλεγεί το πιο πάνω πρότυπο στο πάνω κουτί της σελίδας έχουμε σύρει το γράφημα. Με τον τρόπο αυτό μπορούμε να γεμίσουμε τα κουτιά με χρήσιμη πληροφορία και να δημιουργήσουμε έτσι την αναφορά μας.
Στο πάνω μέρος της οθόνης μας δίνεται η δυνατότητα να αποθηκεύσουμε την αναφορά μας σαν αρχείο pdf. Πριν κλείσουμε το power wabit πρέπει να αποθηκεύσουμε το workspace στο οποίο δουλεύουμε, για να μη χρειάζεται να φτιάξουμε πάλι από την αρχή τα συστατικά της αναφοράς, την επόμενη φορά που θα την παράξουμε