Skip to main content
QUICK REVIEW

[论文解读] Intermediate Value Linearizability: A Quantitative Correctness Criterion

Arik Rinberg, Idit Keidar|arXiv (Cornell University)|Jan 1, 2020
Distributed systems and fault tolerance被引用 3
一句话总结

本文提出了中间值线性化(Intermediate Value Linearizability, IVL),一种用于并发定量对象的松弛正确性准则,允许返回值位于线性化边界之间,从而支持更高效的实现。IVL 在 CountMin 等并发 Sketch 中保留了 (ϵ, δ)-有界误差保证,并使批量计数器实现达到 O(1) 步复杂度——同时证明了线性化实现的步复杂度下界为 Ω(n)。

ABSTRACT

Big data processing systems often employ batched updates and data sketches to estimate certain properties of large data. For example, a CountMin sketch approximates the frequencies at which elements occur in a data stream, and a batched counter counts events in batches. This paper focuses on correctness criteria for concurrent implementations of such objects. Specifically, we consider quantitative objects, whose return values are from a totally ordered domain, with a particular emphasis on (ε,δ)-bounded objects that estimate a numerical quantity with an error of at most ε with probability at least 1 - δ. The de facto correctness criterion for concurrent objects is linearizability. Intuitively, under linearizability, when a read overlaps an update, it must return the object’s value either before the update or after it. Consider, for example, a single batched increment operation that counts three new events, bumping a batched counter’s value from 7 to 10. In a linearizable implementation of the counter, a read overlapping this update must return either 7 or 10. We observe, however, that in typical use cases, any intermediate value between 7 and 10 would also be acceptable. To capture this additional degree of freedom, we propose Intermediate Value Linearizability (IVL), a new correctness criterion that relaxes linearizability to allow returning intermediate values, for instance 8 in the example above. Roughly speaking, IVL allows reads to return any value that is bounded between two return values that are legal under linearizability. A key feature of IVL is that we can prove that concurrent IVL implementations of (ε,δ)-bounded objects are themselves (ε,δ)-bounded. To illustrate the power of this result, we give a straightforward and efficient concurrent implementation of an (ε, δ)-bounded CountMin sketch, which is IVL (albeit not linearizable). Finally, we show that IVL allows for inherently cheaper implementations than linearizable ones. In particular, we show a lower bound of Ω(n) on the step complexity of the update operation of any wait-free linearizable batched counter from single-writer objects, and propose a wait-free IVL implementation of the same object with an O(1) step complexity for update.

研究动机与目标

  • 为解决高吞吐流处理中并发数据 Sketch 实现线性化带来的高昂开销问题。
  • 提出一种正确性准则,允许在重叠操作期间返回中间值,反映现实系统中的实际容错能力。
  • 使现有顺序误差分析可复用于并发实现,而无需重新证明边界。
  • 证明 IVL 相较于线性化可实现显著更低的实现成本,尤其在批量计数器场景下。
  • 形式化定义并证明 IVL 对 (ϵ, δ)-有界对象的正确性与误差保持性。

提出的方法

  • 提出中间值线性化(IVL)作为线性化的松弛形式,允许读操作返回两个线性化返回值之间的值。
  • 为顺序和随机化 (ϵ, δ)-有界对象形式化定义 IVL,确保局部可组合性。
  • 证明任意顺序 (ϵ, δ)-有界对象的 IVL 实现仍保持 (ϵ, δ)-有界性,从而可复用现有误差分析。
  • 提出一种并发的、符合 IVL 的 CountMin Sketch 实现,继承原始 Sketch 的误差保证。
  • 设计一种使用 SWMR 寄存器的无等待 IVL 批量计数器,实现 O(1) 更新步复杂度。
  • 建立任意无等待线性化批量计数器在 SWMR 寄存器上的步复杂度下界为 Ω(n),证明 IVL 的效率优势。

实验结果

研究问题

  • RQ1能否定义一种正确性准则,允许在并发操作期间返回中间值,同时保持误差边界?
  • RQ2能否在保持 (ϵ, δ)-有界误差保证的前提下,使用 IVL 实现 CountMin 等并发 Sketch?
  • RQ3对于某些并发对象(如批量计数器),IVL 是否本质上比线性化更高效?
  • RQ4能否无需针对对象特异性定义,通用地应用于所有定量对象?
  • RQ5对于批量计数器,IVL 与线性化实现之间的理论性能差距是多少?

主要发现

  • IVL 保持 (ϵ, δ)-有界误差保证:任意顺序 (ϵ, δ)-有界对象的 IVL 实现仍保持 (ϵ, δ)-有界性。
  • 所提出的 IVL 兼容 CountMin Sketch 并发实现继承原始 Sketch 的误差边界,无需重新分析。
  • 所设计的 IVL 批量计数器在无等待环境下实现 O(1) 更新步复杂度。
  • 任何基于 SWMR 寄存器的无等待线性化批量计数器实现,其更新操作的步复杂度下界为 Ω(n)。
  • IVL 使批量计数器的实现成本显著低于线性化,展现出根本性的效率优势。
  • IVL 准则具有局部性和可组合性,支持模块化推理并发系统,无需全局分析。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。