当前位置: X-MOL 学术VLDB J. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Interactive checks for coordination avoidance
The VLDB Journal ( IF 2.8 ) Pub Date : 2020-09-05 , DOI: 10.1007/s00778-020-00628-3
Michael Whittaker , Joseph M. Hellerstein

Strongly consistent distributed systems are easy to reason about but face fundamental limitations in availability and performance. Weakly consistent systems can be implemented with very high performance but place a burden on the application developer to reason about complex interleavings of execution. Invariant confluence provides a formal framework for understanding when we can get the best of both worlds. An invariant confluent object can be efficiently replicated with no coordination needed to preserve its invariants. However, actually determining whether or not an object is invariant confluent is challenging. In this paper, we establish conditions under which a commonly used sufficient condition for invariant confluence is both necessary and sufficient, and we use this condition to design (a) a general-purpose interactive invariant confluence decision procedure and (b) a novel sufficient condition that can be checked automatically. We then take a step beyond invariant confluence and introduce a generalization of invariant confluence, called segmented invariant confluence, that allows us to replicate non-invariant confluent objects with a small amount of coordination. We implemented these formalisms in a prototype called Lucy and found that our decision procedures efficiently handle common real-world workloads including foreign keys, rollups, escrow transactions and more. We also found that segmented invariant confluent replication can deliver up to an order of magnitude more throughput than linearizable replication for low contention workloads and comparable throughput for medium-to-high contention workloads.



中文翻译:

交互式检查,避免协调

高度一致的分布式系统很容易推论,但在可用性和性能方面面临根本限制。弱一致性系统可以以非常高的性能实现,但给应用程序开发人员造成负担,使他们不得不推理复杂的执行交错​​。不变融合提供了一个正式的框架,用于了解何时我们可以同时兼顾两个方面。不变的融合对象可以有效地复制,而无需协调即可保留其不变性。然而,实际上确定对象是否是不变的合一是具有挑战性的。在本文中,我们建立了一个条件,在该条件下,既有必要的条件又有足够的不变融合的常用条件,并且我们使用此条件来设计(a)通用交互式不变合流决策程序,以及(b)可以自动检查的新颖的充分条件。然后,我们采取了超出不变融合的步骤,并引入了不变融合的一般化,称为分段不变融合,它使我们能够通过少量协调来复制不变融合对象。我们在名为Lucy的原型中实现了这些形式主义,发现我们的决策程序有效地处理了常见的实际工作负载,包括外键,汇总,托管交易等。

更新日期:2020-09-07
down
wechat
bug