DBMS - 文件结构



相关数据和信息以文件格式集体存储。文件是以二进制格式存储的一系列记录。磁盘驱动器被格式化为几个可以存储记录的块。文件记录被映射到这些磁盘块上。

文件组织

文件组织定义了文件记录如何映射到磁盘块。我们有四种文件组织来组织文件记录:

File Organization

堆文件组织

当使用堆文件组织创建文件时,操作系统会为该文件分配内存区域,而无需任何进一步的记账细节。文件记录可以放置在该内存区域的任何位置。软件负责管理记录。堆文件本身不支持任何排序、排序或索引。

顺序文件组织

每个文件记录包含一个数据字段(属性)来唯一标识该记录。在顺序文件组织中,记录根据唯一的键字段或搜索键按某种顺序放置在文件中。实际上,不可能以物理形式顺序存储所有记录。

哈希文件组织

哈希文件组织对记录的某些字段使用哈希函数计算。哈希函数的输出决定了记录要放置到的磁盘块的位置。

聚集文件组织

聚集文件组织不适用于大型数据库。在这种机制中,来自一个或多个关系的相关记录保存在同一个磁盘块中,即记录的排序不是基于主键或搜索键。

文件操作

数据库文件上的操作可以大致分为两类:

  • 更新操作

  • 检索操作

更新操作通过插入、删除或更新来更改数据值。另一方面,检索操作不更改数据,而是在可选的条件过滤后检索它们。在这两种类型的操作中,选择都起着重要作用。除了创建和删除文件之外,还可以在文件上执行多种操作。

  • 打开 - 文件可以以两种模式之一打开,读取模式写入模式。在读取模式下,操作系统不允许任何人更改数据。换句话说,数据是只读的。以读取模式打开的文件可以在多个实体之间共享。写入模式允许数据修改。以写入模式打开的文件可以读取,但不能共享。

  • 定位 - 每个文件都有一个文件指针,它指示要读取或写入数据的当前位置。可以相应地调整此指针。使用查找(查找)操作,可以将其向前或向后移动。

  • 读取 - 默认情况下,当文件以读取模式打开时,文件指针指向文件开头。用户可以选择在打开文件时告诉操作系统在何处定位文件指针。读取文件指针后面的下一个数据。

  • 写入 - 用户可以选择以写入模式打开文件,这使他们能够编辑其内容。它可以是删除、插入或修改。可以在打开时定位文件指针,如果操作系统允许这样做,也可以动态更改。

  • 关闭 - 从操作系统的角度来看,这是最重要的操作。当生成关闭文件的请求时,操作系统

    • 删除所有锁(如果处于共享模式),
    • 将数据(如果已更改)保存到辅助存储介质,以及
    • 释放与文件关联的所有缓冲区和文件句柄。

文件内部数据的组织在这里起着主要作用。根据记录是顺序排列还是聚集排列,定位文件指针到文件内所需记录的过程会有所不同。

广告