0
点赞
收藏
分享

微信扫一扫

(P5)数据库系统下-DBMS数据存储与查询实现的基本思想


文章目录

  • ​​1.数据存储的映射关系​​
  • ​​2.数据存储与查询实现的基本框架​​

1.数据存储的映射关系

将DB中中表中的数据存储在磁盘上,我们则需要知道其块号,而块号则通过盘号,磁道,扇区基本信息得到;
DB Table的记录record到磁盘块的映射(Table Index)

  • 红色线:每一个表都有一个索引,索引中每条记录都有一个块号,通过这个块号可以知道表中这条记录存储在磁盘的哪个块上;
    OS系统的文件分配表OS_FAT
  • OS有一个文件分配表,有文件和磁盘块之间的关系,OS通过文件分配表(文件目录)来管理磁盘上的文件和磁盘块上的映射;

DBMS可以利用OS_FAT提前占用磁盘块,DBMS通过自己的索引来管理这些磁盘块存储那些表,哪些记录;

  • 对磁盘块的访问需要装载到内存中
  • 磁盘就是DB的各种表,内存就是DB的缓冲区,内存由内存页来管理,一个内存页相当于一个磁盘块的大小,内存页存储哪个磁盘块,是记录在内存页与磁盘块之间的映射表中,当需要读写的磁盘块不在内存缓冲区时,则内存缓冲区管理则需要到DB的索引中找到对应的磁盘块将其加载到内存中

如何找到磁盘块装载到缓冲区的内存页的记录呢?

  • 在内存中有记录和记录所在内存位置的映射,所以CPU可以这个找到DB这条记录在内存中的位置。
  • 通过Table Index找到其在磁盘中的位置,将这个位置状态到磁盘中,那么CPU就可以进行处理了

通过文件管理和索引管理,我们可以知道我们要访问哪一个磁盘块,磁盘块在内存中的哪一个内存页中,哪一个内存页的地址是DB中的哪条记录,在此基础上则可以实现各种查询操作算法。

(P5)数据库系统下-DBMS数据存储与查询实现的基本思想_数据存储

2.数据存储与查询实现的基本框架

DBMS几大功能

  • 存储管理器控制磁盘读写,控制磁盘读写需要知道磁盘:盘面号,柱面号,扇区,磁盘块信息;
    并为上层缓冲区管理器提供一个读写磁盘块的函数;
  • 缓冲区管理器通过读页、写页、读块、写块的函数,来完成内存和外存的信息交换;
  • 索引/文件和记录管理器,包括:数据格式信息,数据控制信息(存储在DB中字典中),真正的数据(格式和数据是分离存储的)
  • DBMS的基本功能就是三个引擎和三个编译器将用户表达的操作需求转换成一系列操作命令及其次序组合,然后DML调用基本操作算法,这些算法利用索引/文件和记录管理器、缓冲区管理器、存储管理器来管理分离的数据和格式,通过映射和内存外存交换实现数据库命令以Table:Record:Field进行操作,而真正执行的时候是以读写磁盘块来处理

(P5)数据库系统下-DBMS数据存储与查询实现的基本思想_缓冲区管理_02


举报

相关推荐

0 条评论