一、文件的基本概念( 識記 ) 對數據結構來說, 文件是性質相同的記錄的集合 (這不同於我們說的操作系統中的文件概念) 。 與文件有關的概念還有: 記錄是文件中存取的基本單位,數據項是文件可使用的 最小單位 ,數據項有時稱欄位或者屬性 。主關鍵字項 (唯一標識一個記錄的欄位)、 次關鍵字項 、 主關 ...
一、文件的基本概念( 識記 )
對數據結構來說, 文件是性質相同的記錄的集合 (這不同於我們說的操作系統中的文件概念) 。
與文件有關的概念還有: 記錄是文件中存取的基本單位,數據項是文件可使用的 最小單位 ,數據項有時稱欄位或者屬性 。主關鍵字項 (唯一標識一個記錄的欄位)、 次關鍵字項 、 主關鍵字 、 次關鍵字 。 單關鍵字文件 、 多關鍵字文件 等。
文件的邏輯結構是一種線性結構 。
文件上的操作主要有兩類: 檢索和維護 。並有實時和批量處理兩種處理方式。
文件的存儲結構是指文件在外存上的組織方式, 基本 的組織方式 有: 順序組織 、索引組織 、散列組織和鏈組織 。文件組織的各種方式往往是這四種基本方式的結合。
常用的文件組織方式 : 順序文件 、 索引文件 、 散列文件和多關鍵字文件 。
評價一個文件組織的效率 ,是執行文件操作所花費的時間和文件組織所需的存儲空間 。通常文件組織的主要目的,是為了能高效、方便地對文件進行操作,而檢索功能的多寡和速度的快慢 ,是衡量文件操作質量的重要標誌 。
二、順序文件( 識記 )
順序文件是指按記錄進入文件的先後順序存放、其邏輯順序和物理順序一致的文件。
一切存儲在順序存儲器(如磁帶)上的文件都只能順序文件 。這種順序文件只能按順序查找法存取(註意,沒有折半法了)。
存儲在直接存取存儲器(如磁碟) 上的順序文件可以順序查找法存取,也可以用分塊查找法或二分查找法存取。
順序文件多用於磁帶。
三、索引文件( 識記 )
索引文件的組織方式:通常是在文件本身(主文件)之外,另外建立一張表,它指明邏輯記錄和物理記錄之間一一對應的關係,這張表就叫做索引表 ,它和主文件一起 構成索引文件 。
索引非順序文件中的索引表為稠密索引 。索引順序文件中的索引表為稀疏索引 。
若記錄很大使得索引表也很大時,可對索引表再建立索引,稱為查找表 。通常可達四級索引。
四、索引順序文件( 識記 )
索引順序文件是最常用的文件組織 :因為索引順序文件的主文件也是有序的,所以它既適合於隨機存取也適合於順序存取。另一方面,索引非順序文件的索引是稠密索引,而索引順序文件的稀疏索引,占用空間較少,因此索引順序文件是最常用的一種文件組織。
索引順序文件 常用的有兩種: ISAM 文件和 VSAM 文件。ISAM(Indexed Sequential Access Methed,索引順序存取方法)是一種專為磁碟存取文件設計的文件組織方式,採用靜態索引結構。
VSAM(Virtual Storage Access Method,虛擬存儲存取方法)也是一種索引順序文件的組織方式,採用B+樹作為動態索引結構。
五、散列文件( 識記 )
散列文件是利用散列存儲方式組織的文件,亦稱為直接存取文件。
它類似於散列表,即根據文件中關鍵字的特點,設計一個散列函數和處理衝突的方法,將記錄散列到存儲設備上。與散列表不同的是,對於文件來說,記錄通常是成組存放的,若幹個記錄組成一個存儲單位,稱為桶。 對散列而言,處理衝突的方法主要採用拉鏈法。
散列文件的優點是:文件隨機存放,記錄不需要排序;插入刪除方便;存取速度快;不需要索引區,節省存儲空間。缺點是:不能進行順序存取,只能按關鍵字隨機存取,且詢問方式限地簡單詢問,需要重新組織文件。
六、多關鍵字文件( 識記 )
對被查詢的次關鍵字也建立相應的索引,則這種包含有多個次關鍵字索引的文件稱為多關鍵字文件 。
兩種多關鍵字文件的組織方法: 多重表文件 和倒排表 。
一般的文件組織中,是先找記錄,然後再找到該記錄所含的各次關鍵字;而倒排文件是先給定次關鍵字,然後查找含有該次關鍵字的各個記錄,因此稱為倒排。