Queues Are Databases
面向消息的中间件(Message-Oriented-Middleware,缩写为MMS)已经成为一个小产业。作为对纯客户机-服务器事务处理的一种改进,IBM提供了排队事务处理。这一注释提出了四点:嵌入式事务处理不如直接事务处理通用。嵌入式系统建立在直接系统之上。你不能在排队系统上建立一个直接系统。很难在排队系统上构建直接的、会话式的或分布式的事务。数据库是具有有趣的并发控制的有趣的数据库。最好将这些机制构建到标准数据库系统中,以便其他应用程序可以使用这些有趣的功能。队列系统需要DBMS功能。企业需要安全、配置、性能监视、恢复和重组实用程序。数据库系统已经具有这些特性。一个全功能的数据库系统复制了这些数据库功能。队列管理器是简单的TP监视器,管理由队列驱动的服务器池。随着数据库系统向TP-lite系统的发展,它们包含了许多服务器池功能。
2007-01-25 cs.DB
Compacting Transactional Data in Hybrid OLTP & OLAP Databases
不断增长的主存容量促进了将整个数据库保存在主存中的数据库管理系统。这些内存系统带来的巨大性能改进使得在线事务处理(OLTP)和在线分析处理(OLAP)这两个领域的重新结合成为可能:一类新兴的混合OLTP和OLAP数据库系统允许直接对事务数据进行分析查询。通过为OLAP提供事务数据的任意当前快照,这些系统实现了实时商业智能。尽管单个商用服务器中的内存大小为几TB,但RAM仍然是一种宝贵的资源:由于空闲内存可以用于查询处理中的中间结果,因此内存量在很大程度上决定了查询性能。因此,我们建议压缩内存驻留数据库。压缩包括两个任务:首先,将可变的工作集与不可变的“冻结”数据分离。其次,压缩不可变数据并优化它,以实现高效、内存消耗友好的快照。我们的方法重新组织和压缩事务数据在线,但几乎没有影响关键任务的OLTP吞吐量。这是通过减轻OLTP线程的所有额外处理负担并异步执行这些任务来实现的。
2012-08-01 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
Greenplum: A Hybrid Database for Transactional and Analytical Workloads
企业数据仓库解决方案支持实时在线事务处理(OLTP)查询以及长时间运行的在线分析处理(OLAP)工作负载的需求正在增长。Greenplum数据库传统上被称为OLAP数据仓库系统,处理OLTP工作负载的能力有限。在本文中,我们将Greenplum扩展为一个混合系统,以同时为OLTP和OLAP工作负载提供服务。我们在这里所面临的挑战是在保持ACID属性的同时以最小的性能开销实现这一目标。在这项工作中,我们确定了工程和性能瓶颈,如表现不佳的限制性锁定和两阶段提交协议。接下来,我们解决事务查询和分析查询之间的资源争用问题。我们提出了一个全局死锁检测器,以增加查询处理的并发性。当保证更新数据的事务只驻留在一个段上时,我们引入了单阶段提交来加速查询处理。我们的资源组模型引入了将OLAP和OLTP工作负载分离到更合适的查询处理模式的功能。TPC-B和CH-benCHmark基准测试表明,我们的方法在不牺牲OLAP性能的情况下提高OLTP性能的有效性。
2021-05-14 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
Polynesia: Enabling Effective Hybrid Transactional/Analytical Databases with Specialized Hardware/Software Co-Design
数据量呈指数级增长,加上对实时分析的需求不断增加(即,使用最新的数据),已经导致了同时支持事务和数据分析的数据库系统的出现。这些混合事务和分析处理(HTAP)数据库系统可以支持实时数据分析,而无需在单独的单一用途数据库之间进行同步的高成本。不幸的是,对于执行高数据更新率的许多应用,与仅执行事务或仅隔离地执行分析相比,最先进的HTAP系统导致事务(高达74.6%)和/或分析(高达49.8%)吞吐量的显著下降,这是由于(1)CPU和存储器之间的数据移动,(2)数据更新传播,以及(3)一致性成本。我们提出波利尼西亚,在内存HTAP数据库的硬件-软件协同设计的系统。波利尼西亚(1)将HTAP系统划分为事务处理岛和分析处理岛,(2)实现自定义算法和硬件以降低更新传播和一致性的成本,以及(3)利用分析岛的内存处理来减轻数据移动。我们的评估表明,波利尼西亚优于三个最先进的HTAP系统,平均交易/分析吞吐量提高了1.70倍/3.74倍,并比之前的最低能耗系统降低了48%的能耗。
2021-03-01 cs.AR 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
Enabling High-Performance and Energy-Efficient Hybrid Transactional/Analytical Databases with Hardware/Software Cooperation
数据量的增长,加上对实时分析(使用最新数据)的需求不断增加,导致了同时支持事务和数据分析的数据库系统的出现。这些混合事务和分析处理(HTAP)数据库系统可以支持实时数据分析,而无需在单独的单一用途数据库之间进行同步的高成本。不幸的是,对于执行高速率数据更新的许多应用,最先进的HTAP系统在事务处理中招致显著的损失。(高达74.6%)和/或分析(高达49.8%)的吞吐量相比,仅执行事务或仅分析查询隔离,由于(1)数据移动之间的CPU和内存,(2)从事务性工作负载到分析性工作负载的数据更新传播,以及(3)在整个系统中维护一致的数据视图的成本。我们提出波利尼西亚,一个硬件-软件协同设计的系统,在内存中的HTAP数据库,避免了传统的HTAP系统的大吞吐量损失。波利尼西亚(1)将HTAP系统划分为事务处理岛和分析处理岛,(2)实现新的定制硬件,解锁软件优化,以降低更新传播和一致性的成本,(3)利用分析岛的内存处理来减轻数据移动开销。我们的评估表明,波利尼西亚优于三个最先进的HTAP系统,平均交易/分析吞吐量提高了1.7倍/3.7倍,并比之前的最低能耗HTAP系统降低了48%的能耗。
2022-04-24 cs.AR cs.DB
Mainlining Databases: Supporting Fast Transactional Workloads on Universal Columnar Data File Formats
现代数据处理工具的激增产生了开放源列式数据格式。这些格式的优点是,它们可以帮助组织避免重复地将数据转换为每个应用程序的新格式。但是,这些格式是只读的,组织必须使用一个重量级的转换过程来从联机事务处理(OLTP)系统加载数据。我们的目标是减少甚至消除这个过程,通过开发一个存储架构的内存数据库管理系统(DBMS),是知道其数据的最终用途,并发出列存储块在一个通用的开源格式。我们对常见的分析数据格式引入了松弛,以有效地更新记录,并依靠轻量级的转换过程将块转换为冷时的读取优化布局。我们还描述了如何以最小的序列化开销从第三方分析工具访问数据。为了评估我们的工作,我们实现了基于Apache Arrow格式的存储引擎,并将其集成到DB-X DBMS中。我们的实验表明,我们的方法实现了与专用OLTP DBMS相当的性能,同时使数据导出到外部数据科学和机器学习工具的速度比现有方法快几个数量级。
2020-04-29 cs.DB
Chiller: Contention-centric Transaction Execution and Data Partitioning for Modern Networks
在基于TCP/IP的高开销网络上的分布式事务通常被认为是非常昂贵的,因此不惜一切代价避免。为此,几乎所有现有分区方案的主要目标都是最小化跨分区事务的数量。然而,随着新一代快速的支持RDMA的网络,这种假设不再有效。事实上,最近的工作表明,即使大多数事务是跨分区的,分布式数据库也可以扩展。在本文中,我们首先提出的情况下,真正的可扩展的事务处理在现代的RDMA启用数据库的瓶颈是数据争用,并优化数据争用导致不同的分区布局比优化的分布式事务的数量。然后,我们提出了冷却器,一种新的方法来进行数据分区和事务执行,其目的是尽量减少本地和分布式事务的数据争用。最后,我们评估冷却器使用各种工作负载,并表明我们的分区和执行策略优于传统的分区技术,试图避免分布式事务,高达2倍。
2020-04-16 cs.DB
A Data Warehouse Design for a Typical University Information System
目前,大型企业依靠数据库系统来管理他们的数据和信息。这些数据库对进行日常业务交易很有用。然而,市场上的激烈竞争导致了数据采掘的概念,在数据挖掘中,分析数据以得出有效的商业策略并发现更好的开展业务的方法。为了进行数据采掘,必须将常规数据库转换为信息数据库,也称为数据仓库。本文以一个典型的高校信息系统为例,提出了一种数据仓库的设计模型。它基于将操作数据库转换为信息仓库,可供决策者进行数据分析,预测和预测。该模型基于数据迁移的四个阶段:数据提取、数据清洗、数据转换、数据索引和加载。整个系统在MS Access 2010下实施,旨在作为数据采掘操作的数据储存库。
2012-12-10 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
Demonstrating CAT: Synthesizing Data-Aware Conversational Agents for Transactional Databases
Technical University of Darmstadt(达姆施塔特工业大学);LMU Munich(慕尼黑大学)
用于OLTP的数据库通常是酒店客房或电影票预订应用程序等应用程序的主干。然而,开发会话代理(即,类似聊天机器人的界面)以允许终端用户使用自然语言与应用交互,这需要大量的训练数据和NLP专业知识。这激发了CAT,它可以用来轻松地为事务数据库创建会话代理。其主要思想是,对于给定的OLTP数据库,CAT使用弱监督来合成所需的训练数据,以训练最先进的会话代理,允许用户与OLTP数据库交互。此外,CAT还提供了生成的代理与数据库的开箱即用集成。作为现有的会话代理的主要区别,CAT合成的代理是数据感知的。这意味着代理根据数据库中的当前数据分布决定应该向用户请求哪些信息,与非数据感知代理相比,这通常会导致明显更有效的对话。我们将CAT的代码作为开源发布。
2022-03-26 cs.CL 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
A Model-Based Frequency Constraint for Mining Associations from Transaction Data
频繁项集挖掘是一种在数据库中发现关联项的常用方法。对于这种方法,支持度,形成关联的项目的共现频率,被用作关联的重要性的主要指标。使用单个用户指定的支持阈值来决定是否应进一步调查关联。支持有一些已知的问题,罕见的项目,有利于较短的项目集,有时产生误导性的协会。在本文中,我们开发了一种新的基于模型的频率约束作为一个单一的,用户指定的最小支持的替代。该约束通过应用简单的随机混合模型(NB模型)来利用生成事务数据的过程的知识,该模型允许事务数据的通常高度偏斜的项目频率分布。用户指定的精度阈值与模型一起使用,以找到项目集组的局部频率阈值。在此基础上,提出了NB-频繁项集的概念,并提出了一种挖掘算法来发现数据库中所有的NB-频繁项集。在公开的交易数据库的实验中,我们表明,新的约束提供了一个单一的最小支持阈值的改进和精度阈值是更强大的,更容易设置和解释的用户。
2008-03-21 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
Evaluating NoSQL Databases for OLAP Workloads: A Benchmarking Study of MongoDB, Redis, Kudu and ArangoDB
本研究通过标准化数据处理管道,基准测试了MongoDB、Redis、Kudu和ArangoDB四种NoSQL数据库在OLAP工作负载下的性能,为选择最优数据管道提供了实验依据。
2024-05-28 cs.DB
HTAP Databases: A Survey
本文全面综述了HTAP数据库,按四种存储架构对最先进的系统进行分类,回顾了混合工作负载处理等关键技术,并探讨了现有基准测试及未来的研究挑战与机遇。
2024-04-24 cs.DB
When Private Blockchain Meets Deterministic Database
私有区块链作为一种复制的交易系统,与分布式数据库有许多共同点。然而,私有区块链和确定性数据库之间的亲密关系从未被研究过。从本质上讲,私有区块链和确定性数据库都通过确定性来确保副本的一致性。在本文中,我们提出了一个全面的分析,以揭示私有区块链和确定性数据库之间的联系。虽然私有区块链最近开始追求确定性交易执行,但确定性数据库已经研究确定性并发控制协议近十年了。这促使我们提出Harmony,一种为区块链设计的新型确定性并发控制协议。我们使用Harmony构建了一个新的关系型区块链,即HarmonyBC,它具有低中止率,热点弹性和块间并行性,所有这些对于面向磁盘的区块链都特别重要。在Smallbank、YCSB和TPC-C上的实证结果表明,HarmonyBC的吞吐量比最先进的私有区块链高出2.0倍至3.5倍。
2022-11-28 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
A Prudent-Precedence Concurrency Control Protocol for High Data Contention Database Enviornments
在本文中,我们提出了一个并发控制协议,称为谨慎优先并发控制(PPCC)协议,高数据争用数据库环境。PPCC在允许更多可串行化的调度方面比两阶段锁定更加谨慎。它在冲突事务中维护受限制的优先级,并根据执行中建立的序列化顺序提交事务。一个详细的仿真模型已经构建和广泛的实验已经进行了评估所提出的方法的性能。实验结果表明,该算法在所有系统负载范围内的性能都优于两阶段锁和乐观并发控制。
2016-11-17 cs.DB
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