?浙江11选5

19

10-2013

  Oracle數據庫厲行計劃的相關知識是本文我們主要要介紹的內容,我們首先介紹了厲行計劃的概念,然后給出了兩個厲行計劃的實例進行說明,最后介紹了Oracle優化器的形式以及厲行計劃對我們的用途,接下來就讓我們一起來了解一下這部分內容。  什么是厲行計劃  所謂厲行計劃,望文生義,即便對一個查詢任務,做出一份怎樣去告終任務的翔實計劃。舉個生存中的例子,我從珠海要去英國,我能夠抉擇先去香港然后起色,也能夠先去北京起色,可能去廣州也能夠。然而究竟怎樣去英國劃算,也即便我的開支起碼,這是一件劃算考究的事情。同樣對于查詢而言,我們提交的SQL僅僅是描寫出了我們的目標地是英國,但至于怎么去,等閑我們的SQL中是未曾給出提醒消息的,是由數據庫來定奪的。  我們先容易的看一個厲行計劃的比擬:SQL> set autotrace traceonly  厲行計劃一:以下是代碼片段:SQL> select count(*) from t;COUNT(*)———-24815Execution Plan0 SELECT STATEMENT Optimizer=CHOOSE10  SORT (AGGREGATE)21 TABLE Access (FULL) OF ‘T’  厲行計劃二:以下是代碼片段:SQL> select count(*) from t;COUNT(*)24815Execution Plan0 SELECT STATEMENT Optimizer=CHOOSE (Cost=26 Card=1)10  SORT (AGGREGATE)21 INDEX (FULL SCAN) OF ‘T_INDEX’ (NON-UNIQUE)(Cost=26 Card=28180)  這兩個厲行計劃中,第一個表示求和是穿越舉行全表掃描來做的,把全副表中數據讀入內存來逐條累加;第二個表示依據表中索引,把全副索引讀進內存來逐條累加,而無須去讀表中的數據。然而這兩種措施究竟哪種快呢?等閑來說可能二比一快,但也不是絕對的。這是一個很容易的例子演示厲行計劃的差異。對于混雜的SQL(表連接、嵌套子查詢等),厲行計劃可能幾十種甚至上百種,然而究竟那種良好呢?我們事前并不懂得,數據庫本身也不懂得,然而數據庫會依據定然的法定可能普查消息(statistics)去抉擇一個厲行計劃,等閑來說抉擇的是比擬優的,但也有抉擇失手的時候,這即便這次談論的價值所在。  Oracle優化器形式  Oracle優化器有兩大類,基于法定的和基于代價的,在SQLPLUS中我們能夠察看init文件中定義的缺省的優化器形式。以下是代碼片段:SQL> show parameters optimizer_modeNAME TYPEVALUEoptimizer_mode string  CHOOSESQL>

該日志 2013年10月19日發表在網絡安全技術分類下, 通告目前不可用,你可以至底部留下評論。
轉載請注明: Oracle數據庫厲行計劃詳解 | 鄭州計算機學校_鄭州電腦學校_鄭州電腦培訓
11选五一定牛云南走势图