国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Oracle Optimizer:遷移到使用基于成本的優化器-----系列1.1

瀏覽:2日期:2023-11-18 17:02:53
Oracle Optimizer:遷移到使用基于成本的優化器-----系列1.1 假如在Oracle以前的版本(7.0或更早)中開發應用程序,數據庫會采用基于規則的優化器(譯者注:以下稱RBO),本篇將幫助你理解Oracle優化器并遷移到基于成本優化器(譯者注:以下稱CBO)的幾種高效方法.下面是五大部分的第一部分第一部分1. 什么是優化器?2. 為什么要優化?3. 可用的優化器.4. 為什么要移除RBO?5. 為什么要遷移到CBO?第二部分1. 影響CBO的初始化參數.2. 影響CBO的Oracle內部參數.第三部分1. 升級至CBO的設置變化.2. 生成統計資料3. DML監視第四部分1. 提示.2. 存儲概要3. SYS模式的統計資料第五部分1. 新的權限2. 怎樣在CBO中分析執行計劃3. Oracle Application 11i的CBO具體信息4. 結論1. 什么是優化器?在Oracle中,執行一個查詢可能有不只一種方法,擁有最佳等級的執行計劃,或者說是最快速度最少成本返回輸出并達到最佳資源利用的執行計劃.優化器生成執行計劃。優化器是運行在數據庫中致力以得到基于不同條件下執行路徑列表的引擎并且選擇運行查詢的最高效執行計劃。一旦執行計劃生成,它將執行輸出。在Oracle中優化器與DML語句有關.2. 為什么要優化?你知道!優化一個針對執行時以最少時間和最佳的資源利用的查詢,意味著快速和高效。對于資源,意味著CPU利用情況,磁盤輸入輸出,內存消耗和其它范圍的網絡操作。不考慮你的服務器在這些資源上是多么充足,不適當或較不理想的的查詢總是付出昂貴的代價并拖慢你的任務,或者對服務器上的其它處理產生影響.依靠于各種因素的查詢范圍是昂貴的,包括抽取的結果集大小,掃描檢索結果集的數據的大小和系統的即時負荷。適當的語法優化將節省用戶運行時間的消耗和不必要的資源利用。3. 可用的優化器Oracle有兩種模式的優化器,基于規則和基于成本,它決定了最佳的執行計劃。本篇重點介紹CBO,簡要概述RBO.3.1; 基于規則的優化(RBO)RBO遵循簡單的分級方法學。 RBO使用15種級別要點,當接收到查詢,優化器將評估使用到的要點數目,然后選擇最佳級別(最少的數量)的執行路徑來運行查詢,15個要點級別如下: .使用ROWID的單獨記錄 .使用簇連接的單獨記錄. .使用散列簇主鍵的單獨記錄. .使用主鍵的單獨記錄. .簇連接. .散列簇連接 .索引簇主鍵. .復合主鍵. .單列主鍵. .索引列的結合范圍查找. .索引列的非結合范圍查找..排序合并連接..索引列的最大max或min.索引列的order by..全表掃描. 舉例來說,假如生成一個在where子句條件中精確匹配兩列的表的查詢,一列擁有主鍵(對應于使用主鍵的單獨記錄.)而別一列擁有非主鍵(對應于單列主鍵),則RBO更喜歡主鍵(對應于使用主鍵的單獨記錄.),而不是非主鍵(對應于單列主鍵).當在一個查詢中涉及到要訪問多個表,優化器需要確定那個表是驅動表.RBO生成一組連接順序,每一個表做為第一個表,然后優化器從執行計劃的結果集中選擇最理想的計劃.優化器評估不同條件諸如(最少的嵌套循環,最少的排序合并連接,最佳級別的表訪問路徑,等等),假如仍然不能比較出結果,則優化器會選擇查詢的FROM子句第一個表作為驅動表.因此,常規條件下的編碼實踐將把驅動表放在最右邊.其它的表按訪問順序跟隨在FROM子句中. 也就是說,表的順序是從右到左的訪問順序。請注重,用以搜索列的操作符也扮演著決定級別的角色,有時甚至考慮索引的時間作為級別例如下面的表證實了在列1和列2上的索引使用情況,假如它們兩個在where子句上用”=”連接例: select * from am79 where col1 = 1 and col2 = 'amar'; -- here both col1 and col2 are indexed. ------------------------------------------------------------------------------------- Normal index types;;Index used in RBO column1(a);;column2(b);column1+column2(c);; ------------------------------------------------------------------------------------- non-unique;;;;;non-unique;;c non-unique;;;;non-unique;;a + b non-unique;;;;non-unique;;;non-unique;;c uniquenon-unique;;a uniquenon-unique;;a uniqueunique b (the most recent index created) uniqueunique; unique c ------------------------------------------------------------------------------------- -The above is tested on Oracle 8.1.7.1. -In case of non-unique single column indexes, both indexes are used. -In case of unique indexes, they are not combined for execution plan, any one is taken. -Preference is given to the index available with the '=' operator column, than with others operators. -Don't create bitmap & function-based indexes, these will not work in RBO. -------------------------------------------------------------------------------------RBO偏好Oracle早期版本的大多數設置作為執行計劃路徑,這種選擇是統一的。 查詢總會產生同樣的方法對于運行在不同數據庫上相同的應用程序(待續).
標簽: Oracle 數據庫
主站蜘蛛池模板: 亚洲欧美一区二区三区在线 | 在线成人播放毛片 | 国产精品亚洲第一区柳州莫青 | 成人高清视频免费观看 | 一级毛片欧美大片 | 97se亚洲综合在线韩国专区福利 | 日韩欧一级毛片在线播无遮挡 | 手机亚洲第一页 | 亚洲综合国产精品 | 日韩一区二区中文字幕 | 亚洲国产一 | 成人国产在线看不卡 | av狼论坛| 手机看片欧美 | 免费看欧美一级特黄a毛片 免费看片aⅴ免费大片 | 亚洲国产精品线观看不卡 | 亚洲网站在线播放 | 日本三级香港三级人妇99视 | 国产精品视频一区二区三区 | 国产一区二区三区影院 | 国产精品88 | 欧美国产在线观看 | 大香伊蕉国产短视频69 | 深夜做爰性大片很黄很色视频 | 欧美一级人与动毛片免费播放 | 狠狠色狠狠色综合久久一 | 欧美一级视频精品观看 | 国产精品大全 | 亚洲欧美日韩国产综合 | 免费三级网 | 国产精品1区 2区 3区 | 国产日韩欧美久久久 | 自拍 欧美 在线 综合 另类 | 成人在线观看不卡 | 超清国产粉嫩456在线免播放 | 九九香蕉 | 久久色精品 | 久久99精品免费视频 | 91免费永久在线地址 | 毛片一区二区三区 | 国产成人免费在线 |