首页> 外文会议>International conference on very large data bases >SQL Statement Logging for Making SQLite Truly Lite
【24h】

SQL Statement Logging for Making SQLite Truly Lite

机译:用于制作SQLite Truly Lite的SQL语句记录

获取原文

摘要

The lightweight eodebase of SQLite was helpful in making it become the de-facto standard database in most mobile devices, but. at the same time, forced it to take less-complicated transactional schemes, such as physical page logging, journaling, and force commit, which in turn cause excessive write amplification. Thus, the write IO cost in SQLite is not lightweight at all. In this paper, to make SQLite truly lite in terms of IO efficiency for the transactional support, we propose SQLite/SSL, a per-transaction SQL statement logging scheme: when a transaction commits, SQLite/SSL ensures its durability by storing only SQL statements of small size, thus writing less and performing faster at no compromise of transactional solidity. Our main contribution is to show that, based on the observation that mobile transactions tend to be short, and exhibit strong update locality, logical logging can. though long discarded, become an elegant and perfect fit for SQLite-based mobile applications. Further, we leverage the WAL journal mode in vanilla SQLite as a transaction-consistent checkpoint mechanism which is indispensable in any logical logging scheme. In addition, we show for the first time that byte-addressable NVM (non-volatile memory) in host-side can realize the full potential of logical logging because it allows to store fine-grained logs quickly. We have prototyped SQLite/SSL by augmenting vanilla SQLite with a transaction-consistent checkpoint mechanism and a redo-only recovery logic, and have evaluated its performance using a set of synthetic and real workloads. When a real NVM board is used as its log device, SQLite/SSL can outperform vanilla SQLite's WAL mode by up to 300x and also outperform the state-of-the-arts SQLite/PPL scheme by several folds in terms of IO time.
机译:SQLite的轻量级eodebase有助于使其成为大多数移动设备中的事实上的标准数据库。同时,迫使它采用不太复杂的事务方案,例如物理页面日志记录,日志记录和强制提交,这反过来会导致过多的写放大。因此,SQLite中的写入IO成本根本不是轻量级的。在本文中,为了使SQLite在事务处理支持的IO效率方面真正精简,我们提出了SQLite / SSL(一种每次事务处理的SQL语句记录方案):当事务提交时,SQLite / SSL通过仅存储SQL语句来确保其持久性体积小,因此写得更少,执行速度更快,而不会影响事务的可靠性。我们的主要贡献是表明,基于观察到的移动交易往往很短,并且显示出很强的更新本地性,逻辑日志记录可以做到。尽管已被长期抛弃,但它已成为基于SQLite的移动应用程序的理想之选。此外,我们利用香草SQLite中的WAL日志模式作为事务一致的检查点机制,这在任何逻辑日志记录方案中都是必不可少的。此外,我们首次展示了主机端可字节寻址的NVM(非易失性存储器)可以充分利用逻辑日志记录的潜力,因为它可以快速存储细粒度的日志。我们通过使用事务一致的检查点机制和仅重做的恢复逻辑来扩充原始SQLite,从而对SQLite / SSL进行了原型设计,并已使用一组综合和实际工作负载评估了其性能。当使用真正的NVM板作为其日志设备时,SQLite / SSL可以比普通SQLite的WAL模式高出300倍,并且在IO时间方面也可以比最新的SQLite / PPL方案高出好几倍。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号