-

Τεχνολογία Βάσεων Δεδομένων

  • Κωδικός: 5404
  • Εξάμηνο: Εξαμ. Δ
  • Τύπος: Μάθημα Επιστημονικής Περιοχής (ΜΕΠ)
  • Κατηγορία: Μάθημα Ειδικής Υποδομής (ΜΕΥ)
  • Είδος: Υποχρεωτικό (Υ)

(1) ΜΑΘΗΣΙΑΚΑ ΑΠΟΤΕΛΕΣΜΑΤΑ

Το μάθημα αποτελεί συνέχεια του μαθήματος ‘Συστήματα Διαχείρισης Βάσεων Δεδομένων’, και εστιάζει σε θέματα που αφορούν στην βελτιστοποίηση των αιτημάτων στο σχεσιακό μοντέλο και εξετάζει την ενσωμάτωση κώδικα SQL σε κώδικα γλωσσών προγραμματισμού τρίτης γενιάς. Ο φοιτητής εξασκείται σε σύγχρονα περιβάλλοντα βάσεων δεδομένων τα οποία υλοποιούν/υποστηρίζουν το αντικειμενοστρεφές, το αντικειμενοσχεσιακό και το ημιδομημένο μοντέλο δεδομένων. Εξοικειώνεται με και αφομοιώνει στην πράξη την έννοια της συναλλαγής και τη συμβολή της στη διασφάλιση της ορθότητας του πληροφοριακού περιεχομένου της βάσης. Τέλος, μελετά και κατανοεί προβλήματα που σχετίζονται με την απουσία ελέγχου του ταυτόχρονου (concurrency control) κατά την εκτέλεση των συναλλαγών και τις τεχνολογίες με τις οποίες επιβάλλεται/υλοποιείται ο εν λόγω έλεγχος.
Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής / τρια θα είναι σε θέση να:

  • Συντάσσει κώδικα SQL ενσωματωμένο σε κώδικα γλώσσας προγραμματισμού χρησιμοποιώντας τεχνολογία JDBC, OLEDB, Εμφωλευμένη SQL κτλ,
  • Υλοποιεί, με χρήση αποθηκευμένων διαδικασιών, υπηρεσίες διαχείρισης δεδομένων στο διαδίκτυο,
  • Εξηγεί έννοιες και πρακτικές που σχετίζονται με το Αντικειμενοστρεφές Μοντέλο και την nosql όπως χρησιμοποιείται από το Αντικειμενοστρεφές μοντέλο,
  • Εξηγεί έννοιες και πρακτικές που σχετίζονται με το Αντικειμενοσχεσιακό Μοντέλο και έχει αποκτήσει ένα ευρύ φάσμα των δυνατοτήτων της SQL στα σύγχρονα Αντιμενοσχεσιακά ΣΔΒΔ
  • Αναγνωρίζει τις βασικές έννοιες και πρακτικές των τεχνολογιών οργάνωσης, διαχείρισης και επεξεργασίας ημιδομημένων δεδομένων και των αντίστοιχων τεχνολογιών (XML, Xquery, XPath, κλπ.)
  • Εξηγεί έννοιες και πρακτικές που σχετίζονται με την υλοποίηση και την εφαρμογή πολιτικής ελέγχου του ταυτόχρονου της εκτέλεσης των συναλλαγών στο σύγχρονο DBMS.
  • Εκτιμά και διακρίνει τις διαφορετικές τεχνολογίες υλοποίησης του ελέγχου του ταυτόχρονου σε σύγχρονα δημοφιλή περιβάλλοντα DBMS: MySQL, Oracle, IBM DB2, PostgreSQL, κ.α.
  • Συντάσσει προγραμματιστικό κώδικα με έμφαση στη διαχείριση των συναλλαγών και, δια μέσου αυτής, στη διασφάλιση της ορθότητας του πληροφοριακού περιεχομένου της βάσης.
  • Προσομοιώνει και εξηγεί προβλήματα που σχετίζονται με την απουσία ελέγχου του ταυτόχρονου (concurrency control) κατά την εκτέλεση των συναλλαγών. Επίσης, το βαθμό στον οποίο αυτά τα προβλήματα αντιμετωπίζονται με την επιβολή επιπέδων απομόνωσης στις συναλλαγές και στη χρήση καλών πρακτικών κατά τη σύνταξη του σχετικού προγραμματιστικού κώδικα αξιοποιώντας τις δυνατότητες που παρέχει/υποστηρίζει το σύγχρονο περιβάλλον DBMS.

