Affiliation:
1. Stanford University
2. AT&T Bell Laboratories
3. University of Maryland
Abstract
We present incremental evaluation algorithms to compute changes to materialized views in relational and deductive database systems, in response to changes (insertions, deletions, and updates) to the relations. The view definitions can be in SQL or Datalog, and may use UNION, negation, aggregation (
e.g.
SUM, MIN), linear recursion, and general recursion.
We first present a
counting
algorithm that tracks the number of alternative derivations (counts) for each derived tuple in a view. The algorithm works with both set and duplicate semantics. We present the algorithm for
nonrecursive views
(with negation and aggregation), and show that the count for a tuple can be computed at little or no cost above the cost of deriving the tuple. The algorithm is optimal in that it computes exactly those view tuples that are inserted or deleted. Note that we store only the
number
of derivations, not the derivations themselves.
We then present the Delete and Rederive algorithm, DRed, for incremental maintenance of recursive views (negation and aggregation are permitted). The algorithm works by first deleting a superset of the tuples that need to be deleted, and then rederiving some of them. The algorithm can also be used when the view definition is itself altered.
Publisher
Association for Computing Machinery (ACM)
Subject
Information Systems,Software
Cited by
168 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Simplicity and Elegance in Stream Processing: a 5-Year Odyssey;Proceedings of the 18th ACM International Conference on Distributed and Event-based Systems;2024-06-24
2. Interactive Abstract Interpretation with Demanded Summarization;ACM Transactions on Programming Languages and Systems;2024-03-29
3. Early detection of temporal constraint violations;Information and Computation;2024-01
4. Coordination-Free Replicated Datalog Streams with Application-Specific Availability;Lecture Notes in Computer Science;2024
5. Incrementalizing Production CodeQL Analyses;Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering;2023-11-30