SQLite是一种轻量级的嵌入式数据库系统,被广泛应用于各种移动设备和桌面应用程序中。下面学习SQLite数据库的存储机制,并介绍其相对于其他数据库系统的优势。通过深入了解SQLite的存储机制,我们可以更好地理解它在实际应用中的表现和优势。
SQLite数据库的存储机制
文件存储结构:
SQLite数据库以单个文件的形式存储,这个文件包含了所有的表、索引、触发器等数据库对象。这种文件存储结构使得SQLite非常适合嵌入式设备和桌面应用程序,因为它不需要独立的服务器进程和额外的配置。
数据页:
SQLite将数据分成固定大小的数据页(通常为4KB(4096)),每个数据页中包含了多个数据行。这种数据页的存储方式使得SQLite能够高效地处理大规模数据集,同时还能够减少磁盘IO的次数,提高数据库性能。
B树索引:
B+树用于存储表,B树用于存储索引。SQLite使用B树索引来加速数据的检索。B树索引以平衡树的形式存储索引数据,可以快速定位到特定的数据行。SQLite支持多种类型的索引,包括普通索引、唯一索引和全文索引等。
SQLite 使用 B-Tree 存储索引,一个 B-Tree 对应一个索引;使用 B+Tree 存储表,一个 B+Tree 对应一个表。Tree
创建时就会为其分配一个根 Page(对应一个 Page Number),Page 标识了该 Tree,Tree 的根 Page 在 其生命周期内不会发生变更。
数据编码:
SQLite使用变长整数编码、浮点数编码和字符串编码等方式来存储数据。这种数据编码方式既节省了存储空间,又提高了数据访问的效率。
标签:SQLite,架构,函数,Tree,存储,索引,数据,Page From: https://www.cnblogs.com/suntroop/p/18433111