Κεφάλαιο 6. Προετοιμασία Δεδομένων ενόψει της Διαδικασίας Εξόρυξης

6.1 Eισαγωγή βάσης δεδομένων MovieClick
6.2 Εισαγωγή Βάσης Δεδομένων FoodMart
6.3 Εισαγωγή βάσης δεδομένων AdventureWorksDW2008R2
6.4 Επεξεργασία βάσης δεδομένων MovieClick
6.5 Επεξεργασία βάσης δεδομένων FoodMart
6.6 Επεξεργασία βάσης AdventureWorks
6.7 Ασκήσεις

 

Κεφάλαιο 6. Εισαγωγή και προεπεξεργασία δεδομένων

Σύνοψη
Το έκτο κεφάλαιο είναι εισαγωγικό. Αρχικά θα δημιουργήσουμε μια βάση δεδομένων με τη χρήση του SQL Server Management Studio. Στη συνέχεια, θα εισάγουμε αυτήν τη βάση σ’ ένα νέο project που θα δημιουργήσουμε στο SQL Server Business Intelligence. Συγκεκριμένα, θα εισάγουμε και θα προεπεξεργαστούμε τρεις διαφορετικές βάσεις δεδομένων (MovieClick, FoodMart, AdventureWorks) στο περιβάλλον του SQL Server, ώστε να είμαστε σε θέση, σε επόμενα κεφάλαια. να εφαρμόσουμε σε αυτές τεχνικές εξόρυξης δεδομένων.


Πίνακας Περιεχομένων / Περιεχόμενα Κεφαλαίου

6.1. Eισαγωγή βάσης δεδομένων MovieClick

Σ’ αυτήν την ενότητα επιθυμούμε, αρχικά, την εισαγωγή µιας βάσης δεδοµένων που έχει δηµιουργηθεί σε περιβάλλον Microsoft Access (*.mdb) σε ένα project του MS SQL Server 2014. Στη συνέχεια, θα επεξεργαστούμε αυτά τα δεδομένα. Πρέπει να τονίσουμε ότι η βάση δεδομένων MovieClick περιέχει στοιχεία καταγραφής με τις προτιμήσεις των χρηστών για ταινίες και, επομένως, θα χρησιμοποιηθεί στα Κεφάλαια 7, 8 και 9. Συνοπτικά τα βήματα που θα περιγραφούν στην ενότητα αυτή είναι τα παρακάτω:

 Αναλυτικά Βήματα

  1. Όπως φαίνεται στην Εικόνα 6.1, για να δηµιουργήσουµε μια βάση δεδομένων, θα χρησιµοποιήσουµε τον SQL Server Management Studio. Στο περιβάλλον των Windows ακολουθούμε την εξής διαδρομή : Έναρξη ► Όλα τα Προγράµµατα ► Microsoft SQL Server 2014 ► SQL Server Management Studio.

Εικόνα 6.1

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

Εικόνα 6.2


Συγκεκριμένα συμπληρώνουμε τα πεδία ως εξής:

  1. Όπως εμφανίζεται στην Εικόνα 6.3, θα δημιουργήσουμε μια καινούρια βάση δεδομένων. Έτσι επιλέγουμε την καρτέλα Object Explorer, κάνουμε δεξί κλικ στο πεδίο ¨Databases¨ και επιλέγουμε ¨New Database¨

Εικόνα 6.3

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

Εικόνα 6.4

  1. Στη συνέχεια, πρέπει να εισάγουμε τα δεδομένα της βάσης MovieClick.mdb (αρχείο της Access) στην βάση που δημιουργήσαμε. Επιλέγουμε την καρτέλα Object Explorer ► Databases και κάνουμε δεξί κλικ στην βάση MovieClick. Επιλέγουμε Tasks και, στη συνέχεια, Import Data, όπως φαίνεται στην Εικόνα 6.5,

Εικόνα 6.5

  1. Στην Εικόνα 6.6 εμφανίζεται ο οδηγός εισαγωγής/εξαγωγής δεδομένων «Import and Export Wizard» του SQL Server. Επιλέγουμε Next> ώστε να προχωρήσουμε στο επόμενο βήμα.

Εικόνα 6.6

  1. Στο συγκεκριμένο βήμα, όπως φαίνεται στην Εικόνα 6.7, επιλέγουμε τα στοιχεία της βάσης MovieClick την οποία θα εισάγουμε στον SQL Server. Συγκεκριμένα, στο πεδίο Data source (όπου επιλέγουμε το είδος της βάσης που θέλουμε να εισάγουμε), εμείς επιλέγουμε Microsoft Access, καθώς η βάση μας έχει δημιουργηθεί στο περιβάλλον της Microsoft Access. Στο πεδίο File name συμπληρώνουμε τη διεύθυνση του αρχείου όπου βρίσκεται η βάση MovieClick στον υπολογιστή μας. Τέλος, επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.

Εικόνα 6.7

  1. Σ’ αυτό το βήμα επιλέγουμε πού θα εισάγουμε τα δεδομένα της βάσης MovieClick.mdb. Όπως φαίνεται στην Εικόνα 6.8, στο πεδίο Destination επιλέγουμε SQL Native Client 10.0, στο πεδίο Server name επιλέγουμε τον υπολογιστή μας ή localhost, στο πεδίο Authentication επιλέγουμε Use Windows Authentication, στο πεδίο Database επιλέγουμε τη βάση MovieClick που δημιουργήσαμε. Τέλος, επιλέγουμε Next> για το επόμενο βήμα.

Εικόνα 6.8

  1. Στο συγκεκριμένο βήμα καλούμαστε να επιλέξουμε αν θα εισάγουμε όλα τα δεδομένα από τους πίνακες της βάσης MovieClick ή αν θα γράψουμε ένα SQL Query, για να διαχειριστούμε ή να αποκλείσουμε κάποια δεδομένα. Στη συγκεκριμένη περίπτωση, όπως φαίνεται στην Εικόνα 6.9,  επιλέγουμε Copy data from one or more tables or views.

Εικόνα 6.9

  1. Σ’ αυτό το βήμα επιλέγουμε τους πίνακες της βάσης MovieClick.mdb που θα εισάγουμε στην βάση του SQL Server. Στη συγκεκριμένη περίπτωση, όπως φαίνεται στην Εικόνα 6.10,  επιλέγουμε όλους τους πίνακες και, στη συνέχεια, επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.

Εικόνα 6.10

  1. Επιλέγουμε Run immediately, για να γίνει άμεση εκτέλεση, όπως φαίνεται στην Εικόνα 6.11. Στη συνέχεια, επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.

Εικόνα 6.11

  1. Εμφανίζεται μια σύνοψη των επιλογών που έχουμε κάνει μέχρι τώρα, όπως φαίνεται στην Εικόνα 6.12. Επιλέγουμε Finish, για να ολοκληρωθεί η διαδικασία εισαγωγής.

