文件是性質相同的記錄的集合。
記錄是文件中存取的基本單位,數據項是文件可使用的最小單位。
操作系統研究的文件是一維的無結構連續字符序列,數據庫中研究的文件是帶有結構的記錄集合。
文件在外存上的4種基本組織方式:順序、索引、散列、鏈(多關鍵字)。
磁帶和磁盤分別是順序存取設備和直接存取設備。
<h1>順序文件</h1>
順序文件按記錄進入文件的順序存儲。
順序有序文件和順序無序文件。
順序文件多用在磁帶上。
<h1>索引文件</h1>
索引表指明邏輯記錄和物理記錄的對應關系,索引表和主文件一起構成索引文件,在存儲器上分為索引區和數據區。
主文件分為索引順序文件和索引非順序文件,索引非順序文件適合隨機存取,索引順序文件適合于順序存取。
索引表分為稠密索引和稀疏索引。
還可以對索引表建立索引,稱為查找表。查找表可以有多級。
這種多級順序表索引是一種靜態索引。而動態索引采用二叉排序樹、AVL樹、B-樹等樹表結構,插入和刪除方便。
<h1>索引順序文件</h1>
兩種常用的索引順序文件:ISAM文件和VASM文件。
ISAM:索引順序存取方法,為磁盤存取設計,采用靜態索引結構。ISAM文件由多級主索引、柱面索引、磁道索引、主文件組成。
VSAM:虛擬存儲存取方法,采用B+樹作為動態索引結構。VSAM文件由索引集、順序集、數據集組成。
<h1>散列文件</h1>
也稱為直接存取文件,散列文件主要采用拉鏈法處理沖突。
散列文件只能按關鍵字隨機存取,不能順序存取。
<h1>多關鍵字文件</h1>
多重表文件,對每個次關鍵字也建立一個索引,并且將具有相同次關鍵字的記錄的物理地址鏈接起來,次關鍵字索引表的一條記錄包括次關鍵字、鏈表的頭指針、鏈表長度。
倒排文件,與多重表文件相比,倒排文件把鏈表的物理地址放在了次關鍵字索引表中了。
與單關鍵字索引文件相比,倒排文件是按給定次關鍵字查找記錄,而不是在已查找記錄中找次關鍵字。