Database techniques for ontology-based data access
Authors: Μπηλίδας Δημήτριος 
Published: September 2021

Στην επιστημονική περιοχή της Αναπαράστασης Γνώσης και Συλλογιστικής, οι οντολογίες διαδραματίζουν καθοριστικό ρόλο στη μοντελοποίηση γνώσης για έναν τομέα εφαρμογών. Μια οντολογία κωδικοποιεί πληροφορίες σχετικά με τις κατηγορίες αντικειμένων του τομέα και τις σχέσεις μεταξύ τους, παρέχοντας στους χρήστες της εφαρμογής με μια οικεία μοντελοποίηση του τομέα. Επιπλέον, αξιώματα εκφρασμένα σε λογική και κωδικοποιημένα στην οντολογία, μπορούν να χρησιμοποιηθούν για την απόκτηση νέας γνώσης μέσω συμπερασμού. Η Κοινοπραξία του παγκόσμιου ιστού (World Wide WebConsortium-W3C) συνιστά τη χρήση της γλώσσας οντολογιών OWL, ως την οικογένεια γλωσσών για αναπαράσταση γνώσης στον παγκόσμιο ιστό. Η ανάκτηση δεδομένων βάσει οντολογιών (Ontology-based Data Access-ΟBDA) είναι μια μέθοδος διασύνδεσης οντολογιών με υποκείμενες εξωτερικές πηγές δεδομένων μέσω δηλωτικών αντιστοιχίσεων (mappings). Οι συγκεκριμένες αντιστοιχίσεις μπορούν να θεωρηθούν ως κανόνες που δημιουργούν αντικείμενα της οντολογίας βάσει επερωτήσεων στα εξωτερικά δεδομένα. Στη συνέχεια, ένας χρήστης μπορεί να θέσει μια επερώτηση στην οντολογία και αυτή η επερώτηση μπορεί να μεταφραστεί στη γλώσσα επερωτήσεων του υποκείμενου συστήματος διαχείρισης δεδομένων, ή αλλιώς της εξωτερικής πηγής δεδομένων, χρησιμοποιώντας τις αντιστοιχίσεις και αποστέλλεται για εκτέλεση, παρέχοντας στο χρήστη τα επιθυμητά αποτελέσματα, σαν τα δεδομένα να αποτελούσαν εξαρχής μέρος της οντολογίας. Παρά το ότι από άποψη πολυπλοκότητας υπάρχουν αποτελεσματικοί αλγόριθμοι για απάντηση επερωτήσεων σε συστήματα που πραγματοποιούν ανάκτηση δεδομένων βάσει οντολογιών (ΟBDA-συστήματα), το τελικό ερώτημα που προκύπτει και που πρέπει να εκτελεστεί στις εξωτερικές βάσεις δεδομένων είναι σε πολλές πρακτικές περιπτώσεις πολύπλοκο και μεγάλο. Για παράδειγμα, δεν είναι ασυνήθιστο σε ένα τυπικό OBDA σενάριο, σε περίπτωση που στην οντολογία ορίζονται μεγάλες ιεραρχίες κλάσεων και ιδιοτήτων, μια αρχική συζευκτική επερώτηση πάνω στην οντολογία να μεταφραστεί σε μια ένωση συζευκτικών επερωτήσεων, που μπορεί να περιέχει εκατοντάδες ή χιλιάδες υποερωτήματα. Η παρούσα διδακτορική διατριβή προσφέρει τεχνικές για την αντιμετώπιση του προαναφερθέντος ζητήματος από την πλευρά των βάσεων δεδομένων. Συγκεκριμένα, επικεντρωνόμαστε στην διάλεκτο OWL 2 QL της οικογένειας γλωσσών για οντολογίες OWL, η οποία διάλεκτος είναι ειδικά προσαρμοσμένη για την περίπτωση μεταγραφής επερωτήσεων όταν έχουμε μαζικά δεδομένα σε εξωτερικές πηγές. Σε σχέση με τις αντιστοιχίσεις ανάμεσα στην οντολογία και τις εξωτερικές πηγές, επικεντρωνόμαστε στην γλώσσα αντιστοιχήσεων R2RML, η οποία αποτελεί επίσημη σύσταση του W3C, ή άλλες γλώσσες παρόμοιας εκφραστικότητας. Σε αυτό το πλαίσιο, κάνουμε μια διάκριση μεταξύ τριών διαφορετικών σεναρίων OBDA, ανάλογα με το είδος του υποκείμενου συστήματος διαχείρισης δεδομένων, και υλοποιούμε αποδοτικές τεχνικές για κάθε ένα από τρία αυτά σενάρια. Συγκεκριμένα, κατά το πρώτο σενάριο θεωρούμε ότι τα δεδομένα αποθηκεύονται σε μια εξωτερική σχεσιακή βάση δεδομένων με αυθαίρετο σχεσιακό σχήμα. Κατά το δεύτερο σενάριο τα δεδομένα αποθηκεύονται σε πολλές εξωτερικές βάσεις δεδομένων, όπου η καθεμία έχει το δικό της σχήμα και μπορεί να βρίσκεται σε διαφορετική τοποθεσία. Τέλος, στο τρίτο σενάριο τα υποκείμενα δεδομένα βρίσκονται υπό την μορφή γράφου, ακολουθώντας το μοντέλο RDF, και είναι αποθηκευμένα σε ένα εξειδικευμένο σύστημα διαχείρισης αυτού του είδους των δεδομένων. Το RDF είναι ένα μοντέλο δεδομένων ευρέως χρησιμοποιούμενο για την ενσωμάτωση δεδομένων από διαφορετικές πηγές,ακολουθώντας ένα απλό σχήμα γράφου κατά το οποίο τα δεδομένα μοντελοποιούνται ως τριπλέτες που έχουν τη μορφή υποκείμενο-κατηγόρημα-αντικείμενο. Σε κάθε ένα από αυτά τα σενάρια προτείνονται λύσεις και αναπτύσσονται συστήματα τα οποία βελτιώνουν τους χρόνους εκτέλεσης επερωτήσεων, ενώ η συνεισφορά της παρούσας διατριβής επιβεβαιώνεται εμπειρικά με την διεξαγωγή εκτεταμένων πειραμάτων.