Reconfigurable Atomic Transaction Commit (Extended Version)
现代数据存储通过将数据划分为碎片来实现可扩展性,并通过在多个服务器上复制每个碎片来实现容错。这种系统的一个关键组件是事务认证服务(TCS),它原子地提交跨越多个分片的事务。现有的TCS协议需要每个分片2f+1个崩溃停止副本来容忍f个故障。在本文中,我们提出了原子提交协议,只需要f+1副本,并重新配置系统失败后,使用外部重新配置服务。我们还严格证明,这些协议正确地实现了最近提出的TCS规范。我们目前的协议在两个不同的模型-标准的异步消息传递模型和模型与远程直接内存访问(RDMA),它允许一台机器通过网络访问另一台机器的内存,而不涉及后者的CPU。我们的协议的灵感来自最近的FARM系统基于RDMA的事务处理。我们的工作将FARM的核心思想编纂为分布式TCS协议,严格证明了它们的正确性,并强调了使用RDMA所需的权衡。
2019-06-04 cs.DC
On Partial Wait-Freedom in Transactional Memory
transmittance memory(TM)是一种方便的同步工具,它允许并发线程将共享数据上的指令序列声明为具有“全有或全无”语义的推测性\emph{transactions}。已知动态事务存储器不能提供\emph{wait-free}进程,因为每个事务在其自己的有限数目的步骤中提交。在本文中,我们探讨了只为\emph{subset}事务提供等待自由的成本。由于大多数事务性工作负载被认为是以读为主的,因此我们要求只读事务以无等待方式提交,而更新事务只有在没有并发的情况下运行时才能保证提交。我们表明,这种部分等待自由,结合有吸引力的要求,如读不可见性或不相交访问并行,会产生相当大的复杂性成本。
2014-08-15 cs.DC
Non-Interference and Local Correctness in Transactional Memory
事务内存允许用户在原子事务中使用全有或全无的语义来组装动作序列,从而使并发编程变得易于处理和高效。据信,事务内存必须确保所有提交的事务都构成遵守实时顺序的串行执行。相反,中止或未完成的交易不应“生效”。“但“不起作用”到底是什么意思?这似乎是自然的期望,中止或不完整的事务不会出现在全局串行执行中,因此,没有提交的事务可以受到它们的影响。我们研究了另一个不太明显的“不生效”特性,称为非干扰:已中止或未完成的事务不应强制任何其他事务中止。在本文中我们探讨的最强形式的不干扰中,通过从历史中删除一个被中止或不完整事务的子集,我们不应该能够在不违反正确性标准的情况下将被中止的事务转换为已提交的事务。我们表明,非干扰是,在严格意义上说,不可实现的流行标准的不透明性,需要所有的交易(无论是他们提交,中止或不完整)见证相同的全球串行执行。相反,当我们只要求局部正确性时,不干涉是可以实现的。非正式地,如果正确性标准仅要求每个事务可以与在其最后一个事件(被中止或未完成的事务被忽略)之前提交的事务(的子集)一起被序列化,则该正确性标准是局部的。我们给出了几个例子的本地正确性属性,包括最近提出的虚拟世界的一致性标准,并提出了一个简单而有效的实现,满足非干扰和本地不透明。
2013-10-12 cs.DC cs.DS
A Byzantine Fault Tolerant Distributed Commit Protocol
在本文中,我们提出了一个拜占庭容错分布式提交协议的事务运行在不可信的网络。传统的两阶段提交协议通过复制协调器和在协调器副本之间运行拜占庭协议算法来增强。我们的协议可以容忍拜占庭故障的协调副本和一个子集的恶意故障的参与者。一个决策证书,其中包括一组注册记录和一组投票的参与者,是用来促进协调副本,以达到拜占庭协议的结果,每一个交易。该证书还限制了错误副本可以用于非原子终止事务或语义上不正确的事务结果的方式。
2007-08-01 cs.DB cs.DC
Fast General Distributed Transactions with Opacity using Global Time
事务可以通过向应用程序开发人员隐藏数据分布、并发和故障来简化分布式应用程序。理想情况下,开发人员将看到一个单独的大型机器的抽象,该机器顺序地运行事务并且从不失败。这就要求事务子系统提供不透明性(对已提交和已中止的事务都严格可串行化),以及透明的高可用性容错。由于即使是最好的抽象,如果它们表现不佳,也不太可能被使用,因此系统还必须提供高性能。现有的分布式事务设计要么削弱了这种抽象,要么不是为数据中心内的最佳性能而设计的。本文扩展了FaRM的设计-仅为提交的事务提供严格的可串行化性-以提供不透明性,同时保持FaRM的高吞吐量,低延迟和高可用性在现代数据中心。它使用基于实时的的时间戳排序,时钟在整个集群中同步到几十微秒内,并使用故障转移协议来确保时钟主机故障的正确性。当在90台机器上运行TPC-C事务混合时,具有不透明性的FaRM每秒可以提交540万个新事务,并具有3路复制。
2020-06-25 cs.DC
Warp: Lightweight Multi-Key Transactions for Key-Value Stores
传统的NoSQL系统通过在多个服务器上分片数据,并在少量服务器上执行每个操作来扩展。由于多个键上的事务必然需要跨多个服务器进行协调,因此NoSQL系统通常会显式地避免做出事务保证,以避免这种协调。过去在事务系统上的工作通过增加事务排序的粒度、牺牲可串行性或通过做出时钟同步性假设来控制这种协调。本文提出了一种新的协议,用于在分片数据存储之上提供可串行化的事务。该协议被称为非循环事务,允许多个事务同时准备和提交,提高了系统的并发性,同时确保并发提交事务之间不会形成循环。我们已经在一个名为Warp的文档存储中完全实现了非循环事务。实验表明,在标准TPC-C基准测试中,Warp的吞吐量比Sinfonia的mini-transactions高4倍,并且没有异常中止。此外,该系统实现了其构建的非事务性键值存储的75%的吞吐量。
2015-09-25 cs.DC
Non-Monotonic Snapshot Isolation
许多分布式应用程序需要事务。然而,需要强同步的事务协议在大规模环境中是昂贵的。两个属性有助于事务系统的可伸缩性:真正的部分复制(GPR),它利用了工作负载的内在并行性,以及快照隔离(SI),它减少了对同步的需求。我们表明,在标准的假设下(数据存储访问是事先不知道的,事务可以访问数据存储中的任意对象),这是不可能的SI和GPR。为了避免这种不可能性,我们提出了一个较弱的一致性标准,称为非单调快照隔离(NMSI)。NMSI保留了SI的最重要属性,即,只读事务总是提交,并且两个写冲突的更新不会都提交。我们提出了一个GPR协议,确保NMSI,并具有较低的消息成本(即,它比先前的方法接触更少的副本和/或更快地提交)。
2013-06-17 cs.DC
Reducing Latency of DAG-based Consensus in the Asynchronous Setting via the UTXO Model
针对基于DAG的共识协议存在高延迟和高验证成本问题,提出基于UTXO模型的提交规则及Board and Clerk算法,将约50%交易延迟减半,并引入超块模型降低验证成本。
2023-11-13 cs.CR cs.DC
Tiga: Accelerating Geo-Distributed Transactions with Synchronized Clocks [Technical Report]
本研究提出面向地理复制事务数据库的Tiga设计,通过同步时钟主动分配未来时间戳合并并发控制与共识,多数场景1次广域往返即可提交事务,性能显著优于现有方案且已开源。
2025-09-06 cs.DB cs.DC cs.NI
FLAC: A Robust Failure-Aware Atomic Commit Protocol for Distributed Transactions
National University of Singapore(新加坡国立大学);Beijing Institute of Technology(北京理工大学);Zhejiang University(浙江大学)
在分布式事务处理中,原子提交协议(ACP)被用来保证数据库的一致性。随着商用计算节点和网络的使用,诸如系统崩溃和网络分区之类的故障是常见的。因此,重要的是ACP动态地适应操作条件以提高效率,同时确保数据库的一致性。现有的ACP通常假设稳定的操作条件,因此,它们要么不可推广到不同的环境,要么在实践中很慢。在本文中,我们提出了一种新颖而实用的ACP,称为故障感知原子提交(FLAC)。本质上,FLAC包括三个协议,它们是专门为三种不同的环境设计的:(i)没有故障发生,(ii)参与节点可能崩溃,但没有延迟连接,或(iii)崩溃的节点和延迟连接都可能发生。它将这些环境建模为无故障、崩溃故障和网络故障鲁棒性级别。在其操作期间,FLAC可以监控是否发生任何故障,并使用鲁棒性级别状态机动态切换以操作最合适的协议,该状态机的参数通过强化学习进行微调。因此,它提高了响应时间和吞吐量,并有效地处理分布在Internet上可能发生崩溃和网络故障的节点。我们在一个基于GooglePercolator的分布式事务键值存储系统中实现了FLAC,并通过实际工作负载的微观基准测试和宏观基准测试对其性能进行了评估。结果表明,与现有的ACP相比,FLAC实现了高达2.22倍的吞吐量提高和2.82倍的延迟加速。
2023-03-02 cs.AI cs.DB cs.DC
Atomic Commitment Across Blockchains
最近采用的区块链技术和开放的无许可网络表明了点对点原子跨链交易协议的重要性。用户应该能够原子地交换代币和资产,而不依赖于交易所等中心化中介。最近的点对点原子跨链交换协议使用哈希锁和时间锁来确保参与者遵守协议。但是,过期的时间锁可能会导致违反全有或全无的原子性属性。一个诚实的参与者,如果由于崩溃失败或网络延迟而未能按时执行智能合约,最终可能会失去她的资产。虽然崩溃的参与者是唯一一个最终会变得更糟的参与者,但目前的提议不适合异步环境中的原子跨链交易,在这种环境中,崩溃失败和网络延迟是常态。在本文中,我们提出了AC3WN,第一个分散的全有或全无原子跨链承诺协议。交换资产的智能合约的赎回和退款事件被建模为冲突事件。一个开放的无权限见证网络用于保证冲突事件永远不会同时发生,并且原子跨链交易中的所有智能合约都被赎回或全部退款。
2019-06-18 cs.CR cs.DB cs.DC
When AI Agents Commit: Cognitive Serializability Across Data, Evidence, Policy, and Authority
本文提出认知可串行化及TCT机制,解决AI智能体基于易变输入提交变更的一致性问题,通过类型化依赖令牌和密封事务实现,原型验证有效且开销仅3.22毫秒。
2026-09-18 cs.AI cs.DC
Blockchain Meets Database: Design and Implementation of a Blockchain Relational Database
在本文中,我们设计并实现了第一个具有区块链特性的分散复制关系数据库,我们称之为区块链关系数据库。我们强调了区块链平台和复制的关系数据库提供的功能之间的一些相似之处,尽管它们在概念上不同,主要是在它们的信任模型上。受此启发,我们利用关系数据库中的丰富功能、数十年的研究和优化以及可用工具来构建区块链关系数据库。我们考虑一个已知但相互不信任的组织的许可区块链模型,每个组织都运行自己的数据库实例,这些实例是彼此的副本。副本独立执行事务,并参与分散的共识,以确定事务的提交顺序。我们设计了两种方法,第一种方法是在执行事务之前商定事务的提交顺序,第二种方法是在没有提交顺序的先验知识的情况下执行事务,而排序是并行发生的。我们利用可序列化的快照隔离(SSI),以保证跨节点的副本保持一致,并尊重由共识确定的顺序,并设计了一个新的变体的SSI块高度的基础上,后者的方法。我们实现了我们的系统在PostgreSQL上,并提出了详细的性能实验分析这两种方法。
2019-05-31 cs.DC
Distributed Cross-Blockchain Transactions
跨多个或多个区块链的互操作性将在即将到来的基于区块链的数据管理范式中发挥关键作用。特别是,如何确保这些交易在任意数量的区块链上的ACID属性仍然是学术界和工业界的一个悬而未决的问题:现有的解决方案要么只适用于两个区块链,要么需要一个集中式组件,这两种解决方案都不符合实践中的可扩展性要求。这篇简短的论文分享了我们对可扩展的跨区块链交易的愿景和一些早期结果。具体来说,我们设计了两个分布式提交协议,并通过分析和实验,证明了它们的有效性。
2020-02-26 cs.DB cs.DC
Odontoceti: Ultra-Fast DAG Consensus with Two Round Commitment
本研究提出Odontoceti超快速DAG共识协议,以20%容错率的安全权衡实现两轮通信确认,在真实网络下达300ms中位延迟与1万TPS,较现有生产协议延迟降20-25%,验证了低容错共识协议的区块链实用价值。
2025-10-28 cs.CR cs.DC
Performance Optimization of High-Conflict Transactions within the Hyperledger Fabric Blockchain
本文针对Hyperledger Fabric中高冲突交易影响性能的问题,提出将MVCC提前至交易流程前序阶段以尽早检测冲突,设计了OEMVCC和OEMVCC-EA两种改进方案,实验证明显著提升了吞吐量与延迟。
2024-07-30 cs.DC
Obladi: Oblivious Serializable Transactions in the Cloud
本文介绍了Obladi的设计和实现,这是第一个提供ACID事务同时隐藏访问模式的系统。Obladi使用不经意RAM作为其构建块,但将支持事务的需求转化为性能机会。通过在epoch内执行事务并延迟提交决策直到epoch结束,Obladi降低了不经意存储的摊销带宽成本,并提高了整体系统吞吐量。这些性能提升,再加上新的并发控制和恢复的不经意机制,使Obladi能够以合理的吞吐量执行OLTP工作负载:它在TPC-C、SmallBank和FreeHealth应用程序上的不经意基线的5倍到12倍之内。然而,延迟开销更高(TPC-C上为70倍)。
2018-09-27 cs.CR cs.DC
Basil: Breaking up BFT with ACID (transactions)
本文介绍了Basil,第一个事务性的,无领导的拜占庭容错键值存储。Basil利用ACID事务在拜占庭参与者存在的情况下可扩展地实现可信共享日志的抽象。与传统的BFT方法不同,Basil并行执行非冲突操作,并在无故障执行期间在单个往返中提交事务。Basil将传统BFT系统的吞吐量提高了四到五倍,并且仅比非拜占庭复制系统TAPIR慢四倍。Basil的新型恢复机制进一步最大限度地减少了故障的影响:在最坏的情况下,30%的拜占庭客户端的吞吐量下降不到25%。
2021-10-05 cs.CR cs.DB cs.DC
Dynamic management of transactions in distributed real-time processing system
实时的分布式计算系统中的事务管理并不容易,因为它需要异构的网络计算机来解决单个问题。如果一个事务跨一些不同的站点运行,它可能会在某些站点提交,而在另一个站点失败,从而导致不一致的事务。在实时的应用中,对数据库系统和事务处理的响应时间设置截止期限,增加了系统的复杂性。这样的系统需要在这些截止日期到期之前处理交易。通过一系列的仿真研究,分析了在不同的工作负载、分布方式、执行模式(分布和并行)等条件下,不同事务管理下的性能。数据访问的调度是为了满足截止日期,并最大限度地减少错过截止日期的事务数量。引入了一种新的概念,以动态的方式管理事务,而不是以静态的方式设置计算参数。通过这种方法,该系统在性能上得到了显着的改善。
2010-05-29 cs.DC
An Algebraic-Topological Approach to Processing Cross-Blockchain Transactions
用于处理跨区块链交易的最先进技术采用简单的集中式方法:当区块链上的资产$X$(例如$X$ -硬币)与区块链上的资产$Y$($Y$ -硬币)交换时,这些$X$ -硬币需要交换到“中间”介质(例如比特币),然后交换到$Y$ -硬币。如果在一个全局交易中涉及到两个以上的交易方,则全局交易被分成多个本地两方交易,每个交易都遵循上述中央交换协议。不幸的是,全局事务的原子性与中心交换方法相违背:这些本地两方事务一旦提交,如果全局事务决定中止,就不能回滚。从更一般的意义上说,基于图的(双方)交易模型很难扩展到跨区块链交易中的任意数量的交易方。%从为什么到如何在本文中,我们介绍了跨区块链交易的更高级别抽象。我们采用了\textit{abstract simplicial complex},一个广泛研究的数学对象在代数拓扑,代表任意数量的参与区块链交易的各方。全局事务中的每一方都被建模为一个顶点,$n+1$($n \in \mathbb{Z}$,$n > 0$)方之间的全局事务构成一个$n$维单纯形.虽然这种更高级别的抽象似乎微不足道,但我们将展示这种简单的扩展如何导致一系列新的建模方法和协议,以更好地处理跨区块链交易。
2020-08-19 cs.CR cs.DC
End-to-End and Phase-Level Performance Optimization for Hyperledger Fabric
National Payments Corporation of India (NPCI)(印度国家支付公司);Indian Institute of Science (IISc)(印度科学学院)
本文研究Hyperledger Fabric的性能优化,提出两种新方法提升提交阶段效率,并通过实验和模拟分析配置参数对性能的影响,最终提供阶段感知的优化方案。
2026-04-29 cs.DC
Achieving Starvation-Freedom with Greater Concurrency in Multi-Version Object-based Transactional Memory Systems
为了正确地利用多核处理器,需要进行并发编程。并发控制是设计正确高效的并发程序所面临的主要挑战。软件事务存储器系统(STM)为程序员提供了轻松的多线程,而无需担心并发问题,如死锁,活锁,优先级反转等。一些STM工作在高级操作上,并确保比RWSTM更大的并发性。这种STM被称为基于对象的STM(OSTM)。OSTM的事务可以返回commit或abort。已中止的OSTM事务重试。但在目前的OSTM环境下,交易可能会挨饿。因此,我们提出了一个饥饿自由的OSTM(SF-OSTM),它确保饥饿自由基于对象的STM系统,同时满足正确性标准的co-opacity。数据库、RWSTM和OSTM认为,维护多个版本对应于事务的每个键,减少了中止的数量,提高了吞吐量。因此,为了实现更大的并发性,我们提出了饥饿自由多版本OSTM(SF-MVOSTM),它确保饥饿自由,同时存储对应于每个键的多个版本,并满足正确性标准,如局部不透明性。为了展示性能优势,我们实现了SF-MVOSTM的三种变体(SF-MVOSTM,SF-MVOSTM-GC和SF-KOSTM),并将其与最先进的STM进行了比较。
2019-08-21 cs.DC
Send: Objects, History, and Transactions in a Single-Verb Kernel
本文提出了一种单一动词内核,通过统一的发送接口、事务和对象区分(易逝 vs 持久)来实现多方对象协调的六个结构性属性,包括认证溯源、不透明封装、原子多对象提交、确定性回放、不可变历史和历史推导状态。
2026-05-17 cs.DC cs.PL
Proxima. A DAG based cooperative distributed ledger
本文提出Proxima,一种基于DAG和UTXO的分布式账本,通过代币持有者遵循“最大账本覆盖规则”的合作共识实现无需许可、高吞吐、低成本的去中心化,无需矿工或质押。
2025-10-11 cs.DC
Mahi-Mahi: Low-Latency Asynchronous BFT DAG-Based Consensus
Mahi-Mahi是首个基于未认证DAG的异步BFT共识协议,通过放弃显式认证减少消息和CPU开销,并引入新颖的提交规则,在广域网中实现亚秒级延迟和每秒超10万笔交易,显著优于现有协议。
2024-10-17 cs.CR cs.DC