第3节 数据库存储系统(Part 1)
1. 存储
DBMS 设计架构是基于数据存储在持久化磁盘上(non-volatile disk)。
非持久化设备
- 非持久化是指机器下电后数据会丢失
- 非持久化设备支持快速的随机访问
持久化设备
-
持久化是指设备不需要持续供电,就能数据不丢失
-
持久化设备支持 block/page 访问
-
持久化设备顺序访问(顺序IO)相对随机访问(随机IO)性能更好
-
SSD(solid-state storage)和HDD(spinning hard drives)是两种持久化存储设备,本文不对齐做太大的区分
DBMS架构是基于数据存储在持久化设备上,由于数据库系统无法直接操作磁盘数据,DBMS系统需要解决数据在持久化设备和非持久化设备之间的移动问题。
基于磁盘的数据库管理系统概览
由于DBMS假设数据存储在磁盘上,因此DBMS的任务是从磁盘到内存之间来回移动数据,因为系统不能直接对磁盘进行操作。一个数据库系统的目标是让上层应用感觉所有的操作都在内存上,即使内存远小于磁盘空间。由于磁盘读写会带来很大的开销,DBMS需要在等待磁盘的数据时也能够处理其他查询请求。
数据库系统中有缓冲池buffer pool,缓冲池命中率越高说明磁盘的读请求