辅助存储管理-组织数据

来源:互联网 发布:淘宝口碑网 编辑:程序博客网 时间:2024/05/17 06:23
  1. 定常记录(概念上称之为元组)
    最简单的记录由定常字段组成。
    由于需要更高效率的内存读写,所以通常会要求所有字段的起始地址是4或者8的倍数,未用的空间就浪费掉。
    记录通常以记录的首部(header)开始,首部是存储关于记录自身的信息的一个定常区域。
    可能需要在首部中存储这些信息:
    1. 一个指向该记录中存储数据的关系模式的指针。(关系模式提供的信息可以帮我们找到该记录的某一字段)
    2. 记录长度。(在不查看关系模式的情况下略过某些记录)
    3. 时间戳。(标识该记录最后一次被修改或被读的时间)
    4. 指向记录的字段的指针。(可用于替代模式信息)
      例:
CREATE TABLE MovieStar(    name CHAR(30) PRIMARY KEY,    address VARCHAR(255),    gender CHAR(1),    birthdate DATE);

其中DATE类型占10字节
所以记录格式如下图所示:
关系MovieStar的元组的记录格式

  1. 定常记录在磁盘块中的位置
    记录存储在磁盘块中,当我们要存取或修改记录时记录所在的整个块就被移进主存。
    一个典型的存储记录的块
    如图所示,除了记录外这个块还有一个首部,通常块首部存储以下信息:
    1. 与一个或多个其他块的链接,这些块构成一个块的网络。
    2. 关于这个块在这个网络中所扮演的角色的信息。
    3. 关于这个块的元组属于哪个关系的信息。
    4. 一个给出每一条记录在块内偏移量的“目录”。
    5. 指明块最后一次修改和存取时间(修改或存取时间)的时间戳。
0 0