📜  将文件记录映射到块的策略

📅  最后修改于: 2021-09-09 11:40:43             🧑  作者: Mango

数据库是大量相关数据的集合。在 RDBMS(关系数据库管理系统)的情况下,数据以关系或表格的形式存储。作为一个普通用户,我们看到的数据是表中存储的,但实际上这个庞大的数据量是以文件的形式存储在物理内存中的。

文件是以二进制格式存储在磁盘等辅助存储器上的相关记录的集合。将文件记录映射到磁盘块有多种策略:

1. 跨越映射:
在跨区映射中,文件的记录存储在块内,即使它只能部分存储,因此,记录跨越两个块,命名为Spanned Mapping

  • 优点:不浪费内存(无内部碎片)。
  • 缺点:已经跨越的记录,访问时需要访问两个块,并且由于磁盘上的块数太大,一个块的搜索时间大于一个块内记录的搜索时间。

2. 非跨区映射:
在非跨区映射中,与跨区策略不同,文件的记录只有在可以完全存储在块中时才会存储在块中。

  • 优点:记录访问时间少。这是因为在跨区映射中,为了访问跨区记录,我们需要访问两个块,并且我们知道块的访问时间比记录的访问时间长得多。但是在非跨度映射中,对于单个记录,我们每次只需要访问一个块,因此速度更快。
  • 缺点:内存浪费较多(内部碎片化)。