English

You Say 'What', I Hear 'Where' and 'Why': (Mis-)Interpreting SQL to Derive Fine-Grained Provenance

Databases 2018-07-04 v3

Abstract

SQL declaratively specifies what the desired output of a query is. This work shows that a non-standard interpretation of the SQL semantics can, instead, disclose where a piece of the output originated in the input and why that piece found its way into the result. We derive such data provenance for very rich SQL dialects (including recursion, windowed aggregates, and user-defined functions) at the fine-grained level of individual table cells. The approach is non-invasive and implemented as a compositional source-level SQL rewrite: an input SQL query is transformed into its own interpreter that wields data dependencies instead of regular values. We deliberately design this transformation to preserve the shape of both data and query, which allows provenance derivation to scale to complex queries without overwhelming the underlying database system.

Keywords

Cite

@article{arxiv.1805.11517,
  title  = {You Say 'What', I Hear 'Where' and 'Why': (Mis-)Interpreting SQL to Derive Fine-Grained Provenance},
  author = {Tobias Müller and Benjamin Dietrich and Torsten Grust},
  journal= {arXiv preprint arXiv:1805.11517},
  year   = {2018}
}

Comments

Extended version of an article published in the Proceedings of the VLDB Endowment (PVLDB, 11(11), August 2018)