Πληροφορίες για το Περιεχόμενο και τη Διεξαγωγή του Μαθήματος

 

Καθηγητής: Πάνος Βασιλειάδης
Γραφείο:  Β.2
Τηλέφωνο:  26510-0-8814
E-mail:  pvassil@cs.uoi.gr
URL:  www.cs.uoi.gr/~pvassil/
URL μαθήματος  http://www.cs.uoi.gr/~pvassil/courses/db_III

 

Οι Βάσεις Δεδομένων είναι ένα κατ' εξοχήν εφαρμοσμένο γνωστικό πεδίο. Πέρα από τη βασική γνώση σε θέματα μοντελοποίησης και επερώτησης που διδάσκεται στο εισαγωγικό μάθημα Βάσεων Δεδομένων, είναι απαραίτητο η γνώση αυτή να συμπληρωθεί και με στοιχεία που αφορούν αφενός την εσωτερική δομή, τη σχεδίαση και τη διαχείριση Συστημάτων Διαχείρισης Βάσεων Δεδομένων. Τα μαθήματα "Βάσεις Δεδομένων ΙΙ" και "Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων" προσφέρουν αυτή την υποδομή με συμπληρωματικό τρόπο.

Οι εγκύκλιες σπουδές στο γνωστικό αντικείμενο των βάσεων δεδομένων χωρίζονται σε τρία μέρη. Κατ' αρχήν, κάποιος εισάγεται στις βασικές έννοιες σχεδίασης βάσεων δεδομένων (μοντέλο οντοτήτων-συσχετίσεων και σχεσιακό μοντέλο), και στις κύριες γλώσσες βάσεων δεδομένων (SQL,σχεσιακή άλγεβρα, σχεσιακός λογισμός). Τμήμα της βασικής εκπαίδευσης αποτελεί και η εισαγωγή σε βασικές δομές αποθήκευσης δεδομένων (αρχεία, ευρετήρια) και η περαιτέρω μύηση σε προχωρημένες διαδικασίες ορθής σχεδίασης (κανονικοποίηση). Όλες αυτές οι γνώσεις παρέχονται στο εισαγωγικό μάθημα "Βάσεις Δεδομένων".

Το δεύτερο μέρος των εγκυκλίων σπουδών σε βάσεις δεδομένων αφορά  στοιχεία της εσωτερικής δομής ενός Συστήματος Διαχείρισης Βάσεων Δεδομένων. Αυτά αφορούν την εσωτερική αρχιτεκτονική του, την επεξεργασία ερωτήσεων, την βελτιστοποίηση ερωτήσεων, τη φυσική σχεδίαση και ρύθμιση μιας βάσης δεδομένων, τη διαχείριση χρηστών, την ανάνηψη από αποτυχίες κ.ά. Το τρίτο μέρος των σπουδών περιλαμβάνει συγκεκριμένες κατηγορίες εφαρμογών και βάσεων δεδομένων ειδικών χρήσεων που επεκτείνουν την "βασική" τεχνολογία των βάσεων δεδομένων, όπως για παράδειγμα, αποθήκες δεδομένων και εξόρυξη γνώσης, κατανεμημένες και παράλληλες βάσεις δεδομένων, αντικειμενοστρεφείς και αντικειμενο-σχεσιακές βάσεις δεδομένων, το πρότυπο SQL-1999, η γλώσσα ερωτήσεων Datalog, το επεκτεταμένο μοντέλο Οντοτήτων-Συσχετίσεων, καθώς και χωροχρονικές, διαδικτυακές και ενεργές βάσεις δεδομένων.

