樹形目錄的優點:
1)解決了重名問題。
2)有利于文件分類3)提高檢索文件的速度4)能進行存取權限的控制。
關于本節的內容可以在MS-DOS或UNIX操作系統中進行練習,以理解目錄結構。可用的命令有:dir、tree、md、cd、rd、del等。
五、文件的邏輯結構( 領會 )
前面講的是目錄,現在講的是文件。文件的結構是指文件的構造方式。
什么是文件的 邏輯結構 :由 用戶構造的文件 稱為文件的邏輯結構。 如一篇文檔、一個數據庫記錄文件等,在用戶看來是一些文字和數字或多媒體信息的有機組合。
邏輯文件有兩種形式: 流式文件 和 記錄式文件 .
流式文件 是指用戶對文件內信息不再劃分的可獨立的單位,如我們的word文件,圖片文件等。整個文件是以順序的一串信息組成。
記錄式文件 :是指用戶對文件內信息按邏輯上獨立的含義再劃分信息單位,每個單位為一個邏輯記錄。每個記錄可以獨立存取。這個在數據庫中我們學得比較多,容易理解。
六、文件的物理結構( 領會 )
1、什么是文件的 物理結構 :由文件系統在存儲介質上的 文件構造方式 稱為文件的 物理結構 . 不論用戶看來是什么文件,在存儲介質上存儲時,按何種構造方式記錄呢,因為介質上的存儲單位是物理塊,那么這些物理快是順序存放,還是鏈式結構,或者索引結構,都要由文件系統結構來實現。
2、 邏輯文件 在磁盤上的 組織方式 :
1) 順序結構 :顧名思義,順序結構就是指,把邏輯文件的記錄(內容)按其本身的順序(邏輯記錄的順序)在磁盤上也按序存放在連續的塊中。讀取時也從第一個記錄開始按順序進行。在文件目錄中指出文件名,存放的起始塊號和占用塊數。
順序文件的最大優點是存取速度快(可以連續訪問)。而問題主要是存儲空間利用率不高、輸出文件時難以估計需要多少磁盤塊、影響文件擴展。
2) 鏈接結構 :如果邏輯文件中的各個邏輯記錄任意存放到一些磁盤塊中,再用指針把各個塊按邏輯記錄的順序鏈接起來,在文件目錄中只記錄第一塊的地址和最后一塊的地址,那么這種文件組織方式就是鏈接結構。
鏈接結構解決了順序結構中的所有問題,所有空閑塊都可以被利用,在順序讀取時效率較高但需要隨機存取時效率低下(因為要從第一個記錄開始讀取查找)。此外,對于鏈接結構,也有一些問題要注意:由于塊中要存放指針信息,因此一部分空間被占用;讀出信息時要把指針信息分離出來;還要防止指針丟失或破壞造成的混亂,所以又要增加一些管理的信息。總之鏈式結構會使用于存放文件信息的空間減少。
3) 索引結構 :索引結構是實現非連續存儲的另一種方法,索引結構為每個文件建立一張“索引表”,把指示每個邏輯記錄存放位置的指針集中在索引表中。(最直觀的索引結構就比如我們的網站,首頁就相當于一個索引表,每個鏈接記錄了一個文件的位置,當我們點擊時,就可以找到那個文件)
文件目錄中指出文件名的索引表位置,而索引表中每個項指出一個邏輯記錄的存放位置。存取文件時根據索引表中的登記項來查找磁盤上的邏輯記錄。
索引結構 既適合順序存取記錄,也可以方便地隨機存取記錄,并且容易實現記錄的增刪和插入,所以索引結構被廣泛應用。但是索引結構增加了索引表,要占用部分空間并增加讀寫索引表的時間。當索引項很多時,還要考慮采用 多級索引結構 .
七、記錄的成組與分解( 簡單應用 )
1、什么是 記錄的成組與分解 :由于磁盤塊的大小是預先劃分好的,大小固定,而邏輯記錄的大小是用戶文件性質決定的,不一定和塊大小一致,如果邏輯記錄比物理塊小得多時,可以把多個邏輯記錄存放在一個塊中,這就是記錄的成組,用戶使用時再把讀取的一塊信息中分離出所需的記錄,這就是記錄的分解。
2、 記錄的成組 :把若干個邏輯記錄合成一組存入一塊的工作稱為“記錄的成組”,每塊中邏輯記錄的個數稱“ 塊因子 ”
利用 主存緩沖區 可以把多個邏輯記錄一次性保存到磁盤塊上。也就是當記錄要求存盤時,先存入主存緩沖區,緩沖區的大小等于最大邏輯長度乘以成組的塊因子,就是塊的大小。
在緩沖區未存滿時,不啟動磁盤寫,這樣就提高了存儲空間的利用率,減少啟動外設的次數,提高了系統的工作效率。
3、 記錄的分解 :這是記錄成組的一個逆過程,先從磁盤中找到記錄所在的塊,并將本塊讀入主存緩沖區,再從緩沖區取出所需要的記錄送到用戶工作區。如果用戶所需的記錄已經在緩沖區中,則不需要啟動外設讀塊信息,這也可以提高系統工作效率。
相關推薦:2010年自考數據庫及其應用重點知識講解匯總