Oracle 维护数据的完整性 一 索引
簡介:索引是用于加速數(shù)據(jù)存取的數(shù)據(jù)對(duì)象,合理的使用索引可以大大降低i/o 次數(shù),從而提高數(shù)據(jù)的訪問性能.
?
當(dāng)我們從一張表中檢索我們需要的數(shù)據(jù)是,oralce往往會(huì)進(jìn)行全表掃描,就是遍歷所有的數(shù)據(jù)行,來找到我們需要的數(shù)據(jù),并返回結(jié)果集給我們,這個(gè)過程就像下圖:
當(dāng)這個(gè)人需要去圖書館找一本書,唯一的方式就是把這個(gè)圖書館的書,全部過一邊,直到找到自己想要的書,如果這個(gè)圖書館的書少的話,這個(gè)時(shí)間還可以接收,但是如果這個(gè)圖書館有1000萬本書,那么你懂的,這輩子能不能找的到都不一定,畢竟人沒有計(jì)算機(jī)那么快的速度。
當(dāng)我們查詢oracle表中的數(shù)據(jù)時(shí),oracle也是這么做的,檢索全表,直到找到符合要求的數(shù)據(jù),并返回。這個(gè)過程是非常影響用戶體驗(yàn)的,所以必須通過索引來解決這個(gè)問題。
?
(個(gè)人的理解,大神可視而不見)索引的作用:假設(shè)讀者經(jīng)常根據(jù)姓名去查一些書籍,那么就根據(jù)姓名將整個(gè)圖書館的書籍進(jìn)行分類,那么我們就會(huì)得到一個(gè)標(biāo)簽的集合,里面存儲(chǔ)的是一個(gè)個(gè)id為姓名的標(biāo)簽,而標(biāo)簽里面的內(nèi)容是對(duì)應(yīng)數(shù)據(jù)庫記錄的位置,假設(shè)我們這里需要查詢金庸的書籍,那么我們只要去標(biāo)簽集合插到金庸的標(biāo)簽,然后根據(jù)標(biāo)簽上記錄的金庸書籍的位置,快速的查詢我們需要的書籍。就不需要檢索全表,而是通過查詢索引,從而得到我們需要的數(shù)據(jù),但是索引是不能濫用的,下面是使用索引需要注意的地方:
?
轉(zhuǎn)載于:https://www.cnblogs.com/GreenLeaves/p/6656367.html
總結(jié)
以上是生活随笔為你收集整理的Oracle 维护数据的完整性 一 索引的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Lind.DDD.DynamicModu
- 下一篇: DokuWiki 开源wiki引擎程序