毕业论文
您现在的位置: 版本控制 >> 版本控制前景 >> 正文 >> 正文

sqlite336版本btree

来源:版本控制 时间:2022/5/9
白癜风诚信坐标企业 http://m.39.net/pf/a_7805810.html

引言:本节讲解sqlite的并发控制框架。

概述

按照之前起步阶段对sqlitebtree整体架构的分析,“页面管理模块”分为以下几个子模块:

?页面缓存管理。?页面备份,又分为以下两种实现:?journal文件。?WAL文件。?页面管理模块。

前面一节讲完了“页面缓存管理”的实现,按照自下往上的顺序,就应该到“页面备份”了。“页面备份”核心的工作是:在真正修改页面内容之前,将还未修改的页面内容备份,这样一旦系统在事务过程中宕机崩溃,就可以用这部分内容回滚还未落盘的事务修改,让系统回到一个正确的状态。

“页面备份”有两种实现方式,在早期使用的journal文件,这种方式性能不高;在3.7版本之后,sqlite引入了WAL文件来保存页面内容,这样做的效率更高。

本节就讲解这部分内容,在对这部分内容有一个总体的了解之后,继续讲解页面备份的总体流程。后面的章节再具体分析journal以及WAL的实现。

写事务的流程

(以下流程分析,按照sqlite

转载请注明:http://www.0431gb208.com/sjsbszl/225.html

  • 上一篇文章:
  • 下一篇文章: 没有了