1. 程式人生 > >使用ORACLE索引的一些小技巧

使用ORACLE索引的一些小技巧

索引對資料庫訪問的效能的作用十分巨大,設計合理的索引對於系統性能調整至關重要。而使用索引又是資料庫開發過程   中最困難的一點。在設計索引的時候要注意以下幾個方面:

lOLTP系統中,儘量避免全表掃描,儘量使絕大多數操作都通過索引訪問

l資料量很大並且經常變動的表上的索引不易過多,過量的索引會導致插入、更新和刪除操作變慢,產生大量的IO,如果一張表上的索引超過8個,就需要檢查是否這些索引都是必要的。(但是要值得注意的是這條原則很可能被過度的誇大。因為絕大多數OLTP系統,寫操作不足10%,絕大多數的操作是讀。因此如果是設計的合理,並不能說一張表上的索引超過多少就是不合理的)

l如果索引數量過多,建議刪除部分所有的列都建有獨立索引的複合索引,複合查詢操作可以通過使用兩個獨立列的索引結果集合並來獲取,也可以保障查詢效率

l小表不要建立索引,可能通過索引訪問速度更慢,把小表放入KEEP 池效率更高

l索引的PCTFREEINITTRANSMAXTRANS引數設定十分重要,特別是對於變化十分大的索引

l對於比較大的索引,使用索引分割槽會改善效率

l點陣圖索引對於列表類值的效果較好(索引大小也比較小),但是點陣圖索引不適合變化十分頻繁的表

l使用函式索引可以避免大量不必要的全表掃描

l如果索引包含了查詢需要的所有資訊,查詢就不需要訪問表的資料,可以大大提高訪問效率,因此要注意建立合理的複合索引,並注意SQL語句的合理性

l用好索引組織表

l可以使用反轉索鍵值索引來消除索引相關的熱塊

l隨著資料的變化,索引的效率會下降,因此定期重建索引對於效能提升有很大幫助

l使用CBO優化器的情況下,保證表和索引的資料得到了良好的分析是保證優化器選擇最佳執行計劃的關鍵

l刪除所有不必要的索引。ORACLE 9i提供的新特性可以使DBA能夠跟蹤索引的使用情況,用這個功能找到不使用的索引,並把這些索引刪除


相關推薦

使用ORACLE索引一些技巧

索引對資料庫訪問的效能的作用十分巨大,設計合理的索引對於系統性能調整至關重要。而使用索引又是資料庫開發過程   中最困難的一點。在設計索引的時候要注意以下幾個方面: l在OLTP系統中,儘量避免全表掃描,儘量使絕大多數操作都通過索引訪問 l資料量很大並且經常變動的表上的索引

