动态查询评估中的仅插入与插入-删除对比
Insert-Only versus Insert-Delete in Dynamic Query Evaluation
AI总结:
该研究对比动态查询评估中仅插入与插入-删除场景的复杂度,证明仅插入更新总时间匹配静态查询复杂度,插入删除场景通过扩展元组生命周期变量实现最优摊销更新时间。
摘要:
我们研究动态查询评估问题:给定一个完全合取查询Q以及输入数据库的一系列更新操作,我们构建一种数据结构,支持每次更新后以常数延迟枚举查询输出中的元组。\n 我们证明,对初始为空的数据库执行N次仅插入更新的总时间复杂度为O(N^w(Q)),其中w(Q)是Q的分数超树宽度。这一复杂度与Q针对规模为N的数据库的静态查询评估问题的复杂度相匹配。一个推论是,对于非循环完全合取查询,单条元组插入的摊销时间为常数。\n 相比之下,我们证明N次插入和删除操作序列的总执行时间为O(N^w(Q')),其中Q'是通过为每个关系原子添加表示数据库中元组“生命周期”的额外变量后从Q得到的。我们证明这种归约是最优的,即Q'的静态评估运行时间为Q的输出的总更新时间提供了下界。我们的方法针对层次连接查询和Loomis-Whitney连接查询实现了摊销最优更新时间。
英文摘要:
We study the dynamic query evaluation problem: Given a full conjunctive query Q and a sequence of updates to the input database, we construct a data structure that supports constant-delay enumeration of the tuples in the query output after each update. We show that a sequence 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 amortized time per single-tuple insert is constant for acyclic full conjunctive queries. In contrast, we show that a sequence of N inserts and deletes 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 the database. 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 for the output of Q. Our approach achieves amortized optimal update times for the hierarchical and Loomis-Whitney join queries.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。