Derivation of state diagrams for database schema evolution
Loading...
Date
Authors
Trialoni, Christina
Τριαλώνη, Χριστίνα
Journal Title
Journal ISSN
Volume Title
Publisher
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Abstract
Type
Type of the conference item
Journal type
Educational material type
Conference Name
Journal name
Book name
Book series
Book edition
Alternative title / Subtitle
Description
Schema evolution is the process of altering the structure of a database, also known
as “schema”, via the insertion, deletion or update of schema constructs, such as
tables, attributes and constraints, in the process of developing, or maintaining the
structure of the data, in order to service the surrounding applications that -- as all
software modules do -- evolve too.
The goal of this thesis is to extract the various phases that a schema of a project
enters during its lifecycle, and create "signatures" of frequently encountered sequences of phases in the lives of relational database schemata.
Using a publicly available corpus of schema evolution histories from Free OpenSource Projects, we organize the history of corpus' projects in monthly quanta as
time units and assess change via a cumulative metric of monthly change. Starting
with each time-unit as a different phase, the PhaseSeries of schema evolution for a
project is then, a sequence of unit-phases, linked via transitions marking the amount
of change (measured as the sum of inserted, deleted and updated attributes) that
occurred between two units. A transition is the bridge that connects two phases and
it is also labelled with respect to the amount of change between the two neighboring
phases. Then, we merge subsequent unit-phases into larger phases depending on a
similarity criterion that takes into consideration transition labels, and mark the re sulting phases accordingly. We introduce different algorithms for merging phases,
by altering the similarity criterion with the goal of finding the sweet spot between having too many transitions (contributing a high level of accuracy) and conciseness
(as having fewer transitions improves readability of the description of a project's life,
at the price of reducing accuracy). We refer to the description of the life of a schema
via these phases and transitions as the "signature" of the schema's evolution. Once
all signatures for the entire corpus have been computed, we group them into frequently encountered signatures, introducing, thus, frequent patterns of schema lives.
These patterns can be visually demonstrated via state diagrams.
Εξέλιξη σχήματος βάσεων δεδομένων, είναι η διαδικασία αλλαγής της δομής μιας βάσης, ή αλλιώς "σχήματος", μέσω προσθήκης, διαγραφής ή αλλαγής στοιχείων του σχήματος, όπως πίνακες, χαρακτηριστικά και περιορισμοί κατά τη διάρκεια της φάσης ανάπτυξης, ή η συντήρηση της δομής των δεδομένων, έτσι ώστε να εξυπηρετηθούν όλες οι συσχετιζόμενες εφαρμογές, οι οποίες -- όπως και όλα τα κομμάτια λογισμικού -- εξελίσσονται. Ο στόχος της διπλωματικής είναι η εξαγωγή διαφόρων φάσεων, στις οποίες μπαίνει ένα σχήμα ενός πρότζεκτ κατά τη διάρκεια του κύκλου ζωής του, και η δημιουργία "υπογραφών" των πιο συχνά εμφανιζόμενων ακολουθιών φάσεων κατά τη διάρκεια ζωής των σχεσιακών σχημάτων βάσεων. Χρησιμοποιώντας μια δημόσια συλλογή από ιστορίες εξέλιξης σχημάτων από ελεύθερα έργα ελεύθερου κώδικα, οργανώνουμε την ιστορία των συστημάτων σε μηνιαία κβάντα ως σημεία χρόνου και ορίζουμε τις αλλαγές μέσω σωρευτικών μετρικών μηνιαίων αλλαγών. Ξεκινώντας με κάθε χρονική μονάδα ως μια διαφορετική φάση, οι χρο νοσειρές της εξέλιξης σχήματος για ένα έργο είναι η σειρά μονάδων φάσεων, συνδεδεμένων μέσω μεταβάσεων που ορίζουν την ποσότητα αλλαγής (μετρημένη ως το άθροισμα των χαρακτηριστικών που εισάχθηκαν, διαγράφτηκαν και αλλάχθηκαν) που συνέβησαν μεταξύ δύο φάσεων. Μια μετάβαση είναι η γέφυρα η οποία ενώνει δύο φάσεις και επισημειώνεται ανάλογα με τον αριθμό αλλαγών μεταξύ δύο γειτονικών φάσεων. Έπειτα, συνενώνουμε γειτονικές μονάδες φάσεων σε μεγαλύτερες φάσεις, στη βάση ενός κριτηρίου ομοιότητας το οποίο λαμβάνει υπ' όψιν τους χαρακτηρισμούς των μεταβάσεων και καθορίζει τις φάσεις που προκύπτουν. Παρουσιάζουμε διαφορετικούς αλγορίθμους για την ένωση φάσεων, εναλλάσσοντας το κριτήριο ομοιότητας με στόχο την εύρεση της χρυσής τομής μεταξύ του να έχουμε πολλές μεταβάσεις (το οποίο συμβάλλει στο να έχουμε μεγάλη ακρίβεια) και περιεκτικότητα (το να έχουμε λιγότερες μεταβάσεις βελτιώνει την αναγνωσιμότητα της περιγραφής της ζωής ενός έργου, με κόστος την μείωση ακρίβειας). Αναφερόμαστε στην περιγραφή της ζωής ενός σχήματος μέσω αυτών των φάσεων και των μεταβάσεων ως την "υπογραφή" της εξέλιξης του σχήματος. Μόλις όλες οι υπογραφές για όλη τη συλλογή των έργων έχουν υπολογιστεί, τις ομαδοποιούμε σε υπογραφές που εμφανίζονται συχνά, παρουσιάζοντας έτσι, τα πιο συχνά πρότυπα της ζωής των σχημάτων. Αυτά τα πρότυπα μπορούν να αναπαρασταθούν οπτικά μέσω διαγραμμάτων καταστάσεων.
Εξέλιξη σχήματος βάσεων δεδομένων, είναι η διαδικασία αλλαγής της δομής μιας βάσης, ή αλλιώς "σχήματος", μέσω προσθήκης, διαγραφής ή αλλαγής στοιχείων του σχήματος, όπως πίνακες, χαρακτηριστικά και περιορισμοί κατά τη διάρκεια της φάσης ανάπτυξης, ή η συντήρηση της δομής των δεδομένων, έτσι ώστε να εξυπηρετηθούν όλες οι συσχετιζόμενες εφαρμογές, οι οποίες -- όπως και όλα τα κομμάτια λογισμικού -- εξελίσσονται. Ο στόχος της διπλωματικής είναι η εξαγωγή διαφόρων φάσεων, στις οποίες μπαίνει ένα σχήμα ενός πρότζεκτ κατά τη διάρκεια του κύκλου ζωής του, και η δημιουργία "υπογραφών" των πιο συχνά εμφανιζόμενων ακολουθιών φάσεων κατά τη διάρκεια ζωής των σχεσιακών σχημάτων βάσεων. Χρησιμοποιώντας μια δημόσια συλλογή από ιστορίες εξέλιξης σχημάτων από ελεύθερα έργα ελεύθερου κώδικα, οργανώνουμε την ιστορία των συστημάτων σε μηνιαία κβάντα ως σημεία χρόνου και ορίζουμε τις αλλαγές μέσω σωρευτικών μετρικών μηνιαίων αλλαγών. Ξεκινώντας με κάθε χρονική μονάδα ως μια διαφορετική φάση, οι χρο νοσειρές της εξέλιξης σχήματος για ένα έργο είναι η σειρά μονάδων φάσεων, συνδεδεμένων μέσω μεταβάσεων που ορίζουν την ποσότητα αλλαγής (μετρημένη ως το άθροισμα των χαρακτηριστικών που εισάχθηκαν, διαγράφτηκαν και αλλάχθηκαν) που συνέβησαν μεταξύ δύο φάσεων. Μια μετάβαση είναι η γέφυρα η οποία ενώνει δύο φάσεις και επισημειώνεται ανάλογα με τον αριθμό αλλαγών μεταξύ δύο γειτονικών φάσεων. Έπειτα, συνενώνουμε γειτονικές μονάδες φάσεων σε μεγαλύτερες φάσεις, στη βάση ενός κριτηρίου ομοιότητας το οποίο λαμβάνει υπ' όψιν τους χαρακτηρισμούς των μεταβάσεων και καθορίζει τις φάσεις που προκύπτουν. Παρουσιάζουμε διαφορετικούς αλγορίθμους για την ένωση φάσεων, εναλλάσσοντας το κριτήριο ομοιότητας με στόχο την εύρεση της χρυσής τομής μεταξύ του να έχουμε πολλές μεταβάσεις (το οποίο συμβάλλει στο να έχουμε μεγάλη ακρίβεια) και περιεκτικότητα (το να έχουμε λιγότερες μεταβάσεις βελτιώνει την αναγνωσιμότητα της περιγραφής της ζωής ενός έργου, με κόστος την μείωση ακρίβειας). Αναφερόμαστε στην περιγραφή της ζωής ενός σχήματος μέσω αυτών των φάσεων και των μεταβάσεων ως την "υπογραφή" της εξέλιξης του σχήματος. Μόλις όλες οι υπογραφές για όλη τη συλλογή των έργων έχουν υπολογιστεί, τις ομαδοποιούμε σε υπογραφές που εμφανίζονται συχνά, παρουσιάζοντας έτσι, τα πιο συχνά πρότυπα της ζωής των σχημάτων. Αυτά τα πρότυπα μπορούν να αναπαρασταθούν οπτικά μέσω διαγραμμάτων καταστάσεων.
Description
Keywords
Databases, Phase, Transition, State diagrams, Βάσεις δεδομένων, Φάση, Μετάβαση, Διάγραμμα καταστάσεων
Subject classification
Databases
Citation
Link
Language
en
Publishing department/division
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Advisor name
Βασιλειάδης, Παναγιώτης
Examining committee
Βασιλειάδης, Παναγιώτης
Ζάρρας, Απόστολος
Πιτουρά, Ευαγγελία
Ζάρρας, Απόστολος
Πιτουρά, Ευαγγελία
General Description / Additional Comments
Institution and School/Department of submitter
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Table of contents
Sponsor
Bibliographic citation
Βιβλιογραφία: σ. 64-65
Name(s) of contributor(s)
Number of Pages
79 σ.
Course details
Endorsement
Review
Supplemented By
Referenced By
Creative Commons license
Except where otherwised noted, this item's license is described as Attribution-NonCommercial-NoDerivs 3.0 United States