新聞中心
什么是高水位
高水位是Oracle中使用和未使用空間中的邊界線,也可以理解為數(shù)據(jù)文間和非數(shù)據(jù)文間的分界線,但是這里的數(shù)據(jù)文件指代的是存儲過數(shù)據(jù)的數(shù)據(jù)文件,而非僅僅是數(shù)據(jù)表中有數(shù)據(jù)的數(shù)據(jù)文件。

創(chuàng)新互聯(lián)2013年開創(chuàng)至今,先為漢壽等服務(wù)建站,漢壽等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為漢壽企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
高水位對于檢索的影響
假設(shè)我們有個表有2百萬行數(shù)據(jù)存儲在幾個區(qū)中,假如我們刪除一百萬條數(shù)據(jù)。盡管數(shù)據(jù)區(qū)中的數(shù)據(jù)沒有了,但是Oracle中占用的區(qū)的數(shù)據(jù)空間仍然不變,與原來二百萬條數(shù)據(jù)占用的數(shù)據(jù)空間是一樣的。當我們在數(shù)據(jù)庫中執(zhí)行查詢時,Oracle仍會遍歷所有的數(shù)據(jù)塊,即便這些數(shù)據(jù)塊中沒有數(shù)據(jù)。從這個角度來說,高水位可以理解為已使用的數(shù)據(jù)塊或數(shù)據(jù)區(qū)。
高水位下的數(shù)據(jù)塊中至少有一塊是有數(shù)據(jù)的,當然這些數(shù)據(jù)也可能被刪除掉了。由于Oracle知道高水位上的數(shù)據(jù)區(qū)是沒有數(shù)據(jù)的,所以它在讀取數(shù)據(jù)時只讀取到高水位線。正是這個原理,當數(shù)據(jù)庫中的表數(shù)據(jù)增大到一定的數(shù)據(jù)量時,如果將表中的數(shù)據(jù)移動到一個新的歷史表中,并將當前表中的數(shù)據(jù)清空,并不會提高當前數(shù)據(jù)表的檢索效率。因為數(shù)據(jù)的高水位沒有變。
如果數(shù)據(jù)庫中的大部分數(shù)據(jù)被刪除了,應(yīng)該使用Shrink命令降低高水位,這樣才能提高數(shù)據(jù)的查詢效率。當然如果使用數(shù)據(jù)庫分區(qū)表也就是另外一種解決方案了。
分享題目:講解一下Oracle高水位(HWM)
文章網(wǎng)址:http://www.5511xx.com/article/cdgsiih.html


咨詢
建站咨詢
