跳轉到內容

A-level 計算機科學/WJEC (Eduqas)/元件 2/資料組織和結構

來自華夏公益教科書,開放的書籍,開放的世界

檔案是關於特定的人、公司或主題的有組織的資料集合。它由各種欄位組成,這些欄位儲存該資料主題的資料,該主題被稱為記錄。

記錄型別

[編輯 | 編輯原始碼]

固定長度

[編輯 | 編輯原始碼]

在固定長度記錄中,每條記錄的大小完全相同。在編碼時,您需要確定要為欄位分配多少個字元,因為這在以後無法更改。這意味著任何額外的空間都將用空格填充,這會浪費儲存空間。但優勢是您可以確定讀取記錄的位置,因為您確切地知道每個欄位佔用了多少空間。

可變長度

[編輯 | 編輯原始碼]

在可變長度記錄中,只儲存實際輸入的資料,它們用於序列檔案和順序檔案。沒有空格,但您無法直接讀取記錄。

檔案型別

[編輯 | 編輯原始碼]

序列檔案使用可變長度記錄,其中所有新記錄都追加到檔案的末尾,它們不以任何方式排序,而是按時間順序排列。要編碼它,您需要在程式語言中使用檔案功能,以追加模式傳入,以確保要新增的資料被追加到末尾。這是最快的檔案組織型別,用於當順序應按時間順序排列時,例如移動運營商的所有外發電話記錄(用於單個工作日)。

順序檔案使用固定長度記錄。順序檔案更容易搜尋特定值,因為它們儲存的所有內容都以邏輯方式排序,例如,您可以在客戶檔案中搜索 ID 為 7 的客戶。但是,當您要插入新記錄時會增加複雜性。首先,當前檔案中的資料必須複製到臨時檔案。這是逐條記錄完成的,直到到達需要插入記錄的位置。將記錄插入正確的位置,然後複製其餘記錄。舊檔案被刪除,臨時檔案成為新檔案,記錄位於正確的位置。如果您要從順序檔案中刪除記錄,則在建立臨時檔案時 simply 不會複製該記錄。

索引順序

[編輯 | 編輯原始碼]

索引順序檔案是將資料分成與排序資料相關的邏輯塊。資料被分成組,例如字母順序。塊可以是 A-C、D-F、F-I 等等。它們將包含與該資料相關的索引範圍,因此對於第一個塊,所有以 A、B 和 C 開頭的名稱都將在該索引範圍內找到。使用它的原因是改善搜尋時間,因為塊消除了查詢超過必要記錄的需求。但是,插入或刪除記錄將非常複雜,因為這會修改每個組的索引。如果有大量資料,可以應用相同的概念並使用多級索引來加快搜索記錄的速度。

隨機/直接訪問

[編輯 | 編輯原始碼]

隨機訪問檔案是可以在不搜尋記錄以查詢正確記錄的情況下直接跳到確切位置的地方。要查詢一些資料,您只需要知道要在檔案中查詢哪些資料,通常是主鍵。將使用一種稱為雜湊演算法的演算法根據金鑰找出資料的準確位置。

或者,可以使用塊。塊的大小是有限制的,例如一個塊可以包含 10 條記錄。該演算法將帶您到塊的開頭,然後可以順序搜尋該塊。

雜湊演算法

[編輯 | 編輯原始碼]

每個雜湊演算法在效率方面都不同,具體取決於您擁有的資料。它們都包含 4 個主要特徵:它們必須是確定性的(給定一個鍵時,始終產生相同的結果)、均勻的(鍵均勻分佈在可用的塊範圍內)、確保資料規範化、提供連續性且不可逆。

主檔案和事務檔案

[編輯 | 編輯原始碼]

主檔案

[編輯 | 編輯原始碼]

主檔案非常大,訪問頻率很低。它們以邏輯方式儲存,基於主鍵。但是,它們需要包含所有發生過的事件記錄,因此它們會定期更新一批新資訊,以確保它們是最新的,並在需要時可以被參考。

事務檔案

[編輯 | 編輯原始碼]

事務檔案儲存公司的日常資料。它們按順序儲存資料,即按時間順序,用於特定時間段。這可能會產生大量資料,尤其是對於大型公司而言,但它將所有資料保持在較小、易於管理的部分中。一天結束時,資料可以從事務檔案複製到主檔案。

記錄從事務檔案更新主檔案的過程。考試中可以繪製此圖表以獲得大部分分數!

更新主檔案

[編輯 | 編輯原始碼]

要更新主檔案,首先必須按主鍵順序對事務進行排序。這使得主檔案可以輕鬆更新。對於已排序的事務檔案中的每個記錄,透過將新事務與主檔案中已有的內容進行比較來更新主檔案。重複此過程後,將生成一個新的主檔案,其中包含任何更新的資料、更新失敗時的錯誤報告以及公司內部使用的列印報告(例如,它們可能是發票)。

面向未來

[編輯 | 編輯原始碼]

備份檔案的過程是將檔案**複製**到另一個位置。例如,將檔案從您的 HDD 複製到外部 HDD,並將該 HDD 儲存在防火保險箱中,這將是一種不錯的備份方法。公司會建立備份策略,規定他們如何進行備份過程。一個好的備份策略將包含以下詳細資訊:備份將位於何處,備份將儲存在什麼儲存介質上,備份的頻率/不頻率以及備份將儲存多長時間(保留策略)。

將檔案**移動**到另一個位置的過程,通常位於歸檔檔案中(.7z/.zip/.rar)。這樣做是為了保留重要內容以備不時之需,但訪問頻率很低。將它們從您的主要儲存介質中刪除將提高系統的速度。

華夏公益教科書