文件組織方式
出自 MBA智库百科(https://wiki.mbalib.com/)
- 文件組織方式(File Organizationmode)
目錄 |
文件組織方式是網上數字化信息資源的一種主要存儲形式。文件組織方式採用主題組織法的思想,以文件名標識信息內容,用文件夾組織信息資源,並通過網路共用實現信息傳播。文件伺服器(FTP)即以此方式組織網路信息資源(多為非結構化信息),用戶界面就是人們熟悉的文件夾視窗,瀏覽和下載信息操作簡便。
文件組織方式的優點[1]
以文件系統來組織和管理網路信息資源具有以下優點:
(1)簡單快捷。電腦有一整套文件處理的理論與技術,在組織網路信息時可以非常容易地利用這些成熟的技術和方法。
(2)適合圖形、圖像、音頻、視頻等各種非結構化信息組織管理。由於電腦處理的所有最終結果都能以文件的形式保存下來,因此對於圖形、圖表、音頻、視頻等非結構化信息,可以方便地利用文件系統來管理。正因為如此,以文件組織方式來管理信息資源在目前仍然廣泛使用。
但是,隨著網路信息資源利用的不斷普及和信息量的不斷增多,以文件為單位共用和傳輸信息會使網路負載越來越大。同時,文件方式對結構化信息的管理顯得力不從心,文件系統只涉及信息的簡單邏輯結構,當信息結構較複雜時,就難以實現有效的控制和管理,從而降低了信息組織的效率。因此,文件只能是網路信息資源管理的輔助形式或者是作為信息單位成為其他信息組織方式的管理對象。
文件組織方式的種類[2]
- 1.順序文件
順序文件的物理結構最簡單,在此結構中,從文件空間的起點開始,文件的各個記錄順序地存放在外存的連續區內,記錄的物理順序和邏輯順序是完全一致的。它適用於所有的文件媒體。磁帶順序文件從磁帶上文件空間頭部開始,按物理位置順序存儲記錄:磁碟順序文件的結構從磁碟文件空間最初磁軌的頭部開始,按物理位置順序排列。順序文件適用於按順序存取處理,處理速度較快,但記錄的插入和刪除都不方便。
順序文件是一種最常用、最簡單的文件組織方法,在許多資料處理的場合,它仍然是一種簡單、經濟而有效的方法。如磁帶文件、列印文件都是常用的順序文件。
實現順序文件的排列方法有如下幾種:
- 按記錄產生的先後次序排列,這種方法對數據收集系統比較方便有效。
- 按記錄鍵次序排列,可以根據鍵的升序或降序進行排列。一個記錄中的鍵,可以是一個也可以是多個,分別稱為主鍵、輔鍵及複合鍵等。主鍵是惟一標識記錄的域(即記錄數據項名稱),輔鍵不是惟一標識記錄的域,由兩個以上的記錄鍵值組合成的鍵稱為複合記錄鍵。例如在一個職工工資文件中,職工號為主鍵,姓名、級別、工資額可作為輔鍵,級別和工資額組成複合鍵。
按這種方法排列的數據,要求在文件建立時,首先對文件進行排序:
- 按記錄的使用頻率進行排列。設文件有n個記錄,每個記錄使用的概率為Pi,則要求該文件記錄的排列順序按使用概率的大小排列,滿足。按使用頻率對順序文件進行排列,可以加速記錄的搜索速度。
- 自行重組順序文件。若在上述方法中無法知道其使用頻率,可以採用如下幾種方法來實現:第一種方法,在記錄中加一項使用頻率記錄,每使用一次加1,然後再按使用率大小排列:第二種方法,在每次記錄使用後,將其移至文件的頂端。這樣,常用的記錄可經常保持在文件的前面:第三種方法,每次記錄使用時將其移至現在位置和頂端位置的中間位置,這樣可以減少偶然使用的記錄占據文件前端位置。
- 2.索引文件
索引文件分為索引順序文件和索引非順序文件。索引順序文件,其記錄的物理順序和邏輯順序相一致。記錄按記錄鍵的順序存放,並帶有索引。這種文件組織方式用得比較普遍,但是只適用於磁碟媒體。對於這種文件記錄的存取方式可以採用順序存取和直接存取,並能進行各種形式的處理。
索引順序文件的特點是:
- 具有記錄鍵和記錄鍵索引,按記錄鍵順序排列記錄,並設有溢出區。
- 存取速度快。
- 比較節省存儲單元。
- 增刪比較麻煩。
- 不能用於多碼檢索。
此外,還有索引非順序文件,這種文件也帶索引表,但文件記錄的物理順序和邏輯順序不一致,索引表中存有已排序的記錄鍵號以及該鍵號的記錄地址。處理和查找記錄時,先查索引表,查到所需的記錄地址後,再按地址查找記錄。還可以通過設立不同鍵值的幾個索引來利用同一個記錄。這種組織方式,可以保證地址的惟一性,存取也比較簡單,其缺點是記錄數目多時,索引區也很大,索引表本身占用存儲空間較大,查找費時。
- 3.直接文件
直接文件中記錄的邏輯順序與物理順序不一定相同,但記錄的鍵值直接指明該記錄的地址,所以只要知道了記錄鍵值,就能查找該記錄的物理位置。
直接文件的記錄存放在磁碟等隨機存儲媒體上,且可以被隨機處理,所以也稱直接文件為隨機存取文件。
確定直接文件中記錄的物理位置的方法很多,常用的有:
- 直接地址法:指定某記錄的地址就是存儲設備上的實際地址。
- 相對鍵法:以文件起始記錄為基準的相對地址。
- 雜湊法:尋找一個雜湊函數H(k),將記錄鍵值轉換為相應的記錄地址。
直接文件有3種形式:無鍵直接文件、帶鍵直接文件、桶式(bucket)直接文件。
- 無鍵直接文件:是通過直接地址組織的,在記錄中沒有鍵項目,把記錄的存儲地址作為鍵值。
- 帶鍵直接文件:在記錄中設置鍵項目,並通過簡單的鍵變換處理,就可以得到相應記錄的存儲地址。
- 桶式直接文件:文件空間按桶為單位進行劃分,每個桶可以存放多個記錄,這個桶通常以磁軌為單位,也可以用弧段作為單位,每個桶都有編號。根據桶號和記錄鍵值,就可以查到相應記錄的地址進行記錄處理。由於每個桶能容納m個具有相同Hash函數值的文件記錄,只有當一個桶中m個記錄都占滿後,若還有轉換為該桶地址的記錄時,才產生溢出。所以適當地加大桶的尺寸,可以減少溢出現象,防止“衝突”現象的產生,這是桶式直接文件的特點。
增大桶的容量可以減少溢出次數,從而減少查找記錄所需的平均查換次數。但桶太大,文件存儲空間的密度減少,主數據區利用率低,在記憶體中查找桶中記錄的時間增加,而且要求記憶體緩衝區足夠大,所以桶的容量的選擇要全面考慮,應選擇大小合適的桶。
除了以上幾種基本的文件組織方式外,還有索引鏈接文件、倒排文件等。索引鏈接文件是將索引方法和鏈接方法結合起來的一種組織方式,可用多碼檢索。倒排文件是一種處理多碼檢索的組織方式,它利用次鍵建立次索引表,便於文件記錄按各種屬性查找,但這種文件占用較大的存儲空間。
綜合幾種基本的文件組織方式的優、缺點列於表中。
特性 組織方式 | 優點 | 缺點 |
順序文件 | 處理速度快 存儲空間利用率高 在任何媒體上實現 | 需要對事務己求預先排序 插入記錄麻煩 要檢索整個記錄 |
索引文件 | 可順序處理,也可隨機處理 記錄追加、插入方便 查找速度較快 | 增加索引區和溢出區空間 不能用於多碼檢索 |
直接文件 | 存取速度快 記錄追加、刪除容易 | 要進行鍵變換 存儲空間利用率低 |