Requêtes et schémas hétérogènes : complexité et apprentissage
Auteur / Autrice : | Radu Ciucanu |
Direction : | Angela Bonifati, Aurélien Lemay |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 01/07/2015 |
Etablissement(s) : | Lille 1 |
Ecole(s) doctorale(s) : | École doctorale Sciences pour l'ingénieur (Lille) |
Partenaire(s) de recherche : | Laboratoire : Centre de Recherche en Informatique, Signal et Automatique de Lille |
Résumé
La spécification de requêtes est généralement une tâche difficile pour les utilisateurs non-experts. Le problème devient encore plus difficile quand les utilisateurs ont besoin d'interroger des bases de données de grande taille et donc difficiles à visualiser. Le schéma pourrait aider à cette spécification, mais celui-ci manque souvent ou est incomplet quand les données viennent de sources hétérogènes. Dans cette thèse, nous abordons le problème de la spécification de requêtes pour les utilisateurs non-experts. Nous identifions deux approches pour attaquer ce problème : apprendre les requêtes à partir d'exemples ou transformer les données dans un format plus facilement interrogeable par l'utilisateur. Nos contributions suivent ces deux directions et concernent trois modèles de données parmi les plus populaires : XML, relationnel et orienté graphe. Cette thèse comprend deux parties, consacrées à (i) la définition et la transformation de schémas, et (ii) l'apprentissage de schémas et de requêtes. Dans la première partie, nous définissons des formalismes de schémas pour les documents XML non-ordonnés et nous analysons leurs propriétés computationnelles; nous étudions également la complexité du problème d'échange de données entre une source relationnelle et une cible orientée graphe. Dans la deuxième partie, nous étudions le problème de l'apprentissage à partir d'exemples pour les schémas XML proposés dans la première partie, ainsi que pour les requêtes de jointures relationnelles et les requêtes de chemins sur les graphes. Nous proposons notamment un scénario interactif qui permet d'aider des utilisateurs non-experts à définir des requêtes dans ces deux classes.