HackerPapers

arXiv:2203.16684cs.DB

DBSP: Automatic Incremental View Maintenance for Rich Query Languages

Mihai Budiu, Frank McSherry, Leonid Ryzhyk, Val Tannen

Abstract

Incremental view maintenance has been for a long time a central problem in database theory. Many solutions have been proposed for restricted classes of database languages, such as the relational algebra, or Datalog. These techniques do not naturally generalize to richer languages. In this paper we give a general solution to this problem in 3 steps: (1) we describe a simple but expressive language called DBSP for describing computations over data streams; (2) we give a general algorithm for solving the incremental view maintenance problem for arbitrary DBSP programs, and (3) we show how to model many rich database query languages (including the full relational queries, grouping and aggregation, monotonic and non-monotonic recursion, and streaming aggregation) using DBSP. As a consequence, we obtain efficient incremental view maintenance techniques for all these rich languages.

arXiv comments
Journal reference
DOI
Subjects
cs.DBDatabases

On Hacker News

Linked by 2 identifiable commenters in 2 comments across 2 threads, from Sep 2024 to Oct 2026.

Comments linking this paper, per year.

Discussed in comments2 threads

    • > Real progress happens by expanding the area of the envelope, not by coloring in the blanks. Respectfully disagree. What one person may classify as expanding the envelope, another one with broader knowledge may classify as coloring in the blanks. Much knowledge in one field…

      giovannibonettiView on HNParent context

    • This looks extremely cool. This is basically incremental view maintenance in databases, a problem that almost everybody (I think) has when using SQL databases and wanting to do some derived views for more performant access patterns. Importantly, they seem to support a wide…

      cube2222View on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.