数据库由大量数据组成。 RDBMS 中的数据被分组在一个表中,每个表都有相关的记录。用户可以看到数据是以表格的形式存储的,但实际上,如此庞大的数据量是以文件的形式存储在物理内存中的。
文件——文件是记录在磁盘、磁表和光盘等二级存储器上的相关信息的命名集合。
什么是文件组织?
文件组织是指构成文件的各种记录之间的逻辑关系,特别是在识别和访问任何特定记录的方式方面。简单来说,按一定顺序存储文件称为文件组织。文件结构是指标签和数据块以及任何逻辑控制记录的格式。
文件组织的类型 –
已经引入了各种方法来组织文件。这些特定的方法在访问或选择的基础上各有优缺点。因此,程序员可以根据自己的要求决定最适合的文件组织方法。
一些类型的文件组织是:
- 顺序文件组织
- 堆文件组织
- 哈希文件组织
- B+ 树文件组织
- 集群文件组织
我们将在本文的后续部分讨论每个文件组织以及每种文件组织方法的差异和优缺点。
顺序文件组织 –
文件组织的最简单方法是顺序方法。在这种方法中,文件以顺序方式一个接一个地存储。有两种方法可以实现这个方法:
- 堆文件方法——这种方法非常简单,我们按顺序存储记录,即按照它们插入表的顺序一个接一个地存储。
插入新记录 –
让 R1、R3 等直到 R5 和 R4 成为序列中的四个记录。在这里,记录只不过是任何表中的一行。假设必须在序列中插入新记录 R2,然后将其简单地放置在文件的末尾。 - 排序文件方法 –在此方法中,顾名思义,每当必须插入新记录时,它总是以排序(升序或降序)方式插入。记录的排序可以基于任何主键或任何其他键。
插入新记录 –
让我们假设有四个记录 R1、R3 等直到 R7 和 R8 的预先存在的排序序列。假设必须在序列中插入一条新记录 R2,然后将其插入到文件的末尾,然后对序列进行排序。
顺序文件组织的优缺点 –
优点 –
- 快速有效的海量数据方法。
- 简单的设计。
- 文件可以很容易地存储在磁带中,即更便宜的存储机制。
缺点 –
- 浪费时间,因为我们不能跳到所需的特定记录上,但我们必须按顺序移动,这会占用我们的时间。
- 排序文件方法效率低下,因为它需要时间和空间来排序记录。
堆文件组织 –
堆文件组织与数据块一起工作。在这种方法中,记录被插入到文件的末尾,插入到数据块中。此方法不需要排序或排序。如果一个数据块已满,则新记录存储在另一个块中,这里另一个数据块不必是下一个数据块,但可以是内存中的任何块。 DBMS 负责存储和管理新记录。
插入新记录 –
假设我们在堆 R1、R5、R6、R4 和 R3 中有四个记录,并且假设必须在堆中插入一条新记录 R2,那么由于最后一个数据块,即数据块 3 已满,它将被插入到任何一个DBMS 选择的数据块,比如说数据块 1。
如果我们要搜索、删除或更新堆文件组织中的数据,我们将从文件的开头遍历数据,直到获得请求的记录。因此,如果数据库非常庞大,搜索、删除或更新记录将花费大量时间。
堆文件组织的优缺点 –
优点 –
- 获取和检索记录比顺序记录更快,但仅适用于小型数据库。
- 当需要一次将大量数据加载到数据库中时,这种文件组织方法最适合。
缺点 –
- 未使用的内存块问题。
- 对于较大的数据库效率低下。
阅读下一组:(DBMS 文件组织集 2)| DBMS 中的散列