Queues Are Databases
面向消息的中间件(Message-Oriented-Middleware,缩写为MMS)已经成为一个小产业。作为对纯客户机-服务器事务处理的一种改进,IBM提供了排队事务处理。这一注释提出了四点:嵌入式事务处理不如直接事务处理通用。嵌入式系统建立在直接系统之上。你不能在排队系统上建立一个直接系统。很难在排队系统上构建直接的、会话式的或分布式的事务。数据库是具有有趣的并发控制的有趣的数据库。最好将这些机制构建到标准数据库系统中,以便其他应用程序可以使用这些有趣的功能。队列系统需要DBMS功能。企业需要安全、配置、性能监视、恢复和重组实用程序。数据库系统已经具有这些特性。一个全功能的数据库系统复制了这些数据库功能。队列管理器是简单的TP监视器,管理由队列驱动的服务器池。随着数据库系统向TP-lite系统的发展,它们包含了许多服务器池功能。
2007-01-25 cs.DB
Identifying the Major Sources of Variance in Transaction Latencies: Towards More Predictable Databases
几十年的研究都在寻求提高数据库管理系统(DBMS)中的事务处理性能和可伸缩性。然而,很少有人关注性能的可预测性:单个事务显示出远离平均值的执行延迟的频率如何?当事务处理位于复杂企业软件或交互式Web服务的关键路线上时,以及在新兴的数据库即服务市场中,客户签订合同以保证性能水平时,性能可预测性至关重要。在本文中,我们采取了几个步骤,实现更可预测的数据库系统。首先,我们提出了一个分析框架,称为VProfiler,给定的DBMS的源代码,是能够确定的主要来源的变化,在事务延迟。VProfiler自动对DBMS源代码进行检测,将事务延迟的总体方差分解为各个函数执行时间的方差和协方差,从而深入了解方差的根本原因。其次,我们使用VProfiler来分析MySQL和Postgres -两个最流行和最复杂的开源数据库系统。我们的案例研究表明,MySQL和Postgres差异的主要原因分别是锁调度和集中式日志记录。最后,基于VProfiler的研究结果,我们进一步关注通过以下方式来弥补MySQL的性能差异:(1)提出一种新的锁调度算法,称为Variance-Aware Transaction Scheduling(VATS),(2)增强缓冲池替换策略,以及(3)确定可以显着减少方差的调优参数。我们的实验结果表明,我们的计划减少整体交易延迟方差平均37%(高达64%),而不影响吞吐量或平均延迟。
2016-03-03 cs.DB
GeoTP: Latency-aware Geo-Distributed Transaction Processing in Database Middlewares (Extended Version)
针对地理分布式数据库中间件因高网络延迟和长锁竞争导致的事务性能下降问题,本文提出GeoTP,通过去中心化准备、延迟感知调度及启发式优化减少往返与锁等待,并在ShardingSphere和ScalarDB上验证,最高获得17.7倍性能提升。
2024-12-05 cs.DB
Probabilistic Frequent Pattern Growth for Itemset Mining in Uncertain Databases (Technical Report)
不确定事务数据库中的频繁项集挖掘在语义和计算上不同于传统的应用于标准(确定)事务数据库的技术。不确定事务数据库由存在不确定项的集合组成。交易项目的不确定性使得传统的技术不适用。在本文中,我们解决的问题,发现概率频繁项集的基础上可能世界语义。在此上下文中,如果X在至少minSup事务中出现的概率高于给定阈值,则项集X被称为频繁项集。我们做了以下贡献:我们提出了第一个概率FP-Growth算法(ProFP-Growth)和相关的概率FP-Tree(ProFP-Tree),我们使用它来挖掘不确定事务数据库中的所有概率频繁项集,而无需候选生成。此外,我们提出了一个有效的技术来计算的支持概率分布的项目集在线性时间使用生成函数的概念。一个广泛的实验部分评估我们提出的技术,并表明我们的ProFP-Growth方法是显着快于目前最先进的算法。
2010-08-13 cs.DB
SLSM : An Efficient Strategy for Lazy Schema Migration on Shared-Nothing Databases
针对shared-nothing数据库在线模式变更需等待大规模数据回填的问题,本文提出SLSM策略,通过保持新旧模式数据分布并融合迁移事务与用户事务,降低通信开销与事务等待,实现零停机高效迁移。
2024-04-05 cs.DB
Database Perspectives on Blockchains
现代区块链系统是对分布式计算范式的全新审视,在大规模公共网络的假设下应用。它们可以用来存储和共享信息,而无需可信的中心方。人们一直在努力开发区块链系统,用于各种用途,从加密货币到身份控制、供应链管理等,这些工作都没有直接研究使用区块链作为管理数据的底层基础设施时出现的基本数据库问题。使用区块链存储数据和集中控制的数据库之间的关键区别在于,交易是通过共识机制被区块链接受的。因此,一旦用户发布了一个交易,她就不能确定它是否会被接受。此外,尚未被接受的交易不能被用户撤回,并且可以在未来附加到区块链。这造成了困难,因为如果交易未被接受,用户可能希望重新发出交易。然而,这些数据可能会被两次附加到区块链上。在本文中,我们通过介绍区块链作为数据库基础的存储层的正式基础,提出了区块链的数据库视角。我们解决的主要问题是交易附加的不确定性,这是共识机制的结果。我们研究了两种类型的事务附加问题:(1)在给定区块链状态、未决事务和完整性约束的情况下,确定拒绝约束是否可能被矛盾的复杂性;(2)生成与未决事务的给定子集相互(不)一致的事务的复杂性。解决这些问题对于确保用户能够发出与其意图一致的事务至关重要。最后,我们为今后的工作指明了重要方向。
2018-03-15 cs.DB
NewSQL: Towards Next-Generation Scalable RDBMS for Online Transaction Processing (OLTP) for Big Data Management
解决大数据问题的关键进展之一是替代数据库技术的出现。今天,经典的RDBMS得到了一组丰富的替代数据管理系统(DMS)的补充,这些DMS系统专门设计用于处理大数据汇集的数量,种类,速度和可变性;这些DMS系统包括NoSQL,NewSQL和基于搜索的系统。NewSQL是一类现代关系数据库管理系统(RDBMS),其为在线事务处理(OLTP)读写工作负载提供与NoSQL系统相同的可扩展性能,同时仍然保持传统数据库系统的ACID保证。本文讨论了NewSQL数据管理系统,并与NoSQL和传统数据库系统进行了比较。介绍了面向大数据管理的在线事务处理(OLTP)的NewSQL数据库的体系结构、特点、分类。它还在单独的分类表中提供了流行的NoSQL和NewSQL数据库的列表。本文对基于SQL的RDBMS、NoSQL和NewSQL数据库进行了比较,并提出了NoSQL和NewSQL的一些研究问题。
2014-11-26 cs.DB
Anomaly Pattern-guided Transaction Bug Testing in Relational Databases
本文提出基于异常模式引导的事务bug测试方法,通过生成针对性测试用例和两阶段检测流程,发现RDBMS中的13个未知事务bug。
2025-11-21 cs.DB
CoroBase: Coroutine-Oriented Main-Memory Database Engine
由于使用了指针丰富的数据结构,数据停顿是主存数据库引擎中的主要开销。轻量级协同程序通过重叠计算和异步数据预取简化了软件预取的实现,以隐藏数据停顿。然而,以前的解决方案主要集中在(1)单个组件和操作,以及(2)需要接口更改的事务内兼容性,破坏了向后兼容性。目前尚不清楚它们如何应用于完整的数据库引擎,以及它们在各种工作负载下带来了多少端到端的好处。本文介绍了\corobase,一个内存数据库引擎,解决了这些挑战与一个新的协同程序到事务的范例。协程到事务将事务建模为协程,从而实现事务间的互操作,避免了应用程序更改,但保留了预取的优点。我们发现,在48核服务器上,CoroBase在读取密集型工作负载方面的性能提高了近2倍,并且在本质上无法从软件预取中受益的工作负载方面保持了竞争力。
2020-10-29 cs.DB
Towards Transaction as a Service
本文提出将事务处理从云原生数据库中解耦为独立服务(TaaS),构建执行-事务-存储三层架构,以实现独立扩展、升级,并增强AP引擎的ACID能力、支持多主分布式与多模型事务,提升性能。
2023-11-14 cs.DB
High-Performance Concurrency Control Mechanisms for Main-Memory Databases
针对内存存储优化的数据库系统可以支持比当前系统高得多的事务速率。然而,目前使用的标准并发控制方法不能按比例缩放到这样的系统可实现的高事务速率。在本文中,我们介绍了两个有效的并发控制方法专门设计的主存数据库。两者都使用多版本控制来隔离只读事务和更新,但在如何确保原子性方面有所不同:一个是乐观的,一个是悲观的。为了避免代价高昂的上下文切换,事务在正常处理期间从不阻塞,但它们可能必须在提交之前等待,以确保正确的序列化顺序。我们还实现了单版本锁定的主存优化版本。实验结果表明,虽然单版本锁工作时,事务短,竞争低,性能下降,在更苛刻的条件下。多版本方案具有更高的开销,但对热点和长时间运行的事务的存在不太敏感。
2011-12-31 cs.DB
Transactional Partitioning: A New Abstraction for Main-Memory Databases
OLTP(在线事务处理)应用程序的种类和数量的增长对OLTP系统提出了挑战,以满足现有硬件环境中的性能和成本需求。这些应用程序具有高度交互性(延迟敏感),并且需要更新一致性。他们以商用硬件为部署目标,并要求随着客户端和数据的增加而提高吞吐量的可扩展性。目前,这些应用程序所使用的OLTP系统在性能和各种应用程序的开发简易性方面提供了折衷。为了弥合性能和易于开发之间的差距,我们提出了一个直观的,高层次的编程模型,允许OLTP应用程序被建模为一个集群的应用程序逻辑单元。通过扩展事务,保证完整的ACID语义,提供建议的模型,我们保持应用程序开发的方便性。该模型允许应用程序开发人员对程序性能进行推理,并在没有OLTP系统设计人员(数据库设计人员)和/或DBA参与的情况下影响程序性能。因此,数据库设计人员可以自由地专注于程序的高效运行,以确保最佳的集群资源利用率。
2017-01-16 cs.DB
A Novel Gaussian Based Similarity Measure for Clustering Customer Transactions Using Transaction Sequence Vector
序列、时态和时间序列数据库中的事务聚类正受到数据库研究人员和软件行业的重视。重要的研究是朝着定义和验证新的相似性度量的适用性,序列,时间,时间序列数据库,可以准确,有效地发现用户之间的相似性在给定的数据库中的交易,以预测用户的行为。交易中存在的项目的分布在很大程度上有助于发现它们之间的相似程度。这形成了所提出的相似性度量的关键思想。该研究的主要目的是首先设计有效的相似性度量,该度量主要考虑了项目集中的项目在整个事务数据集上的分布,并且还考虑了事务中存在的项目的共性,这是Jaccard,Cosine,Euclidean相似性度量的主要缺点。然后,我们对最坏情况、平均情况和最佳情况进行分析。所设计的相似性度量是基于高斯的,并且保持了高斯函数的性质。所提出的相似性度量可以用于对用户事务进行聚类和分类以及预测用户行为。
2016-04-18 cs.DB
STAR: Scaling Transactions through Asymmetric Replication
在本文中,我们提出了STAR,一个新的分布式内存数据库与非对称复制。通过对某些副本采用单节点非分区架构,对其他副本采用分区架构,STAR能够有效地运行高度可分区的工作负载和涉及跨分区事务的工作负载。其核心思想是一种新的阶段切换算法,其中单分区和跨分区事务的执行是分开的。在分区阶段,单分区事务在多台机器上并行运行,以利用更多的并发性。在单主阶段,整个数据库的主控权被切换到单个指定的主节点,该节点可以执行这些事务,而无需使用昂贵的协调协议,如两阶段提交。因为主节点拥有数据库的完整副本,所以这种阶段切换的成本可以忽略不计。我们在两个流行的基准测试(YCSB和TPC-C)的实验表明,通过复制的高可用性可以与分布式内存数据库中的快速可串行化事务执行共存,STAR优于采用传统的并发控制和复制算法的系统高达一个数量级。
2019-07-21 cs.DB
Debugging Transactions and Tracking their Provenance with Reenactment
分析事务并理解它们的执行对于开发OLAP应用程序、跟踪生产系统中的错误原因以及审计数据库的操作都是非常重要的。然而,由于以下几个原因,调试事务是困难的:1)在事务执行之后,其输入不再可用于调试,2)事务的内部状态通常不可访问,以及3)事务的执行可能受到并发运行的事务的影响。我们提出了一个调试器的事务,使非侵入性的,事后调试的事务与出处跟踪,并支持假设的情况下(更改事务代码或数据)。使用我们开发的声明性重放技术reenactation,事务在其原始执行所看到的DB状态上重放,包括其与历史中并发执行的事务的所有交互。重要的是,我们的方法使用的时态数据库和审计日志功能,在许多DBMS中,不需要任何修改底层数据库系统,也不需要事务工作负载。
2017-07-31 cs.DB
GlassDB: An Efficient Verifiable Ledger Database System Through Transparency
可验证的分类账数据库保护数据历史不受恶意篡改。现有的系统,如区块链和证书透明性,都是基于透明日志的--这是一个简单的抽象,允许用户验证由不受信任的服务器维护的日志是仅附加的。它们公开了一个简单的键值接口。另一方面,从透明度日志建立一个实用的数据库仍然是一个挑战。在本文中,我们从三个维度探索了可验证分类账数据库的设计空间:抽象、威胁模型和性能。我们调查现有的系统,并确定其两个局限性,即缺乏交易支持和效率低下。然后,我们提出了GlassDB,一个分布式数据库,解决这些限制下的实际威胁模型。GlassDB继承了透明日志的可验证性,但支持事务并提供高性能。它扩展了一个类似于分类账的键值存储,并提供了一个数据结构来进行有效的证明,并为事务添加了一个并发控制机制。GlassDB在更新核心数据结构时将独立于并发事务的操作批处理。此外,我们通过扩展YCSB和TPC-C基准,设计了一个新的基准来评估可验证的分类账数据库。使用这个基准测试,我们将GlassDB与四个基线进行比较:三个可验证数据库的重新实现版本,以及由透明度日志支持的可验证地图。实验结果表明,GlassDB是一个高效的,事务性的,可验证的账本数据库。
2023-02-20 cs.DB
A Concurrency Control Method Based on Commitment Ordering in Mobile Databases
由于移动客户端的移动性,移动客户端与服务器的连接在不确定的时间和持续时间内断开,这是客户端-服务器模式下移动数据库并发控制面临的最大挑战。在移动数据库中应用悲观的并发控制的经典方法(如2 pl)会导致事务阻塞时间长,等待时间增加。由于移动数据库中事务中止率高,乐观方法不适用于移动数据库。在乐观并发控制方法的基础上,提出了OPCOT并发控制算法。减少移动客户端和服务器端之间的通信,降低事务的阻塞率和死锁,提高并发度是OPCOT算法采用乐观方法作为基础方法的最重要的动机。为了降低事务的流产率,在事务操作符的执行时间中为它们分配时间戳。除了检查调度器的提交排序属性外,在提交时间上分配的时间戳用于服务器。利用可串行化图证明了OPCOT算法调度器的可串行化性。仿真结果表明,与2 pl算法和乐观算法相比,OPCOT算法降低了事务的失败率和等待时间。
2011-12-09 cs.DB
Transaction Log Based Application Error Recovery and Point In-Time Query
数据库备份传统上被用作从硬件和用户错误中恢复的主要机制。高可用性解决方案维护数据的冗余副本,可用于从除用户或应用程序错误之外的大多数故障中恢复。数据库备份在从用户错误中恢复时既没有空间效率,也没有时间效率,用户错误通常发生在最近,只影响数据库的一小部分。此外,定期完整备份会影响用户工作负载并增加存储成本。在本文中,我们提出了一个计划,可用于用户和应用程序的错误恢复从当前状态开始,并使用事务日志倒回数据库的时间。虽然我们提供了过去某个时间点的整个数据库的一致视图,但实际的先前版本仅针对访问的数据生成。我们通过与Microsoft SQL Server中的数据库快照功能集成,使任意时间点的查询都可以访问数据。
2012-08-21 cs.DB
Enhancement of database access performance by improving data consistency in a non-relational database system (NoSQL)
Bahri University(巴里大学);Georgia State University(佐治亚州立大学);Jacksonville University(杰克逊维尔大学)
本研究提出一个专为MongoDB设计的四阶段服务器端模型,通过事务管理和锁定算法增强NoSQL数据库的一致性,YCSB基准测试显示性能显著提升。
2023-08-26 cs.DB
A Scalable Transaction Management Framework for Consistent Document-Oriented NoSQL Databases
Bahri University(巴里大学);Georgia State University(佐治亚州立大学);Delaware State University(特拉华州立大学)
本文提出了一种四阶段事务管理框架,通过优化锁策略和冲突检测,提高了文档导向NoSQL数据库在一致性与性能之间的平衡。
2026-02-02 cs.DB
An Improved Algorithm for Generating Database Transactions from Relational Algebra Specifications
Alloy是一种基于关系代数的轻量级建模形式。在之前与Fisler、Giannakopoulos、Krishnamurthi和Yoo的合作中,我们提出了一个工具Alchemy,该工具将Alloy规范编译为针对持久性数据库执行的实现。Alchemy的基础是一种将关系代数公式重写为数据库事务代码的算法。在本文中,我们报告了最近的进展,提高这种转换的鲁棒性和效率。
2010-03-28 cs.DB cs.LO cs.PL
Highly Available Queue-oriented Speculative Transaction Processing
近年来,确定性数据库系统越来越受到数据库研究界的关注。尽管它们当前的局限性,但是分布式确定性事务处理系统的最近提议展示了相对于使用传统事务处理技术的系统的显著改进(例如,两阶段锁定或具有两阶段提交的乐观并发控制)。但是,在确定性分布式事务处理系统中保证高可用性的问题受到研究界的关注较少,这方面也没有得到很好的分析和评价。本文提出了一个通用的框架来模拟确定性事务处理系统中的复制过程,并用它来研究三种情况。我们设计并实现了QR-Store,一个面向服务器的复制事务处理系统,并在YCSB的事务版本的基础上对它进行了广泛的评估。我们的原型实现QR-Store可以在200毫秒内实现每秒190万个复制事务的吞吐量,与非复制配置相比,复制开销为8%-25%。
2021-07-23 cs.DB
Optimization Approach for Detecting the Critical Data on a Database
通过有目的地将恶意事务(跟踪事务)引入到(数据库)图的随机选择的节点中,识别污染的和干净的段。然后计算对应于这些段的污染和清洁测量。这些措施被用来休息的关键数据库元素检测的问题作为一个优化问题的图。这种方法是普遍适用于一个大类的图(包括有向,加权,断开,循环),发生在几个数据库的上下文中。一个泛化的参数,提出了扩展的关键数据的问题,抽象的设置。
2008-04-27 cs.DB
Skeena: Efficient and Consistent Cross-Engine Transactions
数据库系统正变得越来越多引擎。特别地,主存储器数据库引擎可以与传统的以存储为中心的引擎在系统中共存以支持各种应用。希望允许应用程序使用跨引擎事务访问两个引擎中的数据。但是现有的系统要么只为单引擎访问设计,要么通过将跨引擎事务限制在特定的隔离级别和表操作来施加许多限制。其结果是在正确性、性能和可编程性方面的跨引擎支持不足。本文介绍了Skeena,一种跨引擎事务的整体方法。我们提出了一个轻量级的快照跟踪结构和原子提交协议,以有效地确保正确性和支持各种隔离级别。评估结果表明,Skeena保持了单引擎事务的高性能,并支持跨引擎事务,通过明智地将表放置在不同的引擎中,可以将吞吐量提高高达30倍。
2022-06-09 cs.DB
Boosting End-to-End Database Isolation Checking via Mini-Transactions (Extended Version)
本文提出 Mini-Transactions (MTs) 设计,通过紧凑短小的事务降低历史生成开销,并开发高效算法以线性或二次时间验证强隔离级别,在 MTC 工具中实现并验证了其在黑盒数据库隔离检查中的高效性与有效性。
2025-04-03 cs.DB cs.SE
WiSer: A Highly Available HTAP DBMS for IoT Applications
在经典的事务性分布式数据库管理系统(DBMS)中,写事务在最终提交之前总是与协调器同步。在强制可串行化的同时,这种模型长期以来一直因不能满足应用程序的可用性需求而受到批评。当进入物联网(IoT)时代时,这个问题变得更加严重,因为越来越多的应用程序需要混合事务和分析处理(HTAP)的能力,其中聚合约束需要作为事务的一部分来执行。当前的系统通过创建托管来解决这个问题,允许偶尔的约束过冲,这通过补偿应用程序逻辑来处理。WiSer DBMS通过将数据库提交分为两个步骤来实现与可用性的一致性。首先,一个PROMISE步骤,它对应于人类习惯的承诺,并且在不与协调器对话的情况下运行。第二,SERIALIZE步骤,通过共识过程,以可序列化的顺序固定事务的位置。我们通过一种新颖的数据表示来实现这种拆分,该数据表示将读集嵌入到事务增量中,并将序列化序列号嵌入到表行中。WiSer不进行分片(所有节点都可以运行修改整个数据库的事务),但强制执行聚合约束。读写冲突和聚合约束冲突都在序列化数据中延迟解决。WiSer还将节点加入和离开作为数据库表,从而简化了正确性和故障处理。我们提出了WiSer的设计以及实验表明这种方法有希望。
2019-08-06 cs.DB
A one-phase tree-based algorithm for mining high-utility itemsets from a transaction database
高效用项集挖掘从事务数据库中发现效用不低于用户定义的固定阈值的项集。项集的效用被定义为其项的效用之和。提出了几种挖掘高效用项集的算法。然而,没有最先进的算法在密集和稀疏数据集上表现一致。在本文中,我们提出了一种新的数据结构称为Utility-Tree,和基于树的算法称为UT-Miner,挖掘高效用项目集在一个阶段,而不产生任何候选人,并使用一个轻量级的建设方法,以减少成本创建投影数据库在搜索空间探索。该算法将事务信息与效用树的每一个节点存储在一起,并在递归调用过程中有效地计算事务信息。在几个真实的密集和稀疏数据集上的实验结果表明,UT-Miner是跨不同数据集的最佳高效算法之一。
2019-11-17 cs.DB cs.DS
Shirakami: A Hybrid Concurrency Control Protocol for Tsurugi Relational Database System
Keio University(庆应义塾大学);NAUTILUS Technologies, Inc(NAUTILUS科技有限公司);Cybozu Labs, Inc(Cybozu实验室有限公司)
Shirakami结合长读写事务的多版本视图可串行化和短事务的Silo,实现稳定性能,实验显示其比PostgreSQL快7.9倍,比Shirakami-OCC吞吐量高680倍。
2026-07-03 cs.DB
Adaptive Logging for Distributed In-memory Databases
一种新类型的日志,命令日志,正在被用来取代传统的数据日志(例如,ARIES日志)中的数据。命令日志只跟踪正在执行的事务,而不是记录元组是如何更新的,从而有效地减少了日志的大小并提高了性能。另一方面,命令日志记录增加了恢复的成本,因为在最后一个检查点之后的日志中的所有事务都必须在失败的情况下完全重做。在本文中,我们首先扩展的命令日志记录技术的分布式环境中,所有的节点可以并行执行恢复。然后,我们提出了一个自适应的日志记录方法相结合的数据记录和命令记录。数据日志记录与命令日志记录的百分比成为事务处理和恢复性能之间的优化,以适应不同的OLTP应用程序。我们的实验研究比较了我们提出的自适应日志记录,ARIES风格的数据记录和命令日志记录的H-Store顶部的性能。结果表明,自适应日志记录可以实现10倍的恢复提升,并且事务吞吐量与命令日志记录相当。
2015-04-27 cs.DB
A Simple and Fast Way to Handle Semantic Errors in Transactions
The University of Chicago(芝加哥大学);Columbia University(哥伦比亚大学)
本文提出基于不变量满足的中间件框架,通过协调长事务与依赖关系处理LLM生成事务的语义错误,支持人工审查与移除,保证数据库一致性,并以TPC-C评估性能。
2024-12-17 cs.AI cs.DB
The End of a Myth: Distributed Transactions Can Scale
普遍的看法是分布式事务不能扩展。但是,如果使用下一代网络和重新设计的分布式数据库可以使分布式事务具有可伸缩性,那会怎样呢?开发人员将不再需要担心共同分区方案来实现良好的性能。应用程序开发将变得更加容易,因为数据放置将不再决定应用程序的可伸缩性。硬件配置将得到简化,因为系统管理员在添加更多机器时可以预期线性横向扩展,而不是一些复杂的次线性功能,这是高度特定于应用程序的。在本文中,我们提出了我们的新的可扩展的数据库系统NAM-DB的设计,并显示非常常见的快照隔离保证分布式事务确实可以使用下一代的RDMA启用的网络技术,没有任何固有的瓶颈扩展。我们对TPC-C基准测试的实验表明,我们的系统线性扩展至56台机器上每秒超过650万个新订单(总计1450万个)分布式交易。
2016-11-21 cs.DB
Definition, Detection, and Recovery of Single-Page Failures, a Fourth Class of Database Failures
三种传统的故障类型是系统故障、介质故障和事务故障。然而,有时候,现代存储会出现与所有这些不同的故障。为了捕获和描述这种情况,单页故障被引入作为第四个故障类别。这个类别包含了尽管在较低的系统级别中进行了所有纠正尝试,但仍无法正确读取数据页和具有合理内容的所有失败。有效的恢复似乎需要一种称为页恢复索引的新数据结构。它的事务性维护可以通过写入与当今日志和恢复的有效实现相同数量的日志记录来完成。单页故障的检测和恢复可以足够快,以至于受影响的数据访问仅被延迟,而不需要中止事务。
2012-03-29 cs.DB
Fast Failure Recovery for Main-Memory DBMSs on Multicores
内存数据库管理系统(DBMS)在现代多核机器上处理大量联机事务时具有优异的性能。但是现有的持久性机制,即元组级和事务级日志和恢复机制,要么降低了事务处理的性能,要么减慢了故障恢复的过程。在本文中,我们表明,通过利用应用语义,它是可能实现快速故障恢复,而不引入任何昂贵的日志开销的并发事务的执行。我们提出了PACMAN,一个并行数据库恢复机制,是专门为轻量级,粗粒度的事务级日志。PACMAN利用静态和动态分析的组合来并行化日志恢复:在编译时,PACMAN通过仔细分析程序内和程序间的依赖关系来分解存储过程;在恢复时间,PACMAN利用运行时参数值的可用性来获得具有高度并行性的执行时间表。因此,恢复性能显著提高。我们在一个运行在40核机器上的完全成熟的主存DBMS中评估了PACMAN。与几种最先进的数据库恢复机制相比,PACMAN可以在不影响事务处理效率的情况下显著缩短恢复时间。
2017-03-22 cs.DB
DBLog: A Watermark Based Change-Data-Capture Framework
这是一种常见的模式,应用程序利用多个异构数据库,其中每个数据库都用于满足特定的需求,例如存储数据的规范形式或提供高级搜索功能。因此,对于应用程序,希望保持多个数据库同步。我们已经观察到一系列不同的模式,试图解决这个问题,如双写和分布式事务。然而,这些方法在可行性、鲁棒性和维护方面具有局限性。最近出现的一种替代方法是利用Change-Data-Capture(CDC),以便从数据库的事务日志中捕获更改的行,并最终以低延迟将它们传递到下游。为了解决数据同步问题,还需要复制数据库的完整状态,而事务日志通常不包含完整的更改历史。同时,有些用例需要事务日志事件的高可用性,以便数据库尽可能保持同步。为了解决上述挑战,我们开发了一种新的CDC数据库框架,即DBLog。DBLog利用了一种基于水印的方法,该方法允许我们将事务日志事件与我们直接从表中选择的行交错,以捕获完整状态。我们的解决方案允许日志事件继续进行,而不会在处理选择时停止。可以在任何时候对所有表、特定表或表的特定主键触发SQL。DBLog在块中执行选择并跟踪进度,允许它们暂停和恢复。水印方法不使用锁,对源代码的影响最小。DBLog目前被Netflix的数十个微服务用于生产。
2020-10-23 cs.DB
ForeSight: A Predictive-Scheduling Deterministic Database
针对确定性数据库事务依赖捕获不足导致的调度与性能问题,本文提出 ForeSight,利用轻量级冲突预测、多版本优化和矩阵两遍前向扫描实现冲突感知调度,显著提升竞争与倾斜负载下的可扩展性。
2025-08-30 cs.DB
On the Complexity of Checking Transactional Consistency
事务通过支持对共享数据的计算来简化并发编程,这些计算与其他并发计算隔离并且对故障具有弹性。现代数据库为事务提供了不同的一致性模型,对应于一致性和可用性之间的不同权衡。在这项工作中,我们调查的问题,检查是否一个给定的执行事务数据库坚持一些一致性模型。我们表明,一致性模型,如读提交,读原子,因果一致性是多项式时间检查,而前缀一致性和快照隔离一般是NP完全的。这些结果补充了以前的NP-完全性的结果有关的串行化。此外,在NP完全一致性模型的上下文中,我们设计了多项式时间的算法,假设输入执行中的某些参数,例如,会话的数量是固定的。我们评估这些算法的可扩展性的上下文中的几个生产数据库。
2019-08-13 cs.DB cs.PL
Extending the logical update view with transaction support
由于数据库更新视图在Prolog ISO标准中被标准化,因此所谓的逻辑更新视图在所有主动维护的Prolog系统中都可用。虽然这个更新视图提供了一个定义良好的更新语义,并允许有效地处理动态代码,但它无助于维护动态数据库的一致性。随着多线程的引入和Prolog在连续运行的服务器应用程序中的部署,动态数据库的一致性变得非常重要。在本文中,我们提出了对支持事务的逻辑更新视图的基于生成的实现的扩展。基于生成的事务已经根据SWI-Prolog RDF存储中的描述实现。本文的目的是激励交易,概述了实现和生成讨论的理想的语义和接口实现之前。
2013-01-31 cs.DB cs.PL
GaussDB-Global: A Geographically Distributed Database System
本文提出 GaussDB-Global,通过同步时钟的可切换事务管理及异步副本强一致读取,降低跨地域 OLTP 延迟,实验显示读取吞吐量最高提升 14 倍、TPC-C 提升 50%。
2025-01-09 cs.DB
On the Complexity of Checking Mixed Isolation Levels for SQL Transactions
本文研究了同时使用多种隔离级别的 SQL 事务执行正确性检查问题,证明了该问题的多个受限版本为 NP 完全,并提出了一种兼顾最坏情况指数时间、相关情况多项式时间及实际高效的验证算法。
2025-07-15 cs.DB cs.PL
DGCC:A New Dependency Graph based Concurrency Control Protocol for Multicore Database Systems
多核CPU和大存储器越来越成为现代计算机系统中的标准。然而,目前的数据库管理系统(DBMS)在利用这种系统的并行性方面通常是无效的。特别是,争用可能导致性能的急剧下降。本文提出了一种新的并发控制协议DGCC(DepartmentGraph based并发控制),它将并发控制与执行分离。DGCC在执行批处理事务之前为它们构建依赖关系图。使用这些图,在执行之前解决同一批事务中的争用。因此,事务的执行不需要处理争用,同时保持与序列化执行完全等效。这更好地利用了多核硬件,并实现了更高级别的并行性。为了促进DGCC,我们还提出了一种系统架构,该架构不具有某些集中控制组件,从而产生更好的可扩展性,并支持更有效的恢复机制。我们广泛的实验研究表明,DGCC实现高达四倍的吞吐量相比,国家的最先进的并发控制协议的高争用工作负载。
2015-03-12 cs.DB
A Critique of Snapshot Isolation
本文批判快照隔离缺乏可串行性,提出无锁的写快照隔离,通过防止读写冲突在保持性能的同时提供可串行性。
2024-05-28 cs.DB
State-of-the-Art on Query & Transaction Processing Acceleration
现代图形处理单元(GPU)提供的巨大处理能力和内存带宽使其成为数据密集型应用程序的平台。数据库社区将GPU视为数据处理的有效协处理器。在过去的几年里,有许多方法可以在数据库系统的不同级别上使用GPU。在本内部技术报告中,基于[1]和其他一些研究论文,我们确定了LIP6中GPU加速数据库管理系统的可能研究领域。我们描述了一些关键属性,GPU感知数据库架构的典型挑战,并确定主要的开放挑战。
2019-06-27 cs.DB cs.DC cs.PF
Pushing the Limit: Verified Performance-Optimal Causally-Consistent Database Transactions
本文提出Eiger-PORT+并发控制协议,实现强因果一致性TCCv,证明其性能最优读事务,驳斥开放猜想,并首次演绎验证复杂协议,性能优于现有方法。
2025-01-23 cs.DB cs.DC cs.FL
The Easiest Way of Turning your Relational Database into a Blockchain -- and the Cost of Doing So
区块链系统基本上由两个层次组成:网络层负责以完全相同的方式将有序的交易流分发到网络的所有节点,即使存在一定数量的恶意方(拜占庭容错)。在节点级别上,每个节点接收这个有序的事务流,并在某种事务处理系统中执行它,通常是为了改变某种状态。这种明确的两级分离以及截然不同的应用需求导致了网络级以所谓的区块链框架的形式实现。在提供所有“区块链功能”的同时,这些框架使节点级后端灵活,甚至可以根据应用程序的特定需求来实现。在下面的文章中,我们将介绍如何将一个高度通用的事务处理系统,即关系型DBMS集成到这样的区块链框架中。作为框架,我们使用流行的Tendermint Core,它现在是Pinterite/Cosmos生态系统的一部分,可以运行公共和许可网络,并将其与关系型DBMS作为后端结合起来。这导致了“关系区块链”,它能够在完全复制的关系数据库上运行确定性SQL。除了介绍集成及其缺陷外,我们还将仔细评估这些组合的性能影响,特别是DBMS上的区块链层引起的吞吐量和延迟开销。因此,我们给出了建议,如何在实践中有效地运行这样的系统组合。
2022-10-10 cs.DB
Modeling Concurrency Control as a Learnable Function
National University of Singapore(新加坡国立大学);Deakin University(迪肯大学);Renmin University of China 2(中国人民大学);Singapore University of Technology and Design(新加坡科技设计大学);Zhejiang University(浙江大学)
NeurCC是一种基于学习的并发控制算法,通过高效查找表实现高吞吐量,优于现有算法。
2026-03-10 cs.DB
Epoch-based Optimistic Concurrency Control in Geo-replicated Databases
University of Toronto(多伦多大学);Keio University(庆应义塾大学);Concordia University(康考迪亚大学)
本文提出 Minerva 系统,通过 epoch 基异步复制协议和冲突图算法,实现高并发可扩展的地理复制数据库,提升吞吐量和性能。
2026-03-16 cs.DB cs.DC
VerIso: Verifiable Isolation Guarantees for Database Transactions
本文提出在 Isabelle/HOL 中构建的验证框架 VerIso,可形式化验证数据库事务的隔离保证,并通过验证严格两阶段锁协议及发现 TAPIR 协议违反原子可见性的反例展示其有效性。
2025-03-08 cs.DB cs.DC cs.LO
Fast Updates on Read-Optimized Databases Using Multi-Core CPUs
读取优化的列式数据库使用差异更新来处理写入,方法是维护一个单独的写入优化的增量分区,该分区定期与读取优化和压缩的主分区合并。这种合并过程在更新密集型系统中引入了显著的开销和不可接受的停机时间,期望将事务和分析工作负载组合到一个系统中。在本文的第一部分中,我们报告了12个SAP Business Suite客户系统的数据分析。在后半部分,我们提出了一个优化的合并过程,减少了30倍的当前系统的合并开销。我们的线性时间合并算法利用现代多核CPU的底层高计算和带宽资源,具有架构感知优化和高效并行化。这使得压缩内存中的列存储能够处理企业应用程序所需的事务更新速率,同时保持读取优化数据库的属性以用于分析式查询。
2011-09-30 cs.DB
Dynamic Partial Order Reduction for Checking Correctness against Transaction Isolation Levels
本文提出基于动态偏序归约的无状态模型检查算法,用于验证事务应用在多种弱隔离级别下的正确性,证明算法完备、可靠且最优,并以多项式内存运行。
2023-04-14 cs.DB cs.PL
Future Robotics Database Management System along with Cloud TPS
Thiagarajar School of management(蒂亚加拉贾管理学院);Sastra University(萨斯特拉大学)
本文讨论机器人技术中的存储管理问题。在我们的建议中,我们打破了创造人形的主要问题之一。.数据库问题是机器人模式设计中的一个复杂问题,在我们的建议中,我们提出了一个新的概念,称为NOSQL数据库,用于有效的数据检索,使人形机器人将获得大量的思维能力,在搜索每个项目使用链指令。对于机器人中的查询事务,我们需要一个有效的一致性事务,因此通过使用最新的技术CloudTPS,它保证了完整的ACID属性,以便机器人可以使用多项事务进行查询,通过这个我们在数据检索中获得数据一致性。此外,我们还引入了map reduce概念,它可以将作业拆分到各个工作者,以便以并行的方式处理数据。
2011-12-09 cs.DB cs.RO
Transactions Make Debugging Easy
我们提出了TROD,一种新型的面向事务的框架,用于调试现代分布式Web应用程序和在线服务。我们的关键见解是,如果应用程序将所有状态存储在数据库中,并且仅以事务方式访问状态,则TROD可以使用轻量级的始终在线跟踪来跟踪应用程序状态更改和数据来源的历史,然后利用捕获的跟踪和事务日志忠实地重放甚至追溯任何过去事件的修改代码。我们演示了如何TROD可以简化生产应用程序中的编程和调试,列出几个研究挑战和方向,并鼓励数据库和系统社区彻底重新思考人们开发和调试应用程序的方式之间的协同作用。
2022-12-29 cs.DB cs.DC cs.SE
SQL Access Patterns for Optimistic Concurrency Control
针对多数关系数据库仅支持锁机制、难以直接使用 OCC 的问题,本文提出 RVV 准则与 SQL 访问模式,以在低冲突、不可靠通信场景下避免丢失更新。
2023-08-17 cs.DB
ETP-Mine: An Efficient Method for Mining Transitional Patterns
事务数据库包含一组事务以及项目及其相关的时间戳。过渡模式是描述事务数据库中频繁模式的动态行为的模式。为了发现过渡模式及其重要的里程碑,首先我们必须使用任何频繁模式生成算法提取所有频繁模式及其支持。这些频繁模式用于生成过渡模式。现有的算法(TP-Mine)生成频繁模式,其中一些不能用于生成过渡模式。在本文中,我们提出了一个修改现有的算法,修剪的候选项用于产生频繁模式。该方法大大减少了用于发现过渡模式的频繁模式的数量。通过大量的仿真实验对所提出的方法进行了验证。
2010-09-06 cs.DB
A framework to model real-time databases
实时的【形】数据库处理时间受限的数据和事务。这种数据库的设计需要引入新的概念来支持数据结构和数据库的动态行为。在本文中,我们给出了一个关于实时的【形】数据库的不同方面的概述,我们澄清他们的建模要求。然后,我们提出了一个实时的【形】数据库设计的框架,并描述其基本操作。一个案例研究证明了结构模型的有效性,并说明了SQL查询和Java代码生成的类的模型
2010-01-08 cs.DB