本文章参考CSDN博主「阿福Chris」的原创文章,遵循CC 4.0 BY-SA版权协议。
原文链接:https://blog.csdn.net/chrisy521/article/details/127140972
总结:
数据库的框架:
SQL层:对查询语句进行处理——cache命中+分析与优化
事务层:1、日志与恢复 2、并发控制(锁+MVCC)
存储层:1、有BufferPool 2、数据结构B+ LSM-Tree
资料推荐
- MiniOB - https://github.com/oceanbase/miniob
- Sqlite - https://github.com/sqlite/sqlite
两本很好的书:《数据库系统概念》、《数据库系统实现》
数据库
1、在数据层做抽象工作
2、大型系统需要考虑:接口+实现
数据库系统概述
数据库系统各个部分的功能:数据库大概分为三个部分:SQL引擎、存储引擎和事务引擎。
3.1 SQL 层的执行逻辑如下:
当数据库接受 SQL 以后,它会首先经过 parser