Το παρόν μάθημα, "Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων" θα επικεντρωθεί στη μελέτη της εσωτερικής δομής ενός Συστήματος Διαχείρισης Βάσεων Δεδομένων. Κατ' αρχήν, θα δούμε πώς δομείται εσωτερικά ένα σύστημα διαχείρισης βάσεων δεδομένων. Στη συνέχεια, θα δούμε πώς ένα τέτοιο σύστημα επεξεργάζεται τις ερωτήσεις που τίθενται από τους χρήστες. Ακόμα, θα εξετάσουμε πώς το σύστημα υποστηρίζει πολλαπλά αιτήματα από χρήστες που είναι ταυτόχρονα συνδεδεμένοι σε αυτό. Γνωρίζοντας τα παραπάνω, θα καλύψουμε επίσης κάποιες προχωρημένες έννοιες τελικής ρύθμισης του σχήματος της βάσης και τέλος θα μιλήσουμε λίγο για θέματα ασφάλειας. Αν υπάρξει χρόνος, θα δώσουμε έμφαση και σε εφαρμογές αποθηκών δεδομένων. Εν παραλλήλω, θα εξετάσουμε και θέματα σχεδίασης βάσεων δεδομένων, με έμφαση σε ειδικές περιπτώσεις σχεδιαστικών προβλημάτων με πρότυπες λύσεις. Τέλος, στη διάρκεια της προγραμματιστικής άσκησης του μαθήματος, θα έρθετε σε επαφή με την υλοποίηση εφαρμογών πάνω σε βάσεις δεδομένων.

Για να παρακολουθήσετε το μάθημα, ΔΕΝ είναι τυπικά απαραίτητο να έχετε περάσει το μάθημα "Βάσεις Δεδομένων". Είναι απαραίτητο όμως να μπορείτε να καταλαβαίνετε βασικές έννοιες του γνωστικού αντικειμένου των βάσεων δεδομένων, όπως το σχεσιακό μοντέλο, το μοντέλο οντοτήτων συσχετίσεων, η σχεδίαση βάσεων δεδομένων, η γλώσσα SQL και η σχεσιακή άλγεβρα. Εν γένει, μια επανάληψη των σχετικών εννοιών θα σας βοηθήσει αρκετά.

Διδακτέα Ύλη

  • Εισαγωγή
  • Εσωτερική αρχιτεκτονική ΣΔΒΔ
  • Επεξεργασία ερωτήσεων
  • Βελτιστοποίηση ερωτήσεων
  • Διαχείριση συναλλαγών
  • Έλεγχος ταυτοχρονισμού
  • Ανάκαμψη από αποτυχίες
  • Φυσική σχεδίαση και ρύθμιση μιας βάσης δεδομένων
  • Διαχείριση χρηστών και ασφάλεια

Αν υπάρξει χρόνος, θα καλυφθούν και θέματα όπως:

  • Αποθήκες δεδομένων
  • Αντικειμενοστρεφείς και αντικειμενο-σχεσιακές βάσεις δεδομένων
  • Το πρότυπο SQL-1999
  • Η γλώσσα ερωτήσεων Datalog
  • Το επεκτεταμένο μοντέλο Οντοτήτων-Συσχετίσεων
  • Χωροχρονικές, διαδικτυακές και ενεργές βάσεις δεδομένων.

Εργασίες

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

Θα δοθούν 3 σειρές ασκήσεων στα θέματα που θα καλύψουμε στο μάθημα. Η παράδοση των εργασιών είναι προαιρετική.

Διαγώνισμα

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

Βαθμολογία

Ο τελικός βαθμός υπολογίζεται σαν το άθροισμα των βαθμών των γραπτών εξετάσεων και της εργαστηριακής άσκησης. Το άριστα στις γραπτές εξετάσεις είναι 5, στις ασκήσεις 2, στην προγραμματιστική άσκηση είναι 3. Για να περάσετε το μάθημα, θα πρέπει να πιάσετε τη βάση στις γραπτές εξετάσεις και στην προγραμματιστική άσκηση. Το Σεπτέμβρη η εξέταση θα αφορά τις 5 μονάδες των γραπτών εξετάσεων. Σε περίπτωση εξαιρετικής προγραμματιστικής άσκησης, μπορεί να υπάρξει και bonus μιας μονάδας στον τελικό βαθμό.

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