Paper: Explaining Query Answers with Explanation-Ready Databases By: Roy et al


This paper presented a new system that pre-compute potential explanations and re-evaluate the query based on these explanations. The questions are of the form “why is X high or low”, and X could be a value from an aggregation or the difference between aggregation results.


  • the previous systems didn’t answer with some really important answers because they limit types of explanations. However if they compute off-line then they could support queries like combination of attributes, aggregates, top-k etc.
  • They provided a formal system for specifying explanations by providing the types of the explanation and potential explanations, and causal dependencies that is operated by the domain expert, which leverages human knowledge and could reduce the search space.
  • Incremental view maintenance could help with the performance (which is the key bottleneck to good explanations), because getting the write question boiled down to asking what the effect of the delta of the explanation types would cause.


  • The Algebra on Annotated Relations was very confusing. I initially had a hard time realizing that it’s not very different from vanilla queries.
  • It seemed that the causal dependencies in their context is just foreign key, e.g. “if an investigator is deleted, delete all of his/her awards, and if an institution is deleted, delete all awards received by this institution” (though there is rich literature on the theory side of causality).
  • Needing the expert to specify the set of rules that could be potential explanations seems like a lot of effort.
  • Space seem to be an issue but the authors didn’t seem to address at all.


  • It was very neat to add a very concrete example and follow that through out.
  • The giant paragraph spent comparing to DBToaster prematurely in the paper suggests that perhaps the authors have received reviews that made them need to defend their positive and difference to incremental view maintenance systems
  • When reading papers with heavy theoretical constructs, try to skip as much as possible during first read to get a sense of the structure first!