91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle中怎么優化復雜視圖

發布時間:2021-08-04 14:19:46 來源:億速云 閱讀:300 作者:Leah 欄目:數據庫

Oracle中怎么優化復雜視圖,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

優化方法

如果可以將這類視圖中常用的謂詞條件直接寫入視圖內,且寫成動態的,同時將常用查詢列按選擇性由大至小創建組合索引,則優化器可以盡可能地使用索引直接獲取數據,再進行過濾計算等操作,以此達到優化目的。具體操作步驟如下:

(1)創建一個輔助包,并創建兩個函數,實際情況中若同時傳入多個條件可自行擴充包中方法,每一個條件需要增加兩個方法。

(2)修改視圖定義,將謂詞條件寫入至基表條件中,并重新編譯視圖。

性能對比

下面通過具體的例子來說明如何對復雜視圖進行優化。

通過將原視圖和優化后視圖進行對比,看出優化后視圖的執行計劃成本由349降到86,優化效果非常明顯。表中紅框部分內容需特別引起注意。

優化前視圖查詢的執行計劃是全表掃描,執行效率低下。優化后視圖查詢的執行計劃是索引范圍掃描。通過索引直接取出需要訪問的數據,再進行后續處理,性能較優化前有大幅提升。

需要指出的是,該方法只在訪問視圖中少量數據時效果明顯,如果訪問數據量大,該方法不適用。

表4.1 優化前視圖定義、查詢語句及執行計劃

Oracle中怎么優化復雜視圖

表4.2 優化后視圖定義、查詢語句及執行計劃

Oracle中怎么優化復雜視圖

通過以上分析對比可以清晰地看出,優化后的視圖可以使用索引且性能有了顯著提高。總結起來,對于復雜查詢優化思路應該是:如果視圖中訪問的是少量數據,則盡可能通過索引先取出需要處理的數據,然后再進行后續處理。此方法適用的前提是,復雜視圖使用各種常規優化方法(如增加索引,添加提示符等)都無效時。

但是,這一方法也有一定弊端,那就是與其它優化方法相比,此法需要做的前期工作較多,如建立輔助包,對原視圖進行修改和重新編譯。另外還需測試優化前后查詢結果是否一致,查詢前需調用輔助包,將查詢條件傳入視圖中,不過優化后的視圖是不需要加查詢條件的。

看完上述內容,你們掌握Oracle中怎么優化復雜視圖的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁阳县| 东港市| 九台市| 东兰县| 奉新县| 萨迦县| 侯马市| 株洲县| 嘉黎县| 临漳县| 栾川县| 苍溪县| 巴马| 南开区| 会同县| 鹤庆县| 马龙县| 和政县| 乐都县| 改则县| 麻城市| 济南市| 霸州市| 普定县| 高要市| 通河县| 两当县| 蓬莱市| 藁城市| 公安县| 如皋市| 巴南区| 博野县| 牡丹江市| 句容市| 孟村| 阿鲁科尔沁旗| 卢氏县| 米泉市| 枣强县| 黑山县|