Εικόνα 6.12

  1. Όπως φαίνεται στην Εικόνα 6.13, εφόσον όλα τα βήματα έχουν ολοκληρωθεί με επιτυχία δεν θα πρέπει να υπάρχουν καθόλου Errors ή Warnings.  Η διαδικασία της εισαγωγής της βάσης MovieClick στον SQL Server έχει πλέον ολοκληρωθεί. Κατόπιν επιλέγουμε Close για να αφήσουμε τον οδηγό.
  2. Εικόνα 6.13

  3. Σ’ αυτό το σημείο πρέπει να τονίσουμε ότι η βάση δεδομένων MovieClick αποτελείται από 7 πίνακες, για τους οποίους αφενός μεν δεν έχουν οριστεί πρωτεύοντα κλειδιά και αφετέρου δεν έχουν οριστεί συσχετίσεις μεταξύ τους. Γι’ αυτόν τον λόγο, στην Ενότητα 6.4. θα ορίσουμε μέσα στο περιβάλλον του Visual Studio τόσο πρωτεύοντα κλειδιά σε κάθε πίνακα όσο και συσχετίσεις μεταξύ των πινάκων, προκειμένου να μπορούμε να τρέξουμε αλγορίθμους εξόρυξης δεδομένων. Για τους περισσότερους αλγορίθμους εξόρυξης δεδομένων του περιβάλλοντος του Business Intelligence απαιτείται  η ύπαρξη τόσο πρωτεύοντος κλειδιού σε κάθε πίνακα όσο και αναφορικής ακεραιότητας μεταξύ των πινάκων, προκειμένου να τρέξουν ομαλά και να δώσουν αποτελέσματα.
  4. Στη συνέχεια, πρέπει να δημιουργηθεί ένας λογαριασμός χρήστη (NT SERVICE\MSSQLServerOLAPService)  και να γίνει απόδοση δικαιωμάτων πρόσβασης σ’ αυτόν για τη βάση δεδομένων MovieClick. Διαφορετικά, ο εξ ορισμού χρήστης NT SERVICE\MSSQLServerOLAPService δεν θα έχει τη δυνατότητα να τρέξει  κάποιο αλγόριθμο εξόρυξης δεδομένων στο περιβάλλον του SQL Server Data Tools του Visual Studio γι’ αυτήν τη βάση δεδομένων. Ένα τυπικό σφάλμα στην περίπτωση μη απόδοσης δικαιωμάτων πρόσβασης στον παραπάνω χρήστη εμφανίζεται στην Εικόνα 6.14.

Εικόνα 6.14

Συνεπώς, ακολουθούμε τα παρακάτω βήματα (Α έως Δ), προκειμένου ο χρήστης NT SERVICE\MSSQLServerOLAPService να έχει αργότερα τη δυνατότητα να τρέχει μοντέλα εξόρυξης δεδομένων στο Visual Studio. Τα βήματα περιγράφονται αναλυτικά παρακάτω:

Βήμα Α: Στον κεντρικό μας φάκελο, όπως φαίνεται στην Εικόνα 6.15, πατάμε δεξί κλικ στον Object Explorer και επιλέγουμε Properties. Σκοπός μας είναι δούμε το όνομα που έχει δοθεί στον server.

 

Εικόνα 6.15

Στην Εικόνα 6.16 βλέπουμε το όνομα του διακομιστή και το αντιγράφουμε.

Εικόνα 6.16

Βήμα Β: Επιλέγουμε Logins από την επιλογή Security και, στη συνέχεια, με δεξί κλικ επιλέγουμε New Login, όπως φαίνεται στην Εικόνα 6.17.

Εικόνα 6.17

Βήμα Γ: Ένα χαρακτηριστικό παράδειγμα δημιουργίας φαίνεται στην Εικόνα 6.18. Δημιουργούμε το Login NT SERVICE\MSSQLServerOLAPService (για το σφάλμα 28000 στο Visual Studio) και επιλέγουμε ως Default database την MovieClick.  

Εικόνα 6.18

Βήμα Δ: Έπειτα, για την απόδοση των δικαιωμάτων σε ένα login, πηγαίνουμε στον object explorer και επιλέγουμε Logins από την επιλογή Security και, στη συνέχεια, επιλέγουμε με διπλό κλικ το νέο login που δημιουργήσαμε στο προηγούμενο βήμα. Στη νέα καρτέλα, όπως φαίνεται στην Εικόνα 6.19, επιλέγουμε από τα αριστερά το tab Securables, φροντίζοντας να είναι επιλεγμένη η βάση MovieClick, και δίνουμε Grant σε όλα τα Permissions.

Εικόνα 6.19

Προσοχή! Tονίζεται ότι υπάρχει περίπτωση να απαιτείται η ενεργοποίηση και δεύτερου ή άλλου login, π.χ. το login NT SERVICE\MSOPLAP$όνομα_instance (για το σφάλμα 42000 στο Visual Studio), όπου όνομα_instance είναι το όνομα του SQL Server στον υπολογιστή μας.

 

Πίνακας Περιεχομένων / Περιεχόμενα Κεφαλαίου

6.2. Εισαγωγή Βάσης Δεδομένων FoodMart

Σ’ αυτήν την ενότητα θα εισάγουμε τη βάση δεδομένων foodmart2005_full.bak. Μ’ αυτήν τη βάση θα ασχοληθούμε στο κεφάλαιο 11, για να δημιουργήσουμε έναν κύβο πωλήσεων (sales cube), στον οποίο θα εφαρμόσουμε τεχνικές εξόρυξης δεδομένων. Τονίζεται ότι η βάση δεδομένων FoodMart περιέχει στοιχεία πωλήσεων μιας αλυσίδας παντοπωλείων (SuperMarket).

  1. Όπως φαίνεται στην Εικόνα 6.20, μεταβαίνουμε στην καρτέλα Object Explorer, κάνουμε δεξί κλικ στο Databases και, στη συνέχεια, επιλέγουμε Restore.
  2. Εικόνα 6.20

  3. Όπως φαίνεται στην Εικόνα 6.21, επιλέγουμε καταρχήν το Device και, στη συνέχεια, το κουμπί με τις τρεις τελείες (,,,), ώστε να προσδιορίσουμε τη φυσική θέση στην οποία βρίσκεται η βάση δεδομένων.

  4. Εικόνα 6.21

  5. Όπως φαίνεται στην Εικόνα 6.22, κάνουμε κλικ στο κουμπί Add, προκειμένου να εμφανιστεί το μονοπάτι από το οποίο θα αντλήσουμε το backup της βάσης μας.
  6. Εικόνα 6.22

  7. Εντοπίζουμε τη θέση όπου έχουμε αποθηκεύσει την βάση μας, όπως φαίνεται στην Εικόνα 6.23, και πατάμε ΟΚ και ξανά ΟΚ.

  8. Εικόνα 6.23

  9. Εμφανίζεται η καρτέλα του Object Explorer, όπως φαίνεται στην Εικόνα 6.24, και, έτσι, βλέπουμε τη βάση δεδομένων food που εισάγαμε προηγουμένως.
  10. Εικόνα 6.24

  11. Σ’ αυτό το σημείο θα πρέπει να προσθέσουμε στους owners της βάσης δεδομένων τον χρήστη με τον οποίο συνδεθήκαμε στα Windows. Μεταβαίνουμε, λοιπόν, στον Object Explorer, κάνουμε δεξί κλικ πάνω στην βάση δεδομένων food και επιλέγουμε Properties, όπως φαίνεται στην Εικόνα 6.25.


  12. Εικόνα 6.25

  13. Επιλέγουμε την καρτέλα Files, όπως φαίνεται στην Εικόνα 6.26. Στο πεδίο owner θα πρέπει να προσθέσουμε τον χρήστη με τον οποίο συνδεθήκαμε στα Windows (στο παράδειγμα μας: Παναγιώτης). Γι’ αυτόν τον λόγο, κάνουμε κλικ δίπλα στο κουμπί και εμφανίζεται το παρακάτω παράθυρο. Σε αυτό κάνουμε κλικ στο Browse (κουμπί με τις τρεις τελείες …) και επιλέγουμε τον χρήστη που έχει τα πλήρη δικαιώματα χρήσης του SQL Server. Μ’ αυτόν τον τρόπο θα μπορούμε να προσπελάσουμε την βάση χωρίς πρόβλημα μέσα από το login service account στο κεφάλαιο 11 και δεν θα έχουμε προβλήματα δικαιωμάτων πρόσβασης στη βάση δεδομένων μας.

  14. Εικόνα 6.26

  15. Τέλος, είναι χρήσιμο να εφαρμόσουμε και για τη βάση δεδομένων FoodMart τα βήματα Α έως Δ που περιγράφονται στο τέλος της Ενότ. 6.1, προκειμένου ο εξ ορισμού χρήστης
  16.  NT SERVICE\MSSQLServerOLAPService να έχει τη δυνατότητα να τρέξει  κάποιον αλγόριθμο εξόρυξης δεδομένων στο περιβάλλον του SQL Server Data Tools του Visual Studio γι’ αυτήν τη βάση δεδομένων.

 

