竞争性数据结构动态化
Competitive Data-Structure Dynamization
AI总结:
本文通过竞争分析和两个新的在线集合覆盖问题研究数据结构动态化,为批量插入和非均匀读写场景提出了竞争比分别为$Θ(\log^* n)$和$k$的确定性在线算法。
摘要:
数据结构动态化是一种使静态数据结构变为动态的通用方法。它被广泛应用于几何场景中,并以所谓合并(或压缩)策略的形式应用于如Google Bigtable和LevelDB等大数据数据库中(这也是本文的重点)。先前的理论研究基于均匀输入的最坏情况分析——即每次插入一个数据项且读取率为常数。在实践中,合并策略不仅必须处理批量插入和变化的读写比率,还能利用这种非均匀性来减少每个输入的成本。为了对此进行建模,我们通过竞争分析的视角,借助两个新的在线集合覆盖问题,开启了对数据结构动态化的研究。对于每个问题,输入都是一系列不相交的带权数据项集合。这些集合每次揭示一个。算法必须对每个集合做出响应,提供一个覆盖迄今为止所有已揭示数据项的集合覆盖。它通过添加一个或多个集合并选择性地移除现有集合,从前一个覆盖中增量地获取该覆盖。对于每个新集合,算法会产生等于该集合中数据项权重的构建成本。在第一个问题中,目标是最小化总构建成本加上总查询成本,其中算法在每个时间$t$产生的查询成本等于当前覆盖的大小。在第二个问题中,目标是最小化构建成本,同时确保查询成本在任何时候都不超过$k$(给定参数)。我们为这两种变体提供了确定性在线算法,其竞争比分别为$Θ(\log^* n)$和$k$。后一个竞争比对于第二种变体是最优的。
英文摘要:
Data-structure dynamization is a general approach for making static data structures dynamic. It is used extensively in geometric settings and in the guise of so-called merge (or compaction) policies in big-data databases such as Google Bigtable and LevelDB (our focus). Previous theoretical work is based on worst-case analyses for uniform inputs -- insertions of one item at a time and constant read rate. In practice, merge policies must not only handle batch insertions and varying read/write ratios, they can take advantage of such non-uniformity to reduce cost on a per-input basis. To model this, we initiate the study of data-structure dynamization through the lens of competitive analysis, via two new online set-cover problems. For each, the input is a sequence of disjoint sets of weighted items. The sets are revealed one at a time. The algorithm must respond to each with a set cover that covers all items revealed so far. It obtains the cover incrementally from the previous cover by adding one or more sets and optionally removing existing sets. For each new set the algorithm incurs build cost equal to the weight of the items in the set. In the first problem the objective is to minimize total build cost plus total query cost, where the algorithm incurs a query cost at each time $t$ equal to the current cover size. In the second problem, the objective is to minimize the build cost while keeping the query cost from exceeding $k$ (a given parameter) at any time. We give deterministic online algorithms for both variants, with competitive ratios of $Θ(\log^* n)$ and $k$, respectively. The latter ratio is optimal for the second variant.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。