(2) ΠΕΡΙΕΧΟΜΕΝΟ ΜΑΘΗΜΑΤΟΣ

  • Ενσωμάτωση κώδικα SQL σε Προγραμματιστικά Περιβάλλοντα Τρίτης Γενιάς,
  • Η Αρχιτεκτονική της Ανοικτής Πρόσβασης: ODBC και JDBC
  • Αντικειμενοστρεφείς ΒΔ: Νέοι τύποι δεδομένων, Αντικείμενα, Ταυτότητα Αντικειμένων και Τύποι Αναφορών, Κληρονομικότητα, Το μοντέλο ODMG 3.0.
  • Η αντικειμενοστρεφής γλώσσα αιτημάτων OQL.
  • Τα τρία είδη της αντικειμενοστρεφής nosql (α) query by examples, (β) native queries και (γ) SODA queries.
  • Αντικειμενοσχεσιακές ΒΔ και SQL: Σχεδίαση Βάσεων Δεδομένων για ένα Αντικειμενοσχεσιακό Σύστημα Βάσεων Δεδομένων, Επεκτείνοντας το Σχεσιακό Μοντέλο, Εμφωλευμένες συλλογές.
  • Η γλώσσα αιτημάτων SQL1999 και ειδικότερα οι αντικειμενοσχεσιακές επεκτάσεις.
  • Σύγκριση του Σχεσιακού με το Αντικειμενοστρεφές και το Αντικειμενοσχεσιακό μοντέλο.
  • Τεχνολογίες Ημιδομημένης Οργάνωσης των Δεδομένων: Σχετιζόμενες Τεχνολογίες: XML, XML Schema, SQL2008, XQuery, Xpath.
  • Υποστήριξη της μορφοποίησης XML και διαχείριση των αντίστοιχων δεδομένων στο ORDBMS.
  • Υπηρεσίες Διαχείρισης Δεδομένων στο Διαδίκτυο: Επεξήγηση της σχεδίασης των Data Web Services, η υλοποίησή τους μέσω αποθηκευμένων διαδικασιών και εντολών SQL. Κλήση/ενεργοποίηση και χρήση των Data Web Services.
  • Η συναλλαγή ως λογική μονάδα εργασίας στο περιβάλλον πελάτη/διακομιστή DBMS.
  • Σφάλματα (errors) και διαγνωστικά μηνύματα κατά την εκτέλεση του κώδικα SQL.
  • Διαχείριση των σφαλμάτων και των εξαιρέσεων (exceptions) στην SQL.
  • Προβλήματα ταυτοχρονισμού (χαμένη ενημέρωση/lost update, πρόχειρη ανάγνωση/dirty read, μη-επαναλήψιμη ανάγνωση/non-repeatable read, ανάγνωση φαντάσματος/phantom read.
  • Ιδιότητες ACID, η ιδανική συναλλαγή.
  • Επίπεδα απομόνωσης των συναλλαγών.
  • Τεχνολογίες/μηχανισμοί υλοποίησης του ελέγχου του ταυτόχρονου στην εκτέλεση των συναλλαγών: έλεγχος ταυτοχρονισμού με σχήμα κλειδώματος (Locking Scheme Concurrency Control, LSCC), έλεγχος ταυτοχρονισμού με πολλαπλές εκδόσεις (Multi-Versioning Concurrency Control, MVCC), αισιόδοξος έλεγχος ταυτοχρονισμού (Optimistic Concurrency Control, OCC).

(3) ΔΙΔΑΚΤΙΚΕΣ και ΜΑΘΗΣΙΑΚΕΣ ΜΕΘΟΔΟΙ – ΑΞΙΟΛΟΓΗΣΗ

ΤΡΟΠΟΣ ΠΑΡΑΔΟΣΗΣ

Στην τάξη και στο εργαστήριο

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

Διαθεσιμότητα επιλεγμένων διαλέξεων του μαθήματος σε μορφοποίηση ψηφιακού βίντεο, μέσω του εξυπηρετητή Video on Demand του τμήματος.
Χρήση περιβάλλοντος εικονικής μηχανής (virtual machine) της διεθνούς σύμπραξης DBTechNet με προ-εγκατεστημένο λογισμικό διαφόρων (ελεύθερων) συστημάτων RDBMS: IBM DB2 Express-C, Oracle Express, PostgreSQL, MySQL. Χρήση του εκπαιδευτικού περιεχομένου του μαθήματος “Οι Συναλλαγές στην SQL” της διεθνούς σύμπραξης DBTechNet (http://dbtech.uom.gr/mod/resource/view.php?id=1064).
Υποστήριξη της μαθησιακής διαδικασίας μέσω της ηλεκτρονικής πλατφόρμας Moodle.

ΟΡΓΑΝΩΣΗ ΔΙΔΑΣΚΑΛΙΑΣ
Δραστηριότητα Φόρτος Εργασίας Εξαμήνου
Διαλέξεις 13 x 3= 39
Πρακτική εξάσκηση στο σπίτι 13 x 2 = 26
Ασκήσεις στο εργαστήριο 13 x2 = 26
Επικοινωνία / συνεργασία 8
Αυτοτελής μελέτη 18 x 4.5 = 81
Σύνολο Μαθήματος (30 ώρες φόρτου εργασίας ανά πιστωτική μονάδα) 180
ΑΞΙΟΛΟΓΗΣΗ ΦΟΙΤΗΤΩΝ

Ι. Γραπτή τελική εξέταση (60%) στο θεωρητικό μέρος του μαθήματος που περιλαμβάνει:
– Ερωτήσεις σύντομης απάντησης βασικών εννοιών και διαφορών του αντικειμενοστρεφούς, του αντικειμενοσχεσιακού και του ημιδομημένου μοντέλου δεδομένων.
– Ερωτήσεις σύντομης απάντησης και ασκήσεις κατανόησης της αρχιτεκτονικής ODBC και JDBC.
– Ερωτήσεις σύντομης απάντησης και ασκήσεις κατανόησης της χρήσης κώδικα SQL ενσωματωμένο σε προγραμματιστικά περιβάλλοντα.
– Ερωτήσεις σύντομης απάντησης και ασκήσεις κατανόησης των Υπηρεσίες Διαχείρισης Δεδομένων στο Διαδίκτυο.
– Ασκήσεις κατανόησης του αντικειμενοστρεφούς προτύπου ODMG 3.0 και ειδικότερα της ODL.
– Ασκήσεις κατανόησης της αντικειμενοστρεφής γλώσσας αιτημάτων OQL.
– Ασκήσεις κατανόησης της αντικειμενοστρεφής nosql.
– Ασκήσεις κατανόησης των αντικειμενοσχεσιακών βάσεων δεδομένων και ειδικότερα του προτύπου SQL1999.
– Ασκήσεις κατανόησης της τεχνολογίας XML και XML Schema.
– Ασκήσεις κατανόησης των γλωσσών αιτημάτων XQuery και XPath.
– Ασκήσεις κατανόησης της χρήσης της τεχνολογίας XML από τα αντικειμενοσχεσιακά συστήματα και ειδικότερα του προτύπου SQL2008.
– Ασκήσεις κατανόησης της σημασίας και του ρόλου του κλειδώματος των πόρων της βάσης στη διαμόρφωση του αποτελέσματος στην έξοδο της επεξεργασίας των συναλλαγών.
– Ασκήσεις κατανόησης της σημασίας των επιπέδων απομόνωσης στη διαμόρφωση του αποτελέσματος στην έξοδο της επεξεργασίας των συναλλαγών.
– Ασκήσεις που αναδεικνύουν τις διαφορές στη χρήση τεχνολογιών ελέγχου του ταυτόχρονου για την υλοποίηση της απομόνωσης των συναλλαγών στην πράξη.
– Ασκήσεις εφαρμογής καλών πρακτικών διαχείρισης των σφαλμάτων και των συναλλαγών κατά τη σύνταξη κωδικα προγραμματισμού SQL.
– Ασκήσεις επί της κατανόησης και της εφαρμογής στην πράξη των τεχνολογιών υλοποίησης του ελέγχου του ταυτόχρονου στην εκτέλεση των συναλλαγών: LSCC, MVCC, OCC.
– Ασκήσεις επί των επιμέρους των προβλημάτων ταυτοχρονισμού (π.χ. ανάγνωση φαντάσματος, διαγραφή φαντάσματος, ενημέρωση φαντάσματος, κλπ.), και του ρόλου που υπέχουν η τεχνολογία ελέγχου του ταυτοχρονισμού και τα επίπεδα απομόνωσης των συναλλαγών στην αποφυγή/αποτροπή της εμφάνισής τους.

ΙΙ. Προαιρετική εργασία εξαμήνου (έως το 40% του τελικού βαθμού στο θεωρητικό μέρος του μαθήματος)

– Το θέμα της εργασίας προτείνεται από τον φοιτητή ή επιλέγεται από υποψήφια θέματα που προτείνει ο καθηγητής και σχετίζεται πάντα με τεχνολογίες και τεχνικές της θεματολογίας του μαθήματος
– Η εργασία μπορεί να εκπονείται από έναν ή το πολύ δύο φοιτητές
– Οι εργασίες παρουσιάζονται από τους φοιτητές στο ακροατήριο του μαθήματος σε ημερομηνίες οι οποίες τοποθετούνται στις δύο τελευταίες διδακτικές εβδομάδες του ακαδημαϊκού εξαμήνου. Βαθμολογούνται από τον καθηγητή ή τους συν-διδάσκοντες καθηγητές του μαθήματος

IΙΙ. Εξάσκηση στο εργαστήριο (40%)
– Ασκήσεις για πρακτική εξάσκηση, σε εβδομαδιαία βάση
– Τελική εξέταση στο εργαστηριακό μέρος του μαθήματος με ασκήσεις σύνταξης προγραμμάτων χρήσης της αρχιτεκτονικής JDBC, αποθηκευμένων διαδικασιών και εναυσμάτων σε περισσότερα του ενός περιβάλλοντα RDBMS (IBM DB2 Express-C, Oracle Express, PostgreSQL και MySQL), XML και XQuery και ασκήσεις διαχείρισης των σφαλμάτων και των συναλλαγών σε προγραμματιστικά περιβάλλοντα SQL.

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

(4) ΣΥΝΙΣΤΩΜΕΝΗ-ΒΙΒΛΙΟΓΡΑΦΙΑ

α) Ελληνική

  • R. Elmasri και S.B. Navathe, Θεμελιώδεις Αρχές Συστημάτων Βάσεων Δεδομένων, (5η έκδοση αναθεωρημένη) τόμοι Α! και Β!, Εκδόσεις Εκδόσεις ‘Δίαυλος’, Αθήνα 2008
  • J.D. Ullman, J. Widom, Βασικές Αρχές για τα Συστήματα Βάσεων Δεδομένων, Εκδόσεις ‘Κλειδάριθμος’, Αθήνα 2008
  • Ι. Μανωλόπουλος, Α. Παπαδόπουλος, Συστήματα Βάσεων Δεδομένων: Θεωρία και Πρακτική Εφαρμογή, Εκδόσεις Νέων Τεχνολογιών, Αθήνα 2006
  • R. Ramakrishnan και J. Gehrke, Συστήματα Διαχείρισης Βάσεων Δεδομένων, έκδοση 3η, Εκδόσεις Τζιόλα, Θεσσαλονίκη 2011
  • T. Connolly, C. Begg, και A. Strachan, Συστήματα Βάσεων Δεδομένων: Μια πρακτική προσέγγιση στο σχεδιασμό, υλοποίηση και διεύθυνση, τόμοι Α και Β, Εκδόσεις Ίων, Αθήνα 2001
  • Χ. Σκουρλάς, Σχεσιακές Βάσεις Δεδομένων, Εκδόσεις Νέων Τεχνολογιών, Αθήνα 2000
  • Δ.Α. Δέρβος, Μαθήματα Βάσεων Δεδομένων, τόμος Α!, Εκδόσεις Τζιόλα, Θεσσαλονίκη 1995
  • M. Laiho και Δ. Δέρβος, Οι Συναλλαγές στην SQL: Θεωρία και Πρακτική Εξάσκηση, Έκδοση DBTechNet, 2013. Διαθέσιμη προς ανάκτηση από τη διεύθυνση:http://dbtech.uom.gr/mod/resource/view.php?id=1057

β) Διεθνής

  • T. Connolly, C. Begg, Database Systems: A Practical Approach to design, Implementation, and Management, 5th Edition, Addison Wesley, 2010
  • R. Elmasri και S.B. Navathe, Fundamentals of Database Systems, 5th Edition, Addison-Wesley 2006
  • R. Ramakrishnan και J. Gehrke, Database Management Systems, 3rd Edition, Mc Graw-Hill, 2002
  • J.D. Ullman, J. Widom, A First Course in Database Systems, Prentice-Hall, 2007

