zoukankan      html  css  js  c++  java
  • SQLite基础概念与使用~

    SQLite体系结构 参考

    前端

    • 组成:API->分词器->解析器->代码生成器->虚拟机  (虚拟数据引擎,VDBE)
      
    • 编译器:编译器由分词器、解析器、代码生成器组成。编译器将SQL语句转化为SQLite专用的字节码并由虚拟机执行。
    • 虚拟机:VDBE的字节码由100多个操作码组成,所有操作码均用来完成具体的数据库操作,例如:打开一个表的游标、做记录、提取一行等。

    后端

    • 组成:B-Tree->Pager->OS接口
    • B-Tree:B-Tree不是二叉树,每个B-Tree节点都可以有多于2个的子节点。B-Tree的职责是排序。一个SQLite数据库使用B-树的形式存储在磁盘上。数据库中的每个表和索引使用一棵单独的B-树,所有的B-树存放在同一个磁盘文件中。
    • pager:SQLite中的一种数据结构,B-树模块以固定大小的数据块形式从磁盘上请求信息,Pager负责读、写和缓存这些数据块。Pager还提供回滚和原子提交的抽象,并且管理数据文件的锁定。B-树驱动模块从Pager中请求特定的页,当它想修改页面、想提交或回滚当前修改时,它也会通知Pager。Pager处理所有麻烦的细节,以确保请求能够快速、安全而有效地被处理。

    数据库文件

    其他参考

  • 相关阅读:
    Leetcode463. Island Perimeter
    C++ 编写的解码器小程序 map
    LeetCode706. Design HashMap
    LeetCode705. Design HashSet
    LeetCode804. Unique Morse Code Words
    c++后台开发 准备材料
    Scott Young-《如何高效学习》
    跳表和散列
    时间复杂度 log n
    第35题:LeetCode138. Copy List with Random Pointer
  • 原文地址:https://www.cnblogs.com/jiahu-Blog/p/7413763.html
Copyright © 2011-2022 走看看