Πίνακας Περιεχομένων / Περιεχόμενα Κεφαλαίου

 

6.3. Εισαγωγή βάση δεδομένων AdventureWorksDW2008R2

Σ’ αυτήν την ενότητα θα εισάγουμε τη βάση δεδομένων AdventureWorksDW2008R2.mdf, η οποία θα μας απασχολήσει στο Kεφάλαιο 10 για την δημιουργία ενός μοντέλου πρόβλεψης χρονοσειράς (time series). Τονίζεται ότι η Adventure Works είναι μια πολυεθνική εταιρία που εμπορεύεται ποδήλατα σε διάφορες χώρες. Στην καρτέλα Object Explorer, όπως φαίνεται στην Eικόνα 6.27, κάνουμε δεξί κλικ στο Databases και, στη συνέχεια, επιλέγουμε Attach.


Εικόνα 6.27

  1. Στο παράθυρο που εμφανίζεται, όπως φαίνεται στην Eικόνα 6.28, επιλέγουμε Add, ώστε να καθορίσουμε τον προορισμό στον οποίο βρίσκεται η βάση δεδομένων.

  2. Εικόνα 6.28

  3. Στο παράθυρο που εμφανίζεται, όπως φαίνεται στην Eικόνα 6.29,  εντοπίζουμε τη θέση όπου έχουμε αποθηκεύσει την βάση δεδομένων με κατάληξη *.mdf και την επιλέγουμε. Επιλέγουμε ΟΚ, ώστε να αποθηκεύσουμε την επιλογή μας.
  4. Εικόνα 6.29

  5. Eμφανίζεται το παράθυρο με συγκεντρωμένες όλες τις πληροφορίες της βάσης δεδομένων που θέλουμε να εισάγουμε, όπως φαίνεται στην Eικόνα 6.30. Επιλέγουμε ΟΚ, ώστε να την εισάγουμε, όπως φαίνεται στην Eικόνα 6.31.
  6. Εικόνα 6.30


    Εικόνα 6.31

     

  7. Τέλος, είναι χρήσιμο να εφαρμόσουμε και για τη βάση δεδομένων AdventureWorksDW2008R2 τα βήματα Α έως Δ που περιγράφονται στο τέλος της Ενότητας 6.1, προκειμένου ο εξ ορισμού χρήστης NT SERVICE\MSSQLServerOLAPService να έχει τη δυνατότητα να τρέξει  κάποιον αλγόριθμο εξόρυξης δεδομένων στο περιβάλλον του SQL Server Data Tools του Visual Studio γι’ αυτήν τη βάση δεδομένων μας.

 

Πίνακας Περιεχομένων / Περιεχόμενα Κεφαλαίου


6.4. Επεξεργασία βάσης δεδομένων MovieClick

Σ’ αυτήν την ενότητα θα επεξεργαστούμε τη βάση δεδομένων MovieClick που έχουμε δημιουργήσει στον SQL Server χρησιμοποιώντας το περιβάλλον SQL Server Data Tools for Visual Studio. Πιο συγκεκριμένα,  αρχικά θα δημιουργήσουμε ένα νέο project µε το περιβάλλον του SQL Server Data Tools for Visual Studio για την επεξεργασία της βάσης που δηµιουργήσαµε. Ακολούθως, θα μας απασχολήσει η αποκατάσταση των συσχετίσεων (relationship) στην βάση του SQL Server 2014.

