tft每日頭條

 > 科技

 > sql性能優化有哪些方法

sql性能優化有哪些方法

科技 更新时间:2024-09-27 12:10:07

  概述 衆所周知,SOL 優化是一個複雜的工程,首先要講究從整體到局部。今天主要從整體的角度來分析問題sql,先介紹下關于數據庫整體優化都有哪些性能工具。

  sql性能優化有哪些方法(sql整體調優--數據庫整體優化都有哪些性能工具)(1)

  什麼樣的sql需要優化?

  不同場景調優工具 這裡我們分成整體和局部兩個場景。

  關于局部分析調優工具,這個其實就是在說 SOL 的執行計劃了,這是 SOL 優化最重要的手段之一,通過分析執行計劃,我們可以知道 SOL 語旬的訪問路徑,知道它慢在哪裡,從而進行 SOL 優化。前面已經介紹了怎麼生成執行計劃,這裡就不解釋了。

  關于整體的調優工具,這裡我們先撇開主機、網絡、存儲等層面的因素,暫時從數據庫的整體層面入手。主要工具有 AWR、ASH, ADDM、AWRDD 這四個工具。其中 AWR 是關注數據庫的整 體性能的報告; ASH 是數據庫中的等待事件與哪些 SOL 具體對應的報告, ADDM 是 Oracle 給出的一些建議;而 AWRDD 是 Oracle 針對不同時段的性能的一個比對報告。

  sql性能優化有哪些方法(sql整體調優--數據庫整體優化都有哪些性能工具)(2)

  整體分析調優 我們一般獲取系統整體信息都是通過報告和日志獲取。就跟破案一樣, 這就是收集證據的階段。接下來要找到蛛絲馬迹,那就是如何發現問題。下面介紹下整體調優時需要關注提取到的這些報告的哪些要點、哪些關鍵字, 具體流程圖如下:

  sql性能優化有哪些方法(sql整體調優--數據庫整體優化都有哪些性能工具)(3)

  五大報告關注的要點 1.AWR 的關注點

  AWR 是 Oracle 10g 版本 推出的新特性, 全稱叫Automatic Workload Repository-自動負載信息庫,AWR 是通過對比兩次快照(snapshot)收集到的統計信息,來生成報表數據。

  AWR 報告是五大報告中最全面最重要的一個報告,它的相關指标也顯得格外重要。這裡我 們列出 DB Time、 load_profi le、 efficiency percentages、 top 5 events、 SOL Statistics、 Segment_statistics 這 6 個指标入手分析。

  2.ASH 的關注點

  ASH以V$SESSION為基礎,每秒采樣一次,記錄活動會話等待的事件。不活動的會話不會采樣,采樣工作由新引入的後台進程MMNL來完成。

  完成了 ASH 報告的獲取後,打開獲得的 ASH 報告,其實對于該報告可關注的東西非常直 接,就是看看哪些 SOL 和哪些等待事件是相關聯的。

  3. ADDM 的關注點

  ADDM(Automatic Database Diagnostic Monitor),就是通過診斷和分析awr得到的數據來推斷數據庫可能存在的問題,addm給出的建議是依照減少db_time為依據。每次收集完awr報告後,都會産生一個addm分析,分析結果在shared_pool裡,mmon進程定期将其寫入磁盤,AWR每産生一次快照,MMON進程就通知ADDM把AWR最近兩次快照之間的差值進行分析。因此,在默認情況下,每當有AWR的快照産生,ADDM将自動運行。通過em可以查看。所以說白了,addm應該是幫助我們發現問題的一個很好的工具。addm可以定位出很多問題,或許你想不到的,它都能幫你想到。

  由于這是 Oracle 的一些分析建議,所以 ADDM 的閱讀非常簡單,基本上從 FINDING 1、 FINDING 2 順序往下看就可以了。一般是從數據庫整體配置和局部 SOL 兩方面給出建議。

  4. AWRDD 的關注點

  AWRDD是用于比較兩個AWR快照,從而獲得不同一時候期的性能,在比較指标的變化。其實這個關注點很簡單,基本上就是 AWR 關注什麼, AWRDD 就關注什麼。

  5. AWRSQRPT 的關注點

  AWRSQRPT 主要用來查看sql的執行計劃,獲取AWRSQRPT報告的關鍵之處在于,交互部分要輸入所要分析的SQL的SQL_ID,這是關鍵之處。而這個SQL_ID可以從AWR報告中獲取。

  注意:oracle 的執行計劃可能會随着環境的變化而變化,會随着數據的變化而變化, 因此可能會産生多個執行計劃 , 這個 AWRSQRPT 就會出現多個執行計劃。

  關于sql整體優化方面内容就介紹到這了,後面會分享相關的一些腳本,感興趣的朋友可以關注下!

  sql性能優化有哪些方法(sql整體調優--數據庫整體優化都有哪些性能工具)(4)

  ,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved