Λεπτομέρειες

ΕίδοςΔιδακτορικό
ΚωδικόςPHD-2009-1
ΤίτλοςΔιαχείριση Εξέλιξης Σχήματος σε Περιβάλλοντα Βάσεων Δεδομένων με τη χρήση Πολιτικών
ΣυγγραφέαςΓιώργος Παπαστεφανάτος
Έτος2009
Λέξεις κλειδιάSchema Evolution, Database Quality Metrics
ΠερίληψηΤα σύγχρονα πληροφοριακά συστήματα και ειδικότερα τα συστήματα βάσεων δεδομένων αποτελούν διαρκώς εξελισσόμενα περιβάλλοντα, όπου δομικές μονάδες προστίθενται, αφαιρούνται ή μεταβάλλονται πολύ συχνά, ως αποτέλεσμα προσθηκών και αλλαγών στις απαιτήσεις και στις προδιαγραφές του συστήματος. Η εξέλιξη του σχήματος μιας βάσης δεδομένων (Database Schema Evolution) αποτελεί ένα πολύ σημαντικό πρόβλημα, με πρακτικό και ερευνητικό ενδιαφέρον, στο χώρο των βάσεων δεδομένων. Είναι μια σύνθετη διαδικασία που εμπλέκεται σε όλες τις φάσεις ανάπτυξης ενός πληροφοριακού συστήματος. Διάφοροι λόγοι κατά την φάση ανάπτυξης και λειτουργίας ενός πληροφοριακού συστήματος μπορούν να προκαλέσουν την τροποποίηση της δομής της βάσης δεδομένων, όπως π.χ., είναι οι δομικές αλλαγές που προκύπτουν κατόπιν αλλαγών στις αρχικές προδιαγραφές, δομικές αλλαγές για λόγους βελτιστοποίησης του σχήματος ή/και απόδοσης, λόγω μετάπτωσης από παλιότερα συστήματα σε καινούργιες τεχνολογικά πλατφόρμες, κτλ. Η ανάλυση των επιπτώσεων που έχουν οι αλλαγές αυτές σε εξαρτώμενα αντικείμενα που περιβάλλουν τη βάση δεδομένων, όπως και η προσαρμογή τους σε ενδεχόμενες συντακτικές ή σημασιολογικές ασυνέπειες που προκύπτουν σαν αποτέλεσμα τέτοιων αλλαγών, είναι λειτουργίες που δεν υποστηρίζονται από τα σύγχρονα συστήματα βάσεων δεδομένων. Ειδικότερα, η πρόβλεψη, ο εντοπισμός και ο χειρισμός περιπτώσεων εξέλιξης της δομής μιας βάσης δεδομένων αποτελούν αρκετά χρονοβόρες εργασίες, καθώς δεν αντιμετωπίζονται από τα σύγχρονα συστήματα βάσεων δεδομένων με κάποιον αυτόματο τρόπο, αλλά απαιτούν σε ένα πολύ μεγάλο βαθμό την ανθρώπινη παρέμβαση. Η παρούσα διατριβή εστιάζει στο πρόβλημα της εξέλιξης βάσεων δεδομένων προτείνοντας τεχνικές για την ανάλυση και διαχείριση των επιπτώσεων της εξέλιξης μιας βάσης δεδομένων με στόχο την αυτόματη προσαρμογή των επηρεαζόμενων αντικειμένων και την ελαχιστοποίηση της ανθρώπινης παρέμβασης. Στα προτεινόμενο πλαίσιο, αρχικά παρέχεται μια τεχνική μοντελοποίησης σύμφωνα με την οποία όλα τα αντικείμενα που επηρεάζονται από τις διαδικασίες εξέλιξης μιας βάσης δεδομένων αναπαριστώνται σε ένα γράφο. Η συγκεκριμένη αναπαράσταση, που ονομάζεται γράφος εξέλιξης, μοντελοποιεί με ένα ενιαίο και συνεκτικό τρόπο τόσο τα εσωτερικά δομικά στοιχεία μιας βάσης δεδομένων, όπως είναι οι σχέσεις, περιορισμοί, όψεις, κ.α. όσο και εξωτερικά αντικείμενα που περιβάλλουν τη βάση δεδομένων, όπως είναι επερωτήσεις που περιέχονται σε τμήματα λογισμικού, συναρτήσεις κτλ, διατηρώντας τη σημασιολογία του κάθε αντικειμένου ξεχωριστά αλλά και τις μεταξύ αυτών εξαρτήσεις. Ταυτόχρονα, η προτεινόμενη μοντελοποίηση αναπαριστά τις λειτουργίες εξέλιξης μιας βάσης δεδομένων, όπως είναι η προσθήκη ή η διαγραφή ενός πεδίου, μιας σχέσης κτλ. σαν λειτουργίες τροποποίησης του γράφο εξέλιξης. Επιπρόσθετα, προτείνεται ένας μηχανισμός για (α) την εύρεση των ασυνεπειών που προκύπτουν από ενδεχόμενες αλλαγές εξέλιξης σε διάφορα τμήματα του γράφου και (β) την αυτόματη προσαρμογή των επηρεαζόμενων τμημάτων του γράφου στις αλλαγές αυτές. Ο μηχανισμός αυτός βασίζεται στην σηματοδότηση (annotation) των κόμβων του γράφου με πολιτικές που καθορίζουν τον τρόπο αντίδρασής τους σε ενδεχόμενες αλλαγές εξέλιξής τους και κατ’ επέκταση την προσαρμογή τους σε αυτές. Επίσης, προτείνεται μια επέκταση της SQL που επιτρέπει τον εύκολο και αποδοτικό εμπλουτισμό των αντικείμενων της βάσης δεδομένων με πολιτικές – μεταδεδομένα που αφορούν στον τρόπο εξέλιξής τους. Ένα άλλο βασικό κομμάτι της διατριβής αφορά στον ορισμό μετρικών ποιότητας για την αποτίμηση της εξέλιξης ενός περιβάλλοντος βάσης δεδομένων. Προτείνονται μετρικές που βασίζονται σε ιδιότητες του γράφου και αποτιμούν το κόστος που μια αλλαγή στο σχήμα της βάσης θα έχει σε ολόκληρο σύστημα, ανιχνεύουν τμήματα του γράφου τα οποία επηρεάζονται πιο συχνά από αλλαγές εξέλιξης, κτλ. Τέλος, στα πλαίσια της διατριβής έχει αναπτυχθεί ένα ολοκληρωμένο προγραμματιστικό εργαλείο που ονομάζεται ΕΚΑΤΑΙΟΣ και το οποίο ενσωματώνει όλη την παραπάνω προτεινόμενη μεθοδολογία. Ο ΕΚΑΤΑΙΟΣ χρησιμοποιήθηκε για την αντιμετώπιση σεναρίων εξέλιξης σε πραγματικά περιβάλλοντα.
ΚατηγορίαEvolution in DBMS
Αρχείο Επισκόπηση


Επιστροφή στην αρχική σελίδα