Répondre à des requêtes Why-Not indépendamment de la représentation des requêtes
Immutably answering Why-Not questions for equivalent conjunctive queries
Dans le contexte de développement de transformations complexes, répondre à une question de type « Why-Not » consiste à expliquer au développeur les raisons de l’absence, dans le résultat d’une requête, de certaines réponses attendues. Plusieurs types d’explication nt été étudiées : des explications ciblant les données, celles ciblant des parties de la requête, des explications hybrides. Les explications construites à partir de la requête (query-based) peuvent être calculées plus efficacement et sont a priori plus faciles à exploiter. Cependant, les algorithmes existants produisant ces explications donnent des résultats 1) qui dépendent de la structure d’un arbre de requête choisi initialement, 2) qui sont assez souvent à la fois partiels et incomplets. À l’évidence, cela rend difficile l’exploitation de ces explications : le développeur doit les interpréter en fonction d’un arbre de requête et perd ainsi le bénéfice de l’utilisation d’un langage de requêtes déclaratif ; il doit prendre en compte le fait que d’autres explications peuvent aussi être la source de réponses manquantes. Cet article contribue à résoudre ce problème en proposant une notion d’explication « query-based » plus générale et présentée sous forme de polynôme. Un algorithme produisant ces explications est présenté et discuté.
Answering Why-Not questions consists in explaining why a data transformation did not produce some specific results, although they were expected. Different types of explanations that serve as Why-Not answers have been proposed in the past and are usually based on the available data or the query. Solutions based on the query are generally more efficient and easier to interpret than solutions solely based on data. However, algorithms producing such query-based explanations so far focus on a specific query tree and may return different results for reordered trees, and even worse these results may be incomplete. Clearly, this represents a significant usability problem. We address this issue by introducing a more general notion of query-based explanations in the form of a polynomial that captures all the ways in which an answer is missing. We further propose an algorithm computing such querybased explanations and further discuss the outcome and impact of such a proposal.
Nicole BIDOIT, Mélanie HERSCHEL, Katerina TZOMPANAKI
provenance de données, analyse des requêtes.
data provenance, query analysis.
Anglais
|