Insert-Only versus Insert-Delete in Dynamic Query Evaluation
CoRR(2023)
摘要
We study the dynamic query evaluation problem: Given a join query Q and a
stream of updates, we would like to construct a data structure that supports
constant-delay enumeration of the query output after each update.
We show that a stream of N insert-only updates (to an initially empty
database) can be executed in total time O(N^{w(Q)}), where w(Q) is the
fractional hypertree width of Q. This matches the complexity of the static
query evaluation problem for Q and a database of size N. One corollary is that
the average time per single-tuple insert is constant for acyclic joins.
In contrast, we show that a stream of N insert-and-delete updates to Q can be
executed in total time O(N^{w(Q')}), where Q' is obtained from Q by extending
every relational atom with extra variables that represent the "lifespans" of
tuples in Q. We show that this reduction is optimal in the sense that the
static evaluation runtime of Q' provides a lower bound on the total update time
of Q. Our approach recovers the optimal single-tuple update time for known
queries such as the hierarchical and Loomis-Whitney join queries.
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要