6.2.3 聚集文件
1、 聚集文件是一種具有多種記錄類型文件,存儲(chǔ)了來(lái)自多個(gè)關(guān)系表的數(shù)據(jù),每個(gè)關(guān)系表對(duì)應(yīng)文件中的一種記錄類型。
2、 當(dāng)數(shù)據(jù)庫(kù)中數(shù)據(jù)量效大時(shí),對(duì)數(shù)據(jù)庫(kù)查詢需要多次訪問磁盤文件,嚴(yán)重影響性能指標(biāo),為了降低多表操作時(shí)的磁盤訪問次數(shù),提高多表查詢速度,可采用聚集文件。
3、 聚集文件將不同關(guān)系表中有關(guān)聯(lián)關(guān)系的記錄存儲(chǔ)在同一磁盤塊內(nèi),從而減少多表查詢時(shí)磁盤塊的訪問次數(shù),提高處理速度。
6.2.4 索引文件
是一種利用索引技術(shù)技術(shù)快速文件訪問的文件組織和存取方法。
6.2.4 散列文件
是一種利用散列函數(shù)支持快速文件訪問的文件組織和存取方法。
6.3 索引技術(shù)
6.3.1 基本概念
1、 索引技術(shù):是一種快速文件訪問技術(shù),它將一個(gè)文件的每個(gè)記錄在某個(gè)或某些域(屬性)上的取值與該記錄的物理地址直接聯(lián)系起來(lái),提供了一種根據(jù)記錄域的取值快速訪問文件記錄的機(jī)制;它的關(guān)鍵是建立取值域到記錄的物理地址劉的映射關(guān)系,這種映射關(guān)系叫索引。
2、 索引技術(shù)分類:
(1) 有序索引技術(shù):利用索引文件實(shí)現(xiàn)記錄域(查找碼)取值到記錄物理地址間的映射關(guān)系,索引文件由索引記錄組成,每個(gè)記錄中記載一個(gè)索引項(xiàng),索引項(xiàng)記錄了某個(gè)特定的查找碼值和具有該值的數(shù)據(jù)文件記錄的物理地址。
(2) 散列技術(shù):利用一個(gè)散列函數(shù)實(shí)現(xiàn)記錄域取值到記錄物理地址間的直接映射關(guān)系。
(3) 有序索引:有序索引作為基于索引文件的索引技術(shù),需要考慮兩個(gè)問題:(1)如何組織索引文件中的索引記錄;(2)如何從索引文件出發(fā),訪問數(shù)據(jù)文件中的數(shù)據(jù)記錄。
(A) 當(dāng)需要采用有序索引機(jī)制快速訪問數(shù)據(jù)文件時(shí),首先要為該數(shù)據(jù)文件建立一個(gè)索引文件,它是索引記錄和索引項(xiàng)的集合。
(B) 索引文件建立的方法:首先選定某些記錄域作為查找碼,然后建立數(shù)據(jù)記錄在查找碼上的取值與物理地址間的映射關(guān)系,組成索引項(xiàng)。所有索引項(xiàng)作為索引記錄存儲(chǔ)在索引文件中,索引文件根據(jù)某個(gè)特定的查找碼值的順序組織為順序文件。
(C) 一個(gè)數(shù)據(jù)文件可以有多個(gè)查找碼和索引文件。
6.3.2 有序索引的分類及特點(diǎn)
1、 聚集索引與非聚集索引
(1) 對(duì)數(shù)據(jù)文件和它的一個(gè)特定的索引文件,如果數(shù)據(jù)文件中數(shù)據(jù)記錄的排列順序與索引文件中索引項(xiàng)的排列順序相一致,則該索引文件稱為聚集索引,否則稱為非聚集索引。
(2) 在一個(gè)數(shù)據(jù)文件上除了建立一個(gè)聚集索引外,還可建立多個(gè)非聚集索引。
2、 稠密索引和稀疏索引
如果數(shù)據(jù)文件中的每個(gè)查找碼都在索引文件中都對(duì)應(yīng)一個(gè)索引記錄,稱為稠密索引,如果只一部分對(duì)應(yīng),則稱為稀疏索引。
3、 主索引和輔索引
在數(shù)據(jù)文件包含主碼的屬性集上建立索引稱為主索引,在非主碼屬性上建立的索引稱為輔索引。
4、單層索引和多層索引
(1) 單層索引(線性索引):索引項(xiàng)根據(jù)鍵值在索引文件中順序排列,組織成一維線性結(jié)構(gòu),每個(gè)索引項(xiàng)直接指向數(shù)據(jù)文件中的數(shù)據(jù)記錄。
(2) 當(dāng)數(shù)據(jù)文件很大時(shí),即使采用稀疏索引,建成的索引文件也很大,導(dǎo)致效率低下,為解決該問題,可對(duì)索引文件中的索引項(xiàng)本身再建立一級(jí)稀疏索引,組成2層索引結(jié)構(gòu);進(jìn)一步地,可建立多層樹型索引結(jié)構(gòu)來(lái)快速定位。
相關(guān)推薦:
2012年計(jì)算機(jī)等考四級(jí)數(shù)據(jù)庫(kù)工程師備考筆記匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |