文件的組織結構和存取方式
文件的組織結構和存取方式決定了檔案在儲存媒體上的佈局,以及作業系統如何存取和處理這些檔案資料。
檔案的存取方式
根據文件資訊的存取次序,可以將文件的存取方式分為以下幾種:
- 順序存取:
- 將文件中的資訊依序依序進行讀寫操作。
- 典型設備:磁帶,適合處理大批量順序讀取的資料。
- 優點:簡單、操作成本低。
-
缺點:只能按順序訪問,效率較低,不支援隨機訪問。
-
隨機存取(直接存取):
- 可依任意次序隨機讀寫檔案中的信息,而無需依序存取。
- 典型設備:磁碟,可以根據邏輯位置直接定位到檔案的實體位址進行操作。
- 優點:存取速度快,彈性高。
-
缺點:實作複雜,適合小檔案或需要頻繁隨機讀取的檔案。
-
按鍵訪問:
- 根據給定的鍵(主鍵或記錄名)進行檔案的存取。
- 需先檢索對應記錄的邏輯位置,再轉換為儲存媒體上的實體位址進行存取。
-
常用於資料庫系統中的檔案操作。
-
存取方式的選擇因素:
- 文件的性質:區分為串流文件和記錄式文件。
- 儲存設備的特性:例如,磁帶適合順序訪問,磁碟適合隨機存取。
檔案的邏輯結構
文件的邏輯結構描述了文件在邏輯上的組織形式,主要分為以下兩類:
- 串流文件(無結構文件):
- 邏輯上是一串連續的字元集合,沒有內部結構。
-
常見於文字檔案和二進位檔案。
-
記錄式文件(有結構文件):
- 由若干邏輯記錄組成,每個邏輯記錄都是獨立的基本資訊單位。
- 透過主鍵(如 ID)區分不同的邏輯記錄。
- 包括以下幾種類型:
- 順序檔案:記錄依序儲存和存取。
- 索引檔案:透過建立索引,實現快速檢索和存取。
- 索引順序檔案:結合順序檔案和索引檔案的優點。
- 直接文件:透過直接存取記錄實體位址,實現隨機存取。
- 雜湊檔案:利用雜湊函數快速定位記錄,適合快速尋找操作。
檔案的物理結構
文件的物理結構描述了文件在儲存媒體上的實際組織方式,主要有以下幾種:
- 順序結構:
- 檔案在儲存媒體上是連續存放的,邏輯上的記錄依序儲存在相鄰的實體區塊上。
- 優點:順序讀寫效率高。
-
缺點:容易產生碎片化,無法支援隨機存取。
-
連結結構:
- 文件中的記錄透過指標連結在一起,不需要在儲存媒體上連續存放。
- 優點:減少碎片化問題,支援動態擴展。
-
缺點:隨機存取效率低,需要逐一遍歷指針。
-
索引結構:
- 為檔案建立索引表,透過索引表找到檔案記錄的實體位址。
- 優點:檢索速度快,適用於大檔案和複雜查找操作。
-
缺點:需要額外的儲存空間存放索引表。
-
直接文件:
- 針對記錄式文件,透過主鍵直接定位到對應的實體位址。
- 優點:快速訪問,適合頻繁隨機訪問的場景。
- 缺點:需設計高效率的映射函數,避免位址衝突。
記錄的成組和分解
- 記錄的成組:
- 將多個邏輯記錄合併成一個實體區塊儲存。
- 區塊因子:一個物理區塊中包含的邏輯記錄的數量。
-
優點:減少 I/O 操作次數,提高資料傳輸效率。
-
記錄的分解:
- 從實體區塊中分離出單一邏輯記錄的操作。
- 常用於讀取和處理包含多個邏輯記錄的實體區塊。