日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Oracle位圖索引相關(guān)特點(diǎn)介紹

我們都知道Oracle中通過(guò)位圖索引可以在很大的程度上提高查詢的效率,而以下的文章主要要介紹的是Oracle位圖索引的相關(guān)特點(diǎn)及其使用的時(shí)機(jī),如果你想了解的更多的話,以下的文章會(huì)給你提供更多的相關(guān)知識(shí)。

我們提供的服務(wù)有:成都做網(wǎng)站、網(wǎng)站制作、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、安居ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的安居網(wǎng)站制作公司

在數(shù)據(jù)庫(kù)中(包括Sql Server數(shù)據(jù)庫(kù)),對(duì)于這種基數(shù)比較小的列,如果只有有限的幾個(gè)固定值,如上表中的性別、婚姻狀況等等,要為其建立索引的話,采用的就應(yīng)該是位圖索引,而不是B樹(shù)索引。

位圖索引為什么可以提高基數(shù)比較小的表的查詢速度呢?這主要是因?yàn)樵趧?chuàng)建位圖索引的時(shí)候,數(shù)據(jù)庫(kù)往往會(huì)對(duì)整個(gè)表進(jìn)行掃描,并未索引列的每個(gè)取值建立一個(gè)位圖(位圖索引的名字也由此而來(lái))。在這個(gè)位圖中,為表中的每一行使用一個(gè)位元來(lái)表示該行是否包含該位圖的索引列的取值。

位元到行的ROWID的對(duì)應(yīng)關(guān)系通過(guò)位圖索引中的應(yīng)收函數(shù)來(lái)完成。如此的話,位圖索引就能夠以一種完全不同的內(nèi)部機(jī)制來(lái)完成與B樹(shù)索引相同的功能。

另外值得一提的是,對(duì)于B樹(shù)索引而言,如果在查詢條件語(yǔ)句中采用了AND等操作符號(hào),其查詢的效率會(huì)大打折扣。故在數(shù)據(jù)庫(kù)優(yōu)化中,會(huì)建議大家不要使用這些操作符,改用其他操作符代替。不過(guò)如果采用位圖索引的話,則沒(méi)有這方面的顧慮。如上例所示,假設(shè)用戶需要查找已婚的女性,那么就可以使用如下的語(yǔ)句查詢。

 
 
 
  1. select t.*, t.rowid  
  2. from userinfo t  
  3. where t.merital=’已婚’ and t.sex=0 

這個(gè)查詢引用了一些創(chuàng)建了位圖索引的列時(shí),這些位圖可以很方便的與AND或者OR操作符結(jié)合以找出想要的數(shù)據(jù)。數(shù)據(jù)庫(kù)在后臺(tái)處理的時(shí)候,先利用已經(jīng)創(chuàng)建的位圖進(jìn)行邏輯運(yùn)算,然后計(jì)算結(jié)果位圖中1的個(gè)數(shù),就可以查詢到滿足條件的所有記錄。如果查詢到結(jié)果后還需要更改數(shù)據(jù)的話,那么只需要按照結(jié)果位圖中取1的位元對(duì)應(yīng)的ROWID列的值進(jìn)行映射即可。

位圖索引的使用限制

位圖索引雖然在某些情況下能夠起到比B樹(shù)索引更好的效果。但是需要注意的是,并不是在任何場(chǎng)合都有效。如上例所示,如果在員工編號(hào)或者員工姓名列中使用的話,反而會(huì)降低數(shù)據(jù)查詢的效率。故其使用仍然受到比較大的限制。

如上面列舉的案例,一般情況下只有在“基數(shù)比較小的列中”和“需要使用與和或的運(yùn)算中”采用位圖索引能夠起到比B樹(shù)索引更好的效果。其他情況還是使用B數(shù)索引或者函數(shù)索引為好。

在Oracle數(shù)據(jù)庫(kù)中,有B樹(shù)索引、位圖索引、函數(shù)索引等等。具體采用哪種索引,還是要根據(jù)不同的情形來(lái)對(duì)待。隨著數(shù)據(jù)庫(kù)應(yīng)用越來(lái)越復(fù)雜,單靠一個(gè)B樹(shù)索引已經(jīng)不能夠應(yīng)付了。如列中包含了表達(dá)式或者函數(shù)的話,B樹(shù)索引或者位圖索引都不能夠用,只有用函數(shù)索引。

對(duì)于數(shù)據(jù)庫(kù)專家來(lái)說(shuō),索引的創(chuàng)建與管理或許沒(méi)有難度,只需要簡(jiǎn)單的幾個(gè)語(yǔ)句即可。比較困難的是,如何根據(jù)實(shí)際情況來(lái)選擇合適的索引。


當(dāng)前題目:Oracle位圖索引相關(guān)特點(diǎn)介紹
文章網(wǎng)址:http://www.dlmjj.cn/article/dhjoohh.html