首页> 外文OA文献 >Accessing multiversion data in database transactions
【2h】

Accessing multiversion data in database transactions

机译:在数据库事务中访问多版本数据

摘要

Many important database applications need to access previous versions of the data set, thus requiring that the data are stored in a multiversion database and indexed with a multiversion index, such as the multiversion B+-tree (MVBT) of Becker et al. The MVBT is optimal, so that any version of the database can be accessed as efficiently as with a single-version B+-tree that is used to index only the data items of that version, but it cannot be used in a full-fledged database system because it follows a single-update model, and the update cannot be rolled back. We have redesigned the MVBT index so that a single multi-action updating transaction can operate on the index structure concurrently with multiple concurrent read-only transactions. Data items created by the transaction become part of the same version, and the transaction can roll back. We call this structure the transactional MVBT (TMVBT). The TMVBT index remains optimal even in the presence of logical key deletions. Even though deletions in a multiversion index must not physically delete the history of the data items, queries and range scans can become more efficient, if the leaf pages of the index structure are merged to retain optimality. For the general transactional setting with multiple updating transactions, we propose a multiversion database structure called the concurrent MVBT (CMVBT), which stores the updates of active transactions in a separate main-memory-resident versioned B+-tree index. A system maintenance transaction is periodically run to apply the updates of committed transactions into the TMVBT index. We show how multiple updating transactions can operate on the CMVBT index concurrently, and our recovery algorithm is based on the standard ARIES recovery algorithm. We prove that the TMVBT index is asymptotically optimal, and show that the performance of the CMVBT index in general transaction processing is on par with the performance of the time-split B+-tree (TSB-tree) of Lomet and Salzberg. The TSB-tree does not merge leaf pages and is therefore not optimal if logical data-item deletions are allowed. Our experiments show that the CMVBT outperforms the TSB-tree with range queries in the presence of deletions.
机译:许多重要的数据库应用程序需要访问数据集的先前版本,因此需要将数据存储在多版本数据库中,并使用多版本索引进行索引,例如Becker等人的多版本B +树(MVBT)。 MVBT是最佳选择,因此可以像单版本B +树一样高效地访问任何版本的数据库,后者仅用于索引该版本的数据项,但不能在完整的数据库中使用系统,因为它遵循单一更新模型,并且无法回滚更新。我们已经重新设计了MVBT索引,以便单个多动作更新事务可以与多个并发只读事务同时在索引结构上运行。事务创建的数据项成为同一版本的一部分,并且事务可以回滚。我们将此结构称为事务性MVBT(TMVBT)。即使存在逻辑密钥删除,TMVBT索引仍保持最佳状态。即使多版本索引中的删除操作一定不能物理删除数据项的历史记录,但如果合并索引结构的叶子页以保持最佳状态,则查询和范围扫描也会变得更加高效。对于具有多个更新事务的常规事务设置,我们提出了一种称为并发MVBT(CMVBT)的多版本数据库结构,该结构将活动事务的更新存储在单独的主内存驻留版本B +树索引中。定期运行系统维护事务,以将已提交事务的更新应用到TMVBT索引中。我们展示了如何在CMVBT索引上同时执行多个更新事务,并且我们的恢复算法基于标准的ARIES恢复算法。我们证明TMVBT指数是渐近最优的,并且表明CMVBT指数在常规事务处理中的性能与Lomet和Salzberg的时间分割B +树(TSB-tree)的性能相当。 TSB树不会合并叶页,因此如果允许删除逻辑数据项,则不是最佳选择。我们的实验表明,在存在删除的情况下,CMVBT在范围查询方面优于TSB树。

著录项

  • 作者

    Haapasalo Tuukka;

  • 作者单位
  • 年度 2010
  • 总页数
  • 原文格式 PDF
  • 正文语种 en
  • 中图分类

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号