成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle提高SQL在數據庫中執行效率,不得不看

數據庫 Oracle
以下的文章主要講述的是Oracle提高SQL執行效率的3種較為實用的方法,其中包括正確使用ordered的提示,對utheordered_predicates的實際操作等相關內容描述。

如果你想對Oracle提高SQL在Oracle數據庫中的實際執行效率大大提高的話,你首先要優化其實際應用的業務邏輯是最為主要的,以下的文章主要是從技術層面來講Oracle也提供了一些方法,今天主要講3種:

Oracle提供了多種方法用于減少花在剖析Oracle SQL表達式上的時間,在執行帶有大量執行計劃的復雜查詢時剖析過程會拖累系統的性能。現在我們來簡要地看看這些方法中的幾種。

1、使用ordered提示

Oracle必須花費大量的時間來剖析多表格的合并,用以確定表格合并的***順序。如果SQL表達式涉及七個乃至更多的表格合并,那么有時就會需要超過30分鐘的時間來剖析,因為Oracle必須評估表格合并所有可能的順序。八個表格就會有40,000多種順序。Ordered這個提示(hint)和其他的提示一起使用能夠產生合適的合并順序。

Ordered這個提示會要求列在Oracle提高SQL表達式FROM字句里的表格按照指定的順序進行合并,FROM字句里的***個表格會指定驅動表格(driving table)。驅動表格應該是返回最小行數的表格。使用ordered提示會跳過非常耗時和耗資源的剖析操作,并加快Oracle SQL的執行。

Listing A如下:

以下是引用片段:

 

  1. Listing A  
  2. select /*+ ordered use_nl(bonus)  
  3. parallel(e, 4) */ e.ename, hiredate, b.comm from emp e, bonus b  
  4. where e.ename = b.ename ;  

 

Listing A里是一個復雜查詢的例子,這個查詢被強制進行一個嵌套循環,從而與對emp表格進行的并行查詢合并。要注意,我已經使用ordered提示來引導Oracle去按照WHERE子句所列出的順序來評估表格。

2、使用theordered_predicates

ordered_predicates提示在查詢的WHERE子句里指定的,并被用來指定布爾判斷(Boolean predicate)被評估的順序。在沒有ordered_predicates的情況下,Oracle會使用下面這些步驟來評估Oracle提高SQL判斷的順序:

子查詢的評估先于外層WHERE子句里的Boolean條件。

所有沒有內置函數或者子查詢的布爾條件都按照其在WHERE子句里相反的順序進行評估,即***一條判斷***被評估。

每個判斷都帶有內置函數的布爾判斷都依據其預計的評估值按遞增排列。

你可以使用ordered_predicates提示來強制取代這些缺省的評估規則,那么你WHERE子句里的項目就會按照其在查詢里出現的順序被評估。在查詢的WHERE子句里使用了PL/SQL函數的情況下,通常會使用ordered_predicates提示。如果你知道限制最多的判斷并且希望Oracle***評估這些判斷的時候,在這種情況下,它也是非常有用的。

用法提示:你不能使用ordered_predicates提示來保存對索引鍵進行判斷評估的順序。

3、限制表格合并評估的數量

Oracle提高SQL剖析性能的***一種方法是強制取代Oracle的一個參數,這個參數控制著在評估一個查詢的時候,基于消耗的優化器所評估的可能合并數量。

optimizer_search_limit這個參數會指定表格合并組合的***數量,后者將會在Oracle試圖確定合并多表格***方式的時候被評估。這個參數有助于防止優化器花更多的時間來評估可能的合并順序,而不是把時間花在尋找***合并順序上。

optimizer_search_limit還控制著用于調用star join提示的闕值,當查詢里的表格數量低于optimizer_search_limit(其缺省的值是5)的時候,star提示就會被光顧。

以上只是一些Oracle DBA用來優化Oracle數據庫應用程序SQL查詢的性能的一些小技巧。

【編輯推薦】

  1. 如何正確對Oracle database link進行布式
  2. Oracle redo的條目主要包含的內容
  3. Oracle通過存儲過程如何正確返回數據集?
  4. Oracle數據庫中常用時間的正確處理方案
  5. 如何正確把Oracle數據導出成Txt 的格式?
責任編輯:佚名 來源: 博客園
相關推薦

2010-05-25 09:58:43

MySQL數據庫

2010-05-18 10:34:29

MySQL數據庫備份

2010-06-12 15:03:55

2010-07-23 18:39:52

SQL Server游

2010-04-21 17:19:29

Oracle創建

2010-05-26 15:58:52

MySQL遠程連接

2010-05-10 13:01:03

OracleDBA面試

2010-05-21 09:40:57

MySQL出錯代碼列表

2010-05-05 11:30:21

2014-10-30 13:38:55

編程算法程序員

2010-05-26 13:14:22

MySQL錯誤解決方案

2010-08-02 11:01:29

DB2 Resotre

2017-05-17 14:46:22

容器DockerLinux

2019-12-10 15:30:27

SaaSIaaS云計算

2019-04-09 13:10:44

工業大數據互聯網工業生產

2018-11-12 14:17:05

Oracle數據庫Oracle書籍

2010-08-18 11:36:40

DB2簡史

2010-08-18 15:01:08

DB2 9安裝方法

2010-09-28 09:42:16

2010-09-29 17:36:00

管理平臺
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色狠狠桃花综合 | 国产一区二区在线免费播放 | 一区二区三区视频 | 在线亚洲免费 | 97精品国产一区二区三区 | 欧美日韩亚洲系列 | 久久激情网 | 99久久精品免费看国产四区 | 网站一区二区三区 | 国内精品久久久久久 | 奇米超碰在线 | www网站在线观看 | 不卡视频一区 | 久草福利| 91久久精品日日躁夜夜躁国产 | 久久久久无码国产精品一区 | 国内精品在线视频 | 亚洲欧美日本在线 | 亚洲aⅴ精品 | 成人免费视频观看 | 在线免费91| 在线中文字幕亚洲 | 一级片毛片| 日韩精品1区2区3区 爱爱综合网 | 成人精品 | 亚洲视频免费观看 | 亚洲精品乱 | 久久中文字幕一区 | 观看av | 91大片 | 日本高清不卡视频 | 欧美国产精品一区二区三区 | 亚洲成av人片在线观看无码 | 中文字幕精品视频 | av免费在线播放 | 久久一及片 | 91精品无人区卡一卡二卡三 | 亚洲欧洲一区二区 | 亚洲精品www久久久久久广东 | 亚洲精品一区二三区不卡 | 亚洲逼院 |