【24h】

Integrating Reliable Memory in Databases

机译:在数据库中集成可靠的内存

获取原文
获取原文并翻译 | 示例

摘要

Recent results in the Rio project at the University of Michigan show that it is possible to create an area of main memory that is as safe as disk from operating system crashes. This paper explores how to integrate the reliable memory provided by the Rio file cache into a database system. We propose three designs for integrating reliable memory into databases: non-persistent database buffer cache, persistent database buffer cache, and persistent database buffer cache with protection. Non-persistent buffer caches use an I/O interface to reliable memory and require the fewest modifications to existing databases. However, they waste memory capacity and bandwidth due to double buffering. Persistent buffer caches use a memory interface to reliable memory by mapping it into the database address space. This places reliable memory under complete database control and eliminates double buffering, but it may expose the buffer cache to database errors. Our third design reduces this exposure by write protecting the buffer pages. Extensive fault tests show that mapping reliable memory into the database address space does not significantly hurt reliability. This is because wild stores rarely touch dirty, committed pages written by previous transactions. As a result, we believe that databases should use a memory interface to reliable memory.
机译:密歇根大学Rio项目的最新结果表明,可以创建与磁盘崩溃一样安全的主内存区域。本文探讨了如何将Rio文件高速缓存提供的可靠内存集成到数据库系统中。我们提出了三种用于将可靠内存集成到数据库中的设计:非持久数据库缓冲区高速缓存,持久数据库缓冲区高速缓存和带保护的持久数据库缓冲区高速缓存。非持久缓冲区高速缓存使用I / O接口来获得可靠的内存,并且需要对现有数据库进行最少的修改。但是,由于双重缓冲,它们浪费了存储容量和带宽。持久缓冲区高速缓存通过将内存映射到数据库地址空间来使用内存接口来获得可靠的内存。这将可靠的内存置于完全的数据库控制之下,并消除了双重缓冲,但可能会使缓冲区高速缓存暴露于数据库错误。我们的第三个设计通过写保护缓冲区页面来减少这种情况。大量的故障测试表明,将可靠的内存映射到数据库地址空间不会严重损害可靠性。这是因为野生存储很少接触先前事务编写的脏的,已提交的页面。因此,我们认为数据库应使用内存接口来实现可靠的内存。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号