Αναλυτικά βήματα

  • Στο περιβάλλον των Windows επιλέγουμε τη διαδρομή Έναρξη ► Όλα τα Προγράμματα ► SQL Server Data Tools for Visual Studio  2012, όπως φαίνεται στην Εικόνα 6.32.
  • Εικόνα 6.32

    1. Όπως φαίνεται στην Εικόνα 6.33, δημιουργούμε ένα νέο project στο οποίο θα εισάγουμε τα δεδομένα από την βάση MovieClick που έχουμε δημιουργήσει στον SQL Server Management Studio. Συγκεκριμένα, επιλέγουμε New ► Project.

    Εικόνα 6.33

    1. Στον οδηγό που εμφανίζεται, όπως φαίνεται στην Εικόνα 6.34, επιλέγουμε Business Intelligence Projects ► Analysis Services Project.

    Εικόνα 6.34

    Στη συνέχεια, όπως φαίνεται στην ίδια Εικόνα, συμπληρώνουμε τα στοιχεία του project ως εξής:

     

    1. Στην καρτέλα Solution Explorer επιλέγουμε MovieClickProject ► κάνουμε δεξί κλικ στο Data Sources ► New Data Source

    Εικόνα 6.35

    1. Στο μήνυμα καλωσορίσματος του οδηγού Data Source Wizard, όπως φαίνεται στην Εικόνα 6.36, επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.

    Εικόνα 6.36

    1. Σε αυτό το βήμα, όπως φαίνεται στην Εικόνα 6.37, πρέπει να επιλέξουμε αν θα δημιουργήσουμε μια νέα σύνδεση με έναν διακομιστή για να δημιουργήσουμε το Data Source ή αν θα επιλέξουμε μια ήδη υπάρχουσα σύνδεση. Στη συγκεκριμένη περίπτωση επιλέγουμε “Create a data source based on an existing or new connection” και, στη συνέχεια, επιλέγουμε New…

    Εικόνα 6.37

    1. Στον οδηγό σύνδεσης που εμφανίζεται, όπως φαίνεται στην Εικόνα 6.38, συμπληρώνουμε τα στοιχεία ως εξής:

    Εικόνα 6.38

    Εικόνα 6.39

    1. Επιστρέφοντας στο προηγούμενο παράθυρο, στο πεδίο Data connections βλέπουμε τη σύνδεση localhost.MovieClick (όπως φαίνεται στην Εικόνα 6.40) ή την αντίστοιχη σύνδεση με το όνομα του υπολογιστή. Στη συνέχεια, επιλέγουμε Next>, για να προχωρήσουμε στο επόμενο βήμα.

    Εικόνα 6.40

    1. Όπως εμφανίζεται στην Εικόνα 6.41, επιλέγουμε Use the service account, αφού δεν θέλουμε να ορίσουμε κάποιο άλλο username και password στο data source. Στη συνέχεια, επιλέγουμε Next>.

    Εικόνα 6.41

    1. Σ’ αυτό το βήμα ορίζουμε όνομα στο DataSource. Στη συγκεκριμένη περίπτωση συμπληρώνουμε το όνομα MovieClick, όπως φαίνεται στην Εικόνα 6.42, και, στη συνέχεια, επιλέγουμε Finish, ώστε να δημιουργηθεί το Data Source.

    Εικόνα 6.42

    1. Στο Data Sources του MovieClickProject βλέπουμε ότι έχει δημιουργηθεί το MovieClick.ds. Στη συνέχεια, θα δημιουργήσουμε ένα Data Source View που θα έχει τα δεδομένα του MovieClick.ds και θα μας προσφέρει τη γραφική αναπαράσταση της βάσης που έχουμε συνδέσει με το MovieClick.ds. Επιλέγουμε την καρτέλα Solution Explorer και, όπως φαίνεται στην Εικόνα 6.43, κάνουμε δεξί κλικ στο Data Source Views και επιλέγουμε New Data Source View…

    Εικόνα 6.43

    1. Όπως εμφανίζεται στην Εικόνα 6.44, επιλέγουμε το Data Source με το οποίο θα συσχετίσουμε το Data Source View που θέλουμε να δημιουργήσουμε. Στη συγκεκριμένη περίπτωση επιλέγουμε το MovieClick και στη συνέχεια επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.

    Εικόνα 6.44

    1. Επειδή τα δεδομένα που έχει η βάση MovieClick έχουν εισαχθεί από τη βάση της Access, οι συσχετίσεις μεταξύ των πινάκων δεν έχουν μεταφερθεί. Έτσι, επιλέγουμε Create logical relationships by matching columns και Same name as primary key, όπως φαίνεται στην Εικόνα 6.45. Στη συνέχεια, επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.

    Εικόνα 6.45

    1. Όπως φαίνεται στην Εικόνα 6.46, εμφανίζονται όλοι οι πίνακες που είναι διαθέσιμοι για να εισαχθούν. Για να εισάγουμε όλους τους πίνακες επιλέγουμε  >> .

    Εικόνα 6.46

    Όπως φαίνεται στην Εικόνα 6.47, όλοι οι πίνακες έχουν εισαχθεί. Στη συνέχεια, επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.

    Εικόνα 6.47

    1. Σ’ αυτό το στάδιο ορίζουμε όνομα στο Data Source View. Στη συγκεκριμένη περίπτωση, όπως φαίνεται στην Εικόνα 6.48, το ονομάζουμε MovieClick. Στη συνέχεια, επιλέγουμε Finish, ώστε να ολοκληρωθεί η διαδικασία.

    Εικόνα 6.48

    1. Στη συνέχεια, όπως φαίνεται στην Εικόνα 6.49, εμφανίζεται το διάγραμμα με τους πίνακες της βάσης μας.

    Εικόνα 6.49

    1. Στη συνέχεια, θα πρέπει να αποκαταστήσουμε τα πρωτεύοντα κλειδιά στη βάση μας. Έτσι, για τον πίνακα Customers κάνουμε δεξί κλικ στο πεδίο CustomerID και επιλέγουμε Set Logical Primary Key. Για όλους τους υπόλοιπους πίνακες θα πρέπει να ορίσουμε ένα σύνθετο πρωτεύον κλειδί που θα αποτελείται από το πεδίο CustomerID και το αντίστοιχο δεύτερο πεδίο του κάθε πίνακα, όπως φαίνεται στην Εικόνα 6.50.

    Εικόνα 6.50

    1. Στη συνέχεια θα πρέπει να αποκαταστήσουμε τις συσχετίσεις όλων των πινάκων με τον κεντρικό πίνακα Customers. Έτσι, σε κάθε πίνακα κάνουμε δεξί κλικ στο πεδίο του CustomerID και επιλέγουμε New Relationship, όπως φαίνεται στην Εικόνα 6.51.

    Εικόνα 6.51

    1. Στο αναδυόμενο παράθυρου που φαίνεται στην Εικόνα 6.52, συμπληρώνουμε τα στοιχεία ως εξής:

     

    Εικόνα 6.52

    1. Στην Εικόνα 6.53 εμφανίζουμε τους πίνακες της βάσης μας, αφού έχουν αποκατασταθεί τα πρωτεύοντα κλειδιά και οι συσχετίσεις μεταξύ των δεδομένων. Το συγκεκριμένο σχήμα της βάσης δεδομένων MovieClick έχει παραχθεί στο περιβάλλον του SQL Server Management Studio. Όπως μπορούμε να παρατηρήσουμε, ο κεντρικός πίνακας της βάσης είναι ο πίνακας Customers, ενώ οι συσχετιζόμενοι πίνακες αποθηκεύουν τις προτιμήσεις του κάθε πελάτη. Για παράδειγμα, ο πίνακας Movies καταγράφει τους τίτλους των ταινιών που έχει δει κάθε πελάτης. Ο πίνακας Actors καταγράφει τους αγαπημένους ηθοποιούς κάθε πελάτη. Ο πίνακας Hobbies καταγράφει τα ενδιαφέροντα (travel, computer, photography, κτλ.) του κάθε πελάτη. Ο πίνακας Channels καταγράφει τα τηλεοπτικά κανάλια/παρόχους (Sci-Fi Channel, HBO, Cinemax, κτλ.) που προτιμάει κάθε πελάτης. Ο πίνακας Technology καταγράφει τον εξοπλισμό (DVD player, ηλεκτρονικό υπολογιστή, δορυφορική Τηλεόραση, κτλ.) που διαθέτει κάθε πελάτης, ενώ ο πίνακας Criteria αποθηκεύει τους λόγους (Previews, Genre, Friends Recommendation, κτλ.) για τους οποίους επιλέγει να δει μια ταινία. Τονίζεται ότι το παρακάτω σχεσιακό σχήμα δεν απαιτείται να παραχθεί ξανά, διότι τα βήματα που υλοποιήσαμε σ’ αυτήν την ενότητα το έχουν ήδη δημιουργήσει.

    Εικόνα 6.53

    1.  Στη συνέχεια, στην καρτέλα Solution Explorer ► κάνουμε δεξί κλικ στο MovieClickProject ► Deploy έτσι ώστε να αποθηκευτούν οι αλλαγές που πραγματοποιήσαμε στο project.

     

    Πίνακας Περιεχομένων / Περιεχόμενα Κεφαλαίου


    6.5. Επεξεργασία βάσης δεδομένων FoodMart

    Σ’ αυτήν την ενότητα θα επεξεργαστούμε τη βάση δεδομένων FoodMart που έχουμε δημιουργήσει στον SQL Server χρησιμοποιώντας το περιβάλλον SQL Server Data Tools του Visual Studio. 

    Αναλυτικά βήματα

    1. Για να δημιουργήσουμε ένα νέο project στο περιβάλλον του MS SQL Server Data Tools του Visual Studio, ανοίγουμε, όπως φαίνεται στην Εικόνα 6.54, τις επιλογές New και, στη συνέχεια, Project, για να εισάγουμε τα δεδομένα από την βάση FoodMart που έχουμε δημιουργήσει στον SQL Server Management Studio.

    Εικόνα 6.54

    1. Στον οδηγό που εμφανίζεται, όπως φαίνεται στην Εικόνα 6.55,  επιλέγουμε Business Intelligence Templates στο αριστερό pane και Analysis Services Project στα δεξιά. Επιλέγουμε ΟΚ, ώστε να δημιουργηθεί το project.

    Εικόνα 6.55

    Στη συνέχεια συμπληρώνουμε τα στοιχεία του project ως εξής:

     

    1. Στην καρτέλα Solution Explorer επιλέγουμε  FoodMart. Κάνουμε δεξί κλικ στο Data Sources και επιλέγουμε New Data Source, όπως φαίνεται στην Εικόνα 6.56.

    Εικόνα 6.56

    1. Σ’ αυτό το βήμα, όπως φαίνεται στην Εικόνα 6.57, πρέπει να επιλέξουμε αν θα δημιουργήσουμε μια νέα σύνδεση με έναν διακομιστή για να δημιουργήσουμε το Data Source ή αν θα επιλέξουμε μια ήδη υπάρχουσα σύνδεση. Στη συγκεκριμένη περίπτωση επιλέγουμε Create a data source based on an existing or new connection και, στη συνέχεια, επιλέγουμε New…

    Εικόνα 6.57

    1. Στον οδηγό σύνδεσης, όπως φαίνεται στην Εικόνα 6.58, συμπληρώνουμε τα στοιχεία ως εξής:

    Εικόνα 6.58

    1. Επιστρέφοντας στο προηγούμενο παράθυρο, όπως φαίνεται στην Εικόνα 6.59, στο πεδίο Data connections βλέπουμε τη σύνδεση localhost.Food Mart 2005 ή την αντίστοιχη σύνδεση με το όνομα του υπολογιστή. Στη συνέχεια, επιλέγουμε Next>, για να προχωρήσουμε στο επόμενο βήμα.                                                                                                                                            

    Εικόνα 6.59

    1. Επιλέγουμε Use the service account, όπως φαίνεται στην Εικόνα 6.60, και, στη συνέχεια, Next>.


    Εικόνα 6.60

    1. Σ’ αυτό το βήμα δίνουμε ένα όνομα στο DataSource. Στη συγκεκριμένη περίπτωση, όπως φαίνεται στην Εικόνα 6.61, συμπληρώνουμε το όνομα FoodMart και, στη συνέχεια, επιλέγουμε Finish, ώστε να δημιουργηθεί το DataSource.

    Εικόνα 6.61

    Στο Data Sources του project FoodMart βλέπουμε ότι έχει δημιουργηθεί το FoodMart.ds. Στη συνέχεια, θα δημιουργήσουμε ένα Data Source View που θα έχει τα δεδομένα του MovieClick.ds και θα μας προσφέρει τη γραφική αναπαράσταση της βάσης που έχουμε συνδέσει με το FoodMart.ds.

     Επιλέγουμε, λοιπόν, την καρτέλα Solution Explorer, κάνουμε δεξί κλικ στο Data Source Views και πατάμε New Data

    1.  Source View…, όπως φαίνεται στην Εικόνα 6.62.

     

    Εικόνα 6.62

    1. Όπως φαίνεται στην Εικόνα 6.63, επιλέγουμε το Data Source με το οποίο θα συσχετίσουμε το Data Source View που θέλουμε να δημιουργήσουμε. Στη συγκεκριμένη περίπτωση, επιλέγουμε το FoodMart και, στη συνέχεια, επιλέγουμε Next>, ώστε να προχωρήσουμε στο επόμενο βήμα.


    Εικόνα 6.63

    1. Στην Εικόνα 6.64 απεικονίζονται όλοι οι πίνακες που είναι διαθέσιμοι για να εισαχθούν. Για να εισάγουμε όλους τους πίνακες, επιλέγουμε  >> .

    Εικόνα 6.64

    1. Σ’ αυτό το στάδιο ορίζουμε όνομα στο Data Source View. Στη συγκεκριμένη περίπτωση, όπως φαίνεται στην Εικόνα 6.65, το ονομάζουμε FoodMart. Στη συνέχεια, επιλέγουμε Finish, ώστε να ολοκληρωθεί η διαδικασία.

    Εικόνα 6.65

    1. Στη συνέχεια, όπως φαίνεται στην Εικόνα 6.66, εμφανίζονται οι συσχετίσεις μεταξύ των πινάκων της βάσης που θα ασχοληθούμε. Όπως παρατηρούμε, ο κεντρικός πίνακας είναι ο Sales_fact_1997, στον οποίο καταλήγουν έξι ξένα κλειδιά (product_id, time_id, customer_id, promotion_id, store_id και currency_id), τα οποία είναι και πρωτεύοντα κλειδιά σε έξι αντίστοιχους πίνακες (Product, time_by_day, customer, promotion, store, currency). O πίνακας sales_fact_1997 είναι ένας κύβος πωλήσεων που αφορά τις πωλήσεις και το κόστος πωλήσεων (store_sales και store_cost) ανά κατάστημα. Τονίζουμε ότι οι πίνακες της βάσης δεδομένων FoodMart είναι πολύ περισσότεροι. Εμείς εστιάζουμε μόνο στους παρακάτω επιλεγμένους πίνακες της βάσης δεδομένων FoodMart, για να γίνουν κατανοητοί από τον αναγνώστη, καθώς στο κεφάλαιο 11 θα ασχοληθούμε με αυτούς διεξοδικότερα.

    Εικόνα 6.66

    Πίνακας Περιεχομένων / Περιεχόμενα Κεφαλαίου

    6.6. Επεξεργασία βάσης AdventureWorks

    Σ’ αυτήν την ενότητα θα επεξεργαστούμε τη βάση δεδομένων AdventureWorksDW2008R2 που έχουμε δημιουργήσει στον SQL Server χρησιμοποιώντας το περιβάλλον SQL Server Data Tools for Visual Studio 2012.

    1. Στο περιβάλλον των Windows ακολουθούμε τη διαδρομή Έναρξη ► Όλα τα Προγράμματα και, από τον φάκελο Microsoft SQL Visual Studio 2012, επιλέγουμε SQL Server Data Tools for Visual Studio 2012, όπως φαίνεται στην Εικόνα 6.67.


    Εικόνα 6.67

    1. Στο νέο παράθυρο, όπως φαίνεται στην Εικόνα 6.68, δημιουργούμε ένα νέο project στο οποίο θα εισάγουμε τα δεδομένα από τη βάση AdventureWorksDW2008R2 που έχουμε δημιουργήσει στον SQL Server Management Studio. Επιλέγουμε, λοιπόν, αρχικά New ► Project.

    Εικόνα 6.68

    1. Στον οδηγό που εμφανίζεται, επιλέγουμε Business Intelligence Projects ► Analysis Services Multidimensional and Data Mining Project. Στη συνέχεια, συμπληρώνουμε τα στοιχεία του project με τον τρόπο που φαίνεται στην Εικόνα 6.69. Πιο συγκεκριμένα:

    Εικόνα 6.69

    1. Επιστρέφουμε στο Visual Studio και επιλέγουμε με κλικ το Project και, έπειτα, το Properties, όπως φαίνεται στην εικονα 6.70.


    Εικόνα 6.70

    1. Στην αριστερή στήλη, όπως φαίνεται στην Εικόνα 6.71, κάνουμε κλικ στο Deployment και αλλάζουμε το όνομα του Server σε localhost, ή εναλλακτικά, στο όνομα που έχουμε δώσει στο instance που δημιουργήσαμε κατά την εγκατάσταση του SQL. Πατάμε OK (Εικόνα 6.71).

    Εικόνα 6.71

    1. Στην καρτέλα Solution Explorer επιλέγουμε AdventureWorksDW2008R2, και, όπως φαίνεται στην Εικόνα 6.72, κάνουμε δεξί κλικ στο Data Sources και επιλέγουμε New Data Source.

    Εικόνα 6.72

    1. Σ’ αυτό το βήμα πρέπει να επιλέξουμε αν θα δημιουργήσουμε μια νέα σύνδεση με έναν διακομιστή, για να δημιουργήσουμε το Data Source, ή αν θα επιλέξουμε μια ήδη υπάρχουσα σύνδεση. Στη συγκεκριμένη περίπτωση επιλέγουμε Create a data source based on an existing or new connection και, στη συνέχεια, επιλέγουμε New…, όπως φαίνεται στην Εικόνα 6.73.

    Εικόνα 6.73

    1. Στον διαχειριστή σύνδεσης που εμφανίζεται, όπως φαίνεται στην Εικόνα 6.74, συμπληρώνουμε τα στοιχεία ως εξής:

    Εικόνα 6.74

    1. Επιστρέφοντας στο προηγούμενο παράθυρο, όπως φαίνεται στην Εικόνα 6.75, στο πεδίο Data connections βλέπουμε τη σύνδεση localhost.AdventureWorksDW2008R2 ή την αντίστοιχη σύνδεση με το όνομα του υπολογιστή. Στη συνέχεια, επιλέγουμε Next, για να προχωρήσουμε στο επόμενο βήμα.

    Εικόνα 6.75

    1. Στο νέο παράθυρο, όπως φαίνεται στην Εικόνα 6.76, επιλέγουμε Use the service account, αφού δεν θέλουμε να ορίσουμε κάποιο άλλο username και password στο data source. Στη συνέχεια, επιλέγουμε Next.

    Εικόνα 6.76

    1. Σ’ αυτό το βήμα ορίζουμε όνομα στο DataSource, Στη συγκεκριμένη περίπτωση, όπως φαίνεται στην Εικόνα 6.77, συμπληρώνουμε το όνομα AdventureWorksDW2008R2 και, στη συνέχεια, επιλέγουμε Finish, ώστε να δημιουργηθεί το DataSource.

    Εικόνα 6.77

    1. Στο Data Sources του AdventureWorksDW2008R2 βλέπουμε ότι έχει δημιουργηθεί το AdventureWorksDW2008R2 source.ds. Στη συνέχεια, θα δημιουργήσουμε ένα Data Source View που θα έχει τα δεδομένα του AdventureWorksDW2008R2 source.ds και θα μας προσφέρει τη γραφική αναπαράσταση της βάσης που έχουμε συνδέσει με το AdventureWorksDW2008R2 source.ds. Επιλέγουμε, λοιπόν, την καρτέλα Solution Explorer και, όπως φαίνεται στην Εικόνα 6.78, κάνουμε δεξί κλικ στο Data Source Views και επιλέγουμε New Data Source View.

    Εικόνα 6.78

    1. Στο παράθυρο που εμφανίζεται, όπως φαίνεται στην Εικόνα 6.79, επιλέγουμε το Data Source με το οποίο θα συσχετίσουμε το Data Source View που θέλουμε να δημιουργήσουμε. Στη συγκεκριμένη περίπτωση, επιλέγουμε το Adventure Works2014 source και, στη συνέχεια, επιλέγουμε Next, ώστε να προχωρήσουμε στο επόμενο βήμα.

    Εικόνα 6.79

    1. Στο νέο παράθυρο, όπως φαίνεται στην Εικόνα 6.80, εμφανίζονται όλοι οι πίνακες που είναι διαθέσιμοι για να εισαχθούν.  Παρατηρούμε ότι εμπεριέχονται όχι μόνο πίνακες (tables) αλλά και όψεις (views).


    Εικόνα 6.80

    1. H όψη που πρέπει να εισαχθεί ονομάζεται vTimeSeries. Στη συνέχεια, όπως φαίνεται στην Εικόνα 6.81, επιλέγουμε Next, ώστε να προχωρήσουμε στο επόμενο βήμα.


    Εικόνα 6.81

    1. Σ’ αυτό το στάδιο, όπως φαίνεται στην Εικόνα 6.82, ορίζουμε όνομα στο Data Source View. Στη συγκεκριμένη περίπτωση το ονομάζουμε AdventureWorksDW2008R2. Στη συνέχεια, επιλέγουμε Finish, ώστε να ολοκληρωθεί η διαδικασία.


    Εικόνα 6.82

    1. Τέλος, εμφανίζεται το παράθυρο που περιέχει το διάγραμμα με την όψη vTimeSeries της βάσης μας, όπως φαίνεται στην Εικόνα 6.83.


    Εικόνα 6.83


    1. Θα πρέπει να τονιστεί ότι η παραπάνω όψη (view) έχει προκύψει μετά από κατάλληλο ερώτημα της βάσης δεδομένων AdventureWorksDW2008R2. Για την αμεσότερη κατανόηση των βασικών χαρακτηριστικών της παραπάνω βάσης δεδομένων, παρουσιάζουμε, όπως φαίνεται στην Εικόνα 6.84, ένα μέρος του σχεσιακού σχήματος της βάσης δεδομένων AdventureWorksDW2008R2.

    Εικόνα 6.84

     

     

    Πίνακας Περιεχομένων / Περιεχόμενα Κεφαλαίου

    6.7. Ασκήσεις

    1. Να κατεβάσετε από τον δικτυακό τόπο http://delab.csd.auth.gr/~symeon/courses/dm/index.htm την βάση δεδομένων FoodMart και να την εγκαταστήσετε στο SQL Server. Να εκχωρήσετε, επίσης, τα κατάλληλα δικαιώματα πρόσβασης στο όνομά σας, προκειμένου να μπορείτε να τρέξετε αλγορίθμους εξόρυξης δεδομένων στο περιβάλλον του Data Tools του Visual Studio.
    1. Να δημιουργήσετε ένα project και ένα Data Source View για την βάση δεδομένων FoodMart στο περιβάλλον του Data Tools του Visual Studio.

    1. Να κατεβάσετε από τον δικτυακό τόπο http://delab.csd.auth.gr/~symeon/courses/dm/index.htm την βάση δεδομένων AdventureWorksDW2008R2 και να την εγκαταστήσετε στο SQL Server. Να εκχωρήσετε, επίσης, τα κατάλληλα δικαιώματα πρόσβασης στο όνομά σας, προκειμένου να μπορείτε να τρέξετε αλγορίθμους εξόρυξης δεδομένων στο περιβάλλον του Data Tools του Visual Studio.

    2. Να δημιουργήσετε ένα project και ένα Data Source View για την βάση δεδομένων AdventureWorksDW2008R2 στο περιβάλλον του Data Tools του Visual Studio.Να κατεβάσετε από τον δικτυακό τόπο http://delab.csd.auth.gr/~symeon/courses/dm/index.htm την βάση δεδομένων MovieClick και να την εγκαταστήσετε στο SQL Server.

    3. Να εκχωρήσετε, επίσης, τα κατάλληλα δικαιώματα πρόσβασης στο όνομά σας, προκειμένου να μπορείτε να τρέξετε αλγορίθμους εξόρυξης δεδομένων στο περιβάλλον του Data Tools του Visual Studio.Να δημιουργήσετε ένα project και ένα Data Source View για την βάση δεδομένων MovieClick στο περιβάλλον του Data Tools του Visual Studio.

     

    Data Definition Language - DDL

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

    Data Manipulation Language - DML

    Η γλώσσα χειρισμού δεδομένων χρησιμοποιείται για την επεξεργασία, την ενημέρωση, την εισαγωγή και την διαγραφή δεδομένων.

    Διάγραμμα οντοτήτων-συσχετίσεων (διάγραμμα E-R)

    Τα Διάγραμματα οντοτήτων-συσχετίσεων παρέχουν ένα απλό και κατανοητό τρόπο περιγραφής της δομής των δεδομένων της Βάσης Δεδομένων

    Ερώτημα SQL

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

    create database

    Ένας νέος πίνακας δημιουργείται με τη χρήση της εντολής CREATE TABLE ή σύνταξη της οποίας έχει ως εξής :

    CREATE TABLE  ( 
    <όνομα πεδίου 1> <τύπος πεδίου 1>,
    <όνομα πεδίου 2> <τύπος πεδίου 2>,

    <όνομα πεδίου Ν> <τύπος πεδίου Ν>);

    Drop Database

    Μπορούμε να διαγράψουμε ολόκληρο πίνακα, μαζί με τα δεδομένα που τυχόν έχει χρησιμοποιώντας την εντολή DROP σύμφωνα με το ακόλουθο πρότυπο :
    DROP TABLE <όνομα πίνακα>

    ON UPDATE

    H πρόταση ON UPDATE προσδιορίζει την ενέργεια που θα εκτελεστεί αν θέλουμε να αλλάξουμε την τιμή ενός πεδίου:
    UPDATE <όνομα πίνακα> SET <όνομα πεδίου> <νέα τιμή πεδίου> WHERE <κριτήρια επιλογής εγγραφών>

    ON DELETE

    Ο σκοπός είναι πολύ απλός, διαγράφει εγγραφές από ένα πίνακα. Και πάλι έχομε την δυνατότητα να ορίσουμε ποιές εγγραφές θέλουμε να διαγραφούν (ή και όλες) π.χ.:
    DELETE FROM product WHERE id=1

    Καρτεσιανού γινομένου

    To Καρτεσιανό γινόμενο αποτελεί την πράξη μεταξύ δύο πινάκων όπου η κάθε εγγραφή του ενός πίνακα συνδυάζεται με όλες τις εγγραφές του άλλου πίνακα

    πράξη της επιλογής/selection

    Η SQL εντολή μέσω της οποίας ανακτούμε πληροφορίες και συντάσσουμε ερωτήματα είναι η SELECT. Η γενική σύνταξη της SELECΤ είναι αρκετά σύνθετη, ωστόσο ένα απλό πρότυπο είναι το ακόλουθο:
    SELECT <πεδίο που θέλουμε να φαίνονται>
    FROM <πίνακες από τους οποίους θα αντληθούν τα δεδομένα>
    WHERE <κριτήρια επιλογής των εγγραφών>

    πράξης της σύνδεσης (join)

    Η εντολή JOIN σημαίνει σύνδεση, δηλαδή συνδυασμός δεδομένων από δύο ή περισσότερους πίνακες.

    left outer join

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

    πράξη του full outer join

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

    όρος distinct

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

    όρος GROUP BY

    H λέξη GROUP BY προσδιορίζει τις στήλες με τις οποίες θα πραγματοποιηθεί ομαδοποίηση (grouping) των δεδομένων.

    όρος HAVING

    Ο όρος HAVING χρησιμοποιείται για να ορίσει περιοσρισμούς που σχετίζονται με τα ήδη ομαδοποιημένα αποτελέσματα που έχουν δημιουργηθεί με την GROUP BY.

    πράξη της ένωσης πινάκων/σχέσεων

    H SQL παρέχει ειδικές εντολές για την υποστήριξη των πράξεων της σχεσιακής άλγεβρας που αναφέρονται στην ένωση, διαφορά και τομή πινάκων. Οι πράξη της ένωσης (UNION) συνενώνει τις εγγραφές δύο ή περισσότερων πινάκων.
    Ένα παράδειγμα ένωσης δίνεται παρακάτω:
    SELECT συνέδριο
    FROM πρακτικά_συνεδρίου
    UNION
    SELECT τιτλος
    FROM περιοδικό;

    πράξη της τομής σχέσεων

    H SQL παρέχει ειδικές εντολές για την υποστήριξη των πράξεων της σχεσιακής άλγεβρας που αναφέρονται στην ένωση, διαφορά και τομή πινάκων. Οι πράξεις αυτές υλοποιούνται στην SQL με τις εντολές UNION, EXCEPT και INTERSECΤ αντιστοίχως.
    παράδειγμα τομής :
    SELECT ονομα
    FROM συνδρομητης
    INTERSECT
    SELECT ονομα
    FROM συγγραφεας;

    πράξη της διαφοράς σχέσεων

    H SQL παρέχει ειδικές εντολές για την υποστήριξη των πράξεων της σχεσιακής άλγεβρας που αναφέρονται στην ένωση, διαφορά και τομή πινάκων. Οι πράξεις αυτές υλοποιούνται στην SQL με τις εντολές UNION, EXCEPT και INTERSECΤ αντιστοίχως.
    παράδειγμα διαφοράς :
    SELECT κωδικός,τίτλος
    FROM άρθρο
    EXCEPT
    SELECT κωδικός,τίτλος
    FROM άρθρο
    WHERE κωδικός_περιοδικού IS NOT NULL;

    Ο όρος ΙΝ

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

    Ο ορος Νot Ιn

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

    Οι όροι all και some

    H SQL προσφέρει τα κατηγορήματα SOME(ή ΑΝΥ) και ALL τα οποία αντιστοιχούν στον υπαρξιακό και καθολικό ποσοδείκτη που χρησιμοποιούμε στα μαθηματικά. Με τη χρήση των κατηγορημάτων αυτών μπορούμε να συντάξουμε πολύ χρήσιμα ερωτήματα με τη χρήση υποερωτημάτων. Πριν απο τα κατηγορήματα SOME και ALL, μπορεί να προηγείται οποιοσδήποτε τελεστής σύγκρισης (=, >, <, >=, <=, <>)

    Οι όροι exists και not exists

    Η τιμή που επιστρέφει το κατηγόρημα EXISTS είναι αληθής, αν το σύνολο που ακολουθεί δεν είναι κενό. Σε διαφορετική περίπτωση η τιμή που επιστρέφεται είναι ψευδής.

    CREATE VIEW

    Για τον ορισμό μιας όψης, η SQL παρέχει την εντολή CREATE VIEW που συντάσσεται ως εξής:
    CREATE VIEW όνομα-όψης
    AS
    (υποερώτημα SQL);

    DELETE FROM

    Παρόμοια με την εντολή UPDATE λειτουργεί και η εντολή DELETE. Ο σκοπός της είναι πολύ απλός, διαγράφει εγγραφές από ένα πίνακα.

    DROP TABLE

    Η πλήρης διαγραφή ενός πίνακα γίνεται χρησιμοποιώντας την εντολή DROP σύμφωνα με τον ακόλουθο πρότυπο :
    DROP TABLE <ονομα πίνακα>

    Οι αποθηκευμένες διαδικασίες/stored procedures

    O SQL Server δίνει την δυνατότητα υλοποίησης τμημάτων κώδικα τα οποία παραμένουν αποθηκευμένα μέσα στη Βάση Δεδομένων και καλούνται αποθηκευμένες διαδικασίες (stored procedures). Αυτά ενεργοποιούνται ανά τακτά χρονικά διαστήματα για την εκτέλεση μιας σημαντικής λειτουργίας.

    Το εύναυσμα/trigger

    Ένας σκανδαλισμός ή εύναυσμα (trigger) είναι ένα τμήμα κώδικα που εκτελείται όταν συμβεί ένα γεγονός. Τα γεγονότα που ενεργοποιούν σκανδαλισμούς είναι εισαγωγές, διαγραφές, και ενημερώσεις στα δεδομένα ενός πίνακα.

    Ευρετήριο

    Ένας κατάλογος (ευρετήριο) ορίζεται σε μία ή περισσότερες στήλες ενός πίνακα και στοχεύει στην αποδοτικότερη εκτέλεση των ερωτημάτων που χρησιμοποιούν τις στήλες αυτές στη συνθήκη WHERE. Η κατασκευή και κατάργηση καταλόγων πραγματοποιείται με τις εντολές CREATE INDEX και DROP INDEX αντίστοιχα.

    ALTER TABLE

    O ορισμός ενός πίνακα μπορεί να μεταβληθεί στην πορεία, αναλόγως με τις απαιτήσεις. H SQL προσφέρει την εντολή ALTER TABLE, με την οποία επιτρέπονται να γίνουν συγκεκριμένες αλλαγές στον πίνακα: (προσθήκη νέας στήλης, διαγραφή υπάρχουσας στήλης, αλλαγή πεδίου ορισμού μίας στήλης, εισαγωγή νέου περιορισμού, κατάργηση περιορισμού, αλλαγή της εξ ορισμού τιμής στήλης, κατάργηση αρχικής τιμής στήλης).

    εντολή grant.

    Με την εντολή GRANT δίνουμε δικαιώματα χρήσης της βάσης δεδομένων σε χρήστες.

    εντολή revoke.

    Με την εντολή REVOKE αφαιρούμε από τους χρήστες τα δικαιώματα χρήσης ενός στοιχείου (π.χ. πίνακα, όψη) μιας βάσης δεδομένων.

    H παράμετρος Split method:

    Αυτή η παράμετρος καθορίζει τη μέθοδο με την οποία διαχωρίζονται οι κόμβοι του δένδρου. Μπορεί να πάρει τις τιμές [1,3] όπου 1 είναι η τιμή για Binary δένδρο, 2 η τιμή για Complete (multi-way) δένδρο και 3 η τιμή και για τα δύο μαζί.

    Κατηγοριοποίηση (classification)

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

    H παράμετρος Split method:

    Αυτή η παράμετρος καθορίζει τη μέθοδο με την οποία διαχωρίζονται οι κόμβοι του δένδρου. Μπορεί να πάρει τις τιμές [1,3] όπου 1 είναι η τιμή για Binary δένδρο, 2 η τιμή για Complete (multi-way) δένδρο και 3 η τιμή και για τα δύο μαζί.

    H παράμετρος Stopping Tolerance

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

    Η τάση (trend)

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

    Η περιοδικότητα (periodicity)

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

    Οι ακραίες τιμές (outliers)

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

    ολοκληρωμένη (integrated)

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

    Μη ευμετάβλητη (non volatile)

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

    Αφορά ιστορικά δεδομένα (time-variant)

    Μια αποθήκη δεδομένων αφορά δεδομένα που μπορεί να έχουν βάθος δεκαετιών.

    Ένα μέτρο ή αλλιώς μετρική (measure)

    Είναι το μέγεθος ή τα μεγέθη που μας ενδιαφέρουν να συναθροίσουμε ή να αναλύσουμε κατά τις λειτουργίες OLAP.

    διαστάσεις (dimensions)

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

    Η ιεραρχία (hierarchy)

    Η ιεραρχία (hierarchy) μιας διάστασης

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

    Το σχήμα Αστέρα (star schema)

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

    To σχήμα χιονονιφάδας (snowflake schema)

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

    Το σχήμα γαλαξία (galaxy schema),

    Στο σχήμα γαλαξία έχουμε περισσότερους τους ενός fact tables, τους οποίους μπορούν να διαμοιράζονται περισσότερες διαστάσεις.

    Η πράξη Roll-up

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

    Η πράξη Drill-down

    Επιφέρει ακριβώς τα αντίθετα αποτελέσματα από τη λειτουργία ROLL-UP. Με τη λειτουργία DRILL-DOWN αυξάνουμε το επίπεδο λεπτομέρειας των δεδομένων μας.

    Η πράξη Slice

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

    Η πράξη Dice

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

    Η πράξη Pivot

    Η λειτουργία PIVOT πραγματοποιεί περιστροφή στις διαστάσεις του κύβου, με αποτέλεσμα τα δεδομένα να απεικονίζονται με διαφορετικό τρόπο κάθε φορά.

    Συναθροιστικές συνάρτήσεις (aggregation function)

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

    Προκειμένου να εξάγουμε έναν κανόνα συσχέτισης, πρέπει να ικανοποιούνται κάποια κατώτατα όρια τόσο για το support όσο και για τo confidence/probability. Ο κανόνας πρέπει να έχει support μεγαλύτερo από το όριο, που ονομάζεται ελάχιστη υποστήριξη (minimum_support), και η εμπιστοσύνη πρέπει να είναι μεγαλύτερη από το όριο, που ονομάζεται ελάχιστη εμπιστοσύνη (minimum_probability).

    Προκειμένου να εξάγουμε έναν κανόνα συσχέτισης, πρέπει να ικανοποιούνται κάποια κατώτατα όρια τόσο για το support όσο και για τo confidence/probability. Ο κανόνας πρέπει να έχει support μεγαλύτερo από το όριο, που ονομάζεται ελάχιστη υποστήριξη (minimum_support), και η εμπιστοσύνη πρέπει να είναι μεγαλύτερη από το όριο, που ονομάζεται ελάχιστη εμπιστοσύνη (minimum_probability).

    Slice

    H λειτουργία Slice επιλέγει τα δεδομένα ως προς μία διάσταση του κύβου μας, δημιουργώντας μια φέτα ενός κύβου

    Pivot

    Η λειτουργία Pivot αλλάζει μόνο το τρόπο απεικόνισης των διαστάσεων του κύβου μα