Introduction to combinators and &lgr;-calculus
Introduction to combinators and &lgr;-calculus
The EXODUS optimizer generator
SIGMOD '87 Proceedings of the 1987 ACM SIGMOD international conference on Management of data
Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
Principles of database and knowledge-base systems, Vol. I
Principles of database and knowledge-base systems, Vol. I
An axiom system for database transactions
Information Processing Letters
Hypothetical datalog: complexity and expressibility
Theoretical Computer Science
The expressive power of the bounded-iteration construct
Acta Informatica
The use of program dependence graphs in software engineering
ICSE '92 Proceedings of the 14th international conference on Software engineering
Query evaluation techniques for large databases
ACM Computing Surveys (CSUR)
From λσ to λν: a journey through calculi of explicit substitutions
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Heraclitus: elevating deltas to be first-class citizens in a database programming language
ACM Transactions on Database Systems (TODS)
Structures for manipulating proposed updates in object-oriented databases
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Verifiable properties of database transactions
PODS '96 Proceedings of the fifteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Guarded commands, nondeterminacy and formal derivation of programs
Communications of the ACM
The Science of Programming
A Discipline of Programming
An Implementation of Hypothetical Relations
VLDB '83 Proceedings of the 9th International Conference on Very Large Data Bases
On Implementing a Language for Specifying Active Database Execution Models
VLDB '93 Proceedings of the 19th International Conference on Very Large Data Bases
Higher-order Unification via Explicit Substitutions
LICS '95 Proceedings of the 10th Annual IEEE Symposium on Logic in Computer Science
Hypothetical Queries in an OLAP Environment
VLDB '00 Proceedings of the 26th International Conference on Very Large Data Bases
Querying xml with update syntax
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
From complete to incomplete information and back
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
Extending online travel agency with adaptive reservations
OTM'07 Proceedings of the 2007 OTM Confederated international conference on On the move to meaningful internet systems: CoopIS, DOA, ODBASE, GADA, and IS - Volume Part I
Hi-index | 0.02 |
Previous approaches to supporting hypothetical queries have been “eager”: some representation of the hypothetical state (or the corresponding delta) is materialized, and query evaluation is filtered through that representation. This paper develops a framework for evaluating hypothetical queries using a “lazy” approach, or using a hybrid of eager and lazy approaches.We focus on queries having the form “Q when {{U}}” where Q is a relational algebra query and U is an update expression. The value assigned to this query in state DB is the value that Q would return in the state resulting from executing U on DB. Nesting of the keyword when is permitted, and U may involve a sequence of several atomic updates.We present an equational theory for queries involving when that can be used as a basis for optimization. This theory is very different from traditional rules for the relational algebra, because the semantics of when is unlike the semantics of the algebra operators. Our theory is based on the observation that hypothetical states can be represented as substitutions, similar to those arising in functional and logic programming. Furthermore, hypothetical queries of the form Q when {{U}} can be thought of as representing the suspended application of a substitution. Using the equational theory we develop an approach to optimizing the evaluation of hypothetical queries that uses deltas in the sense of Heraclitus, and permits a range of evaluation strategies from lazy to eager.