cmu15445 25fall lec3个人笔记

lec3 database storage

从应用层面转到构建层面

query-planning->operator execution->access method->buffer pool manager->disk manager

agenda

file storage,page layout,tuple layout
行(row)为主存储

顺序io(sequencial)耗时少于随机io(random access)
所以在DBMS里,尽可能最大化顺序访问的比例
所以写入时会将数据(dirty pages)先写入双写缓存区,集中很多页(extent)

system design goal

创建一个能管理超过内存大小的数据库的DBMS

disk oriented DBMS

DISK-database file(directory and pages)
Memory-Buffer pool

q1 DBMS如何表示数据库,即磁盘上的文件(today)
q2 DBMS如何管理内存以及来回移动磁盘数据

file storage

对操作系统而言,数据库也不过是普通文件

storage manager
负责维护数据库文件,可自行决定读写(绕过os),以页组织文件,能够追踪写入页的数据以及可用空间
通常不会为一页维护很多物理副本

pages

1 hardware pages(4kb)
硬件页是存储设备能保证的最小原子操写入
2 os pages
3 databasee page

对于读密集型负载的DB,会有更大的页大小
对于写密集型复杂的DB,会有更小的页大小