研究背景
使用計算機處理資料常見的作業程式是建檔、更新和取用三個步驟。建檔是指將資料儲存在磁帶或磁碟中;更新是指根據異動資料來修正檔案的內容,以確保檔案的正確性和完整性;取用則指利用檔案提取或製作信息。一個良好檔案必備的條件很多,簡言之,就是符合目標、使資料存得多、找得快、費用低廉及操作簡單。要達到這些要求必須講究檔案設計的方法,底下將分檔案資料的型式和性質、檔案組織的型態及其優缺點和適用對象與時機、檔案的性能、設計的原則以及分析師的步驟等來討論。
存放檔案資料的媒體和方法很多,在計算機資料處理方面以磁帶和磁碟最為普遍。磁帶上的檔案資料只能以循序方式來處理,而磁碟中的檔案資料則可以隨機方式作業,因此一般的計算機系統大都以磁碟為主要的輔助存儲器。一般常見的傳統檔案有下列三種:循序存取檔(SequentialAccessMethodFile簡稱SAM檔)、隨機存取檔(RandomAccessMethodFile簡稱RAM檔)和索引循序存取檔(IndexSequentialAccessMethodFile簡稱ISAM檔)。另外有一種新的檔案設計,請查閱本冊資料庫設計一詞。底下將分述上面三種組織形態的檔案,及其優缺點和適用對象與時機。
簡介
循序存取檔:循序存取法是最基本的檔案設計方法,各個資料錄依照鍵號的順序存放在磁帶或磁碟上,在更新或取用時也須依照鍵號的順序循序處理,因此異動資料須事先分類(Sorting)。此種檔案在成批作業(BatchOrientedDataProcessing)時最常使用。成批作業就是將一企業的異動資料先集中成批,收集到一定數量後才做整批處理。成批作業常出現於周期性業務的處理,例如庫存清單登記、每月帳目處理和一季稅收報告等等。循序存取檔建檔的主要步驟為:1.打開檔(OpenFile);2.讀取資料並將它移到輸出區域;3.將資料寫到媒體(磁帶或磁碟)上。
對於
數據結構當中,如果某人只能開啟一組包含特一排列的數值,該組數據結構即屬循序存取,而正準的例子就如連結串列。另外,含有循序存取的索引需要
大O符號(
k值)的若干時間,而
k值則為變址。結果,不少算法如
快速排序及二元搜尋會將算法變壞,令其比起原本算法變得較底效率。因此,這類算法之後會成一組缺乏隨機存取的無用算法。相反,通常不會作出索引的部分算法只需循序存取方式,例如
合併排序,它們就無需遭受處置。
優點
缺點
適用對象與時機
可以用來存放表格性質的資料;
可以當作分類時的工作區;
可以用於活動比率高的更新作業處理。
相關介紹
索引循序存取檔
索引循序存取法是最常用的檔案設計方法。各個資料錄在磁碟中是依照鍵號的順序循序存放,但另外有一索引區域存放某些鍵號資料的存放位址,在更新或取用資料錄時,可以利用這些索引區確定資料錄約存放區域。索引存取檔是由索引區、純資料區和溢位區所組成。索引區又分三個索引階層,是存放索引的區域;純資料區是存放資料的區域;溢位區則存放超溢資料的區域。
隨機存取檔
隨機存取法處理資料錄時不須仰賴循序順序,克服了循序存取檔的最大限制。此種檔案在存放資料錄時,是將其鍵號透過某一公式計算而得出存放位址;更新或取用資料錄時,也是按照同一公式計算得其存放位址。當兩個不同的鍵號具有相同的存放位址時,通常是把後來的資料錄放在溢位區(OverflowArea),而兩資料錄間有鏈連結,計算機可依此鏈找到所要的資料錄。一個良好的隨機存取檔,求算位址的公式應當簡單易算,而且算得同一位址的機率要低;當算得同一位址時也要有一套簡便的方法來處理。