Πρόσφατες Ανακοινώσεις

14 Ιούν 2019
Θέση Εργασίας: Μηχανικός Λογισμικού
29 Μάι 2019
Εθελοντική δράση καθαριότητας από το IEEE Student Branch ATEITHE
27 Μάι 2019
Τετάρτη 29/5/19, και ώρα 13.30 – i-Mentor, Επιτυχημένο mentoring; Τι θα κερδίσω;
22 Μάι 2019
Φόρμα συμμετοχής στο δίκτυο i-Mentor
14 Μάι 2019
Προσκεκλημένη Ομιλία Prof. Athina Petropulu, Rutgers University, USA
13 Μάι 2019
H2020 Marie Curie ITN project TeamUp5G – OPEN 2 ESR positions in Thessaloniki!
12 Μάι 2019
Μετακίνηση με Erasmus+ (πρακτική άσκηση/after placement/πτυχιακή)
9 Μάι 2019
πρόγραμμα εξεταστικής Ιουνίου

Πρόσφατες Εκδηλώσεις

10 Ιούν 2019
Ημερίδα «Εθνική Στρατηγική Κυβερνοασφάλειας» στο Υπουργείο Ψηφιακής Πολιτικής
14 Απρ 2019
6ο Technology Forum – 15 Απριλίου 2019 (τελικό πρόγραμμα)
19 Μάρ 2019
6ο Technology Forum – 15 Απριλίου 2019 (εισιτήρια με μειωμένο κόστος)
19 Μάρ 2019
OWASP Student Chapter Συνάντηση «Introduction to Digital Forensics»
17 Δεκ 2018
Ομιλία του καθηγητή Man Wai Mak (Hong Kοng Polytechnic University)
3 Δεκ 2018
Εκδήλωση «Robotic Operating System to Reality»
27 Νοέ 2018
IEEE Career Day 2018
16 Νοέ 2018
Livestreaming των εργασιών του SingularityU Greece Summit (19-20 Νοεμβρίου 2018)

Δείτε επίσης