ORACLE索引使用總結(SQL優化及避免索引無效技巧

  一:索引基本概念 oracle提供了兩種方式,從表中讀取所有行(即全表掃描),或者通過ROWID一次讀取一行; 如果只訪問大資料量表的5%的行,並且使用索引標識需要讀取的資料塊,這樣花費的 I/O 較少,索引對效能的改程序度: 1.取決於資料的選擇性 2.資料在表的資料塊中

Liferay 7 OSGi的一些技巧

liferay packages res ges shell portlet 依賴 include log 如果部署一個portlet到Liferay上,編譯沒有出現任何錯誤,卻提示有沒有解決的依賴,可能出現的問題是,我們這個portlet所需要的這個jar包在這個OSGi

vim一些技巧

小技巧 編輯器 組合鍵 鍵盤vi 1.vim編輯器的替換模式與可視模式在一般模式下按鍵盤上的r和R進入替換模式。如果按小r那麽這時候就進入了替換模式,你下一個輸入的字符會把你當前光標所在處的字符替換,然後自動退出替換模式。如果你按的是大R那麽你下面輸入的所有字符會把後面的字符依次替換,直到按退

JS開發中的一些技巧和方法

hello floor apply subst shuf 新的 情況 level 可能 生成指定範圍內的隨機數 當我們需要獲取指定範圍(min,max)內的整數的時候,下面的代碼非常適合;這段代碼用的還挺多的。 function setRadomNum(min,m

Java在處理大數據的時候一些技巧

主線程 成本 寫入 exce 得到 拆分 是的 很多 會有  http://soft.chinabyte.com/database/258/12609258.shtml 眾所周知,java在處理數據量比較大的時候,加載到內存必然會導致內存溢出,而在一些數據處理中我們不得不去

獻身說法---修復bug時的一些技巧

throw 修復bug () 關閉 遠程 style pre col 文件 最近,修復了項目當中的一些bug,覺著有些思路可以分享出來供大家借鑒。 場景一 開發環境中系統正常運行,測試環境中,部分機器未能正常運行。 解決過程:遠程連接了測試環境中的機器,觀察了系統的運行情況

webstorm的一些技巧

覆蓋 左右 tor color 字體 web 保存 行號 log 1.怎樣禁止自動保存文件:   設置--->外觀和行為--->常規--->Synchronization--->要麽四個全不選,要麽把最後兩個不選   Settings--->

關閉Xshell警告音等一些技巧

甘兵 xshell xshell關閉聲音 xshell使用技巧 一、關閉Xshell警告音相信很多朋友在使用Xshell的過程中都遇到過,有時候按Tab補全鍵老是發出翁翁刺耳的聲音,下面介紹一個小方法可以解決這個現象:“工具”--“選項”--勾選“禁用鈴聲”,如下圖:二、在使用Xshell時,

多路由器環境配置的一些技巧(達內)

總結 color 條目 nag 知識 rip路由 內網 限制 images rip 的簡單應用,希望通過這個可以讓幹運維的同仁輕松一點實驗拓撲圖:實驗需求:當內網中有很多路由器或多層交換機是,不同網段間通信 ,需要配置動態路由,如手動配置很浪費時間,容易出錯,可以選擇使用r

js 中的一些技巧

技巧 def 對象 bar 維護 方式 undefine can 常用 js 數字操作: 1.1 取整: 取整有很多方法如: parseInt(a,10); Math.floor(a); a>>0; ~~a; a|0; 前面2種是經常用到的,後面3中算是比

html5的一些技巧,持續補充ing

pre 補充 body 小技巧 input log gpo date 自動 HTML <label> 標簽的 for 屬性 用處:項目中常有點擊label標簽自動勾選/取消radio的需求,之前都是js動態實現的啊啊啊,相見恨晚,23333 顯式的聯系:

ViewPager使用中的一些技巧

android viewpager 懶加載 1、使用setOffscreenPageLimit()方法可以限制它一次加載幾頁,它的默認值1,google建議也是維護一下小的加載頁數3-4; 但是只要手機性能稍微弱一點和系統內存更不上,都會導致切換的時候出現部分數據顯示不出,白屏;尤其是在紅米系統,

2018-05-22 CSS 左右布局、左中右布局以及一些技巧

add www. 分享 適應 line -o pad 默認 改變 1、左右布局 如果有以下html結構,設置左右兩欄布局 <div class="parent"> <div class="leftChild"></div> <

Laravel模型的一些技巧

傳統 產品 來源 這才 弊端 獲取 接收 圖片路徑 spa 隱藏字段 我在項目遇到的情景是,當使用關聯模型獲取數據的時候,比如產品模型和圖片模型,通過產品模型來關聯圖片模型,這個時候我只需要圖片模型的圖片地址字段,其他的字段不讓產品模型看到;以這個場景為實例,我們通過代碼實

WebStorm及emmet插件使用中的一些技巧(持續更新)

TE sublime 上一個 最大化 lpad prev web 組成 toggle Ctrl+/ 或 Ctrl+Shift+/ 註釋(// 或者/*…*/ ) Shift+F6 重構-重命名 Ctrl+X 刪除行 Ctrl+D 復制行 Ctrl+G

jquery操作復選框(checkbox)的一些技巧總結

方式 undefine 關系 this 選擇 checkbox clas AR 1.7 1、獲取單個checkbox選中項(三種寫法) $("input:checkbox:checked").val()或者$("input:[type=‘checkbox‘]:chec

Android開發的一些技巧

本篇講述的是Android開發中遇到的一些好用的小技巧,或者一些實用的API,很多人都知道,但也有人不知道,記錄下來,如果能幫助到大家,也是極好的.有些工具和類我也會經常用,所以我會根據自己的想法去寫.有些地方坐在並沒有將這個工具的作用講出來,我會補充上去. 正文: Environ

Mybatis的一些技巧

提升sql執行效率的小技巧 <!--為什麼要這麼寫?這樣寫可以提高sql的執行效率。而寫*,需要Oracle去資料庫查出欄位名,再拼接查詢--> <sql id="Base_Column_List" > ID, PRO_PARAM_DETAIL_ID, START_

第五篇博文 記錄一些技巧 ---持續更新

2018-10-10更新 1、針對windows系統桌面圖示過多的問題 見過很多同事電腦的windows系統桌面圖示佈滿了整個桌面,像我這種沒有密集恐懼症的看著都不是很舒服,個人建議處理方法如下: win7系統 對於軟體的快捷方式,可以採用英文首字母重新命名,例如Q