The Push/Pull model of transactions
The Push/Pull model of transactions
复制标题
交易的推/拉模型
DOI:
10.1145/2737924.2737995
复制
发表时间:
2015
期刊:
影响因子:
--
通讯作者:
Matthew J. Parkinson
中科院分区:
文献类型:
--
作者:
Eric Koskinen;Matthew J. Parkinson
We present a general theory of serializability, unifying a wide range of transactional algorithms, including some that are yet to come. To this end, we provide a compact semantics in which concurrent transactions PUSH their effects into the shared view (or UNPUSH to recall effects) and PULL the effects of potentially uncommitted concurrent transactions into their local view (or UNPULL to detangle). Each operation comes with simple criteria given in terms of commutativity (Lipton's left-movers and right-movers). The benefit of this model is that most of the elaborate reasoning (coinduction, simulation, subtle invariants, etc.) necessary for proving the serializability of a transactional algorithm is already proved within the semantic model. Thus, proving serializability (or opacity) amounts simply to mapping the algorithm on to our rules, and showing that it satisfies the rules' criteria.