新四季網

一種監控sql語句性能的方法

2023-08-04 01:26:11

一種監控sql語句性能的方法
【專利摘要】本發明提供一種監控SQL語句性能的方法,屬於計算機系統設計領域和資料庫領域,利用讀取oracle的數據字典以及作業系統級的性能數據來監控相關SQL語句的性能,減少對於圖形化界面工具的依賴,該發明解決了傳統圖形化管理工具的高成本、難管理的特點,縮短了資料庫維護人員的處理時間。
【專利說明】—種監控SQL語句性能的方法
[0001]【技術領域】
本發明涉及計算機系統設計領域和資料庫領域,具體涉及一種監控機構化查詢語言(Structured Query Language, SQL) SQL 語句性能的方法。
【背景技術】
[0002]在當前高速發展的資訊時代,IT系統性能問題一直是橫亙在技術人員面前一座難以逾越的大山。各種性能優化的方法被不斷地探索出來。在各種基於資料庫的系統中,為保證語句的查詢效率,IT公司紛紛開發了許多技術,從各個方面提供支持。在SQL的優化和調優方面,Oracle的gridcontrol、OEM等工具,以及其他第三方圖形化工具都做得比較好。但是這些圖形化工具在一些極端情況下,例如資料庫沒有裝資料庫或者第三方工具收費,如何監控資料庫SQL語句性能成為一個問題。

【發明內容】

[0003]此種在字符界面下監控SQL語句性能的方法是通過查詢數據字典來獲SQL語句的性能指標來監控SQL語句的性能本
本發明主要是利用oracle的MMON以及MMNL進程收集的性能數據作為源數據,通過對源數據不同層面的分析得出相應的sql性能數據,根據定義的閥值來給相關人員發送預警郵件或者簡訊,從而提高工作效率。本發明的設計方法是當某個測量值(metrics)超過了預設的限定值(threshold value)後提交警告,並創建新的MMON隸屬進程(ΜΜ0Ν slaveprocess)來進行快照(snapshot),捕獲最近修改過的SQL對象的統計信息,而對於輕量級的且頻率較高的和可管理性相關各種任務交給MMNL進程來完成,這2個進程將獲得數據寫入到WRM$_*和WRH$_*開頭的表中,通過讀取這些表中的數據來獲得相應sql的基本信息-包括sql的執行次數、執行時間、變量值、cpu消耗、io消耗、內存消耗以及各種的等待事件,通過對這些基本指標的監控類來達到監控sql語句性能的目的。
[0004]該設計結構包括=Oracle後臺進程模塊(I)、問題進程模塊(2)、問題sql模塊
(3)、問題sql資源消耗以及執行計劃模塊(4)、接口模塊(5);
oracle後臺進程模塊,後臺進程模塊是集成在oracle內部,有oracle自動來維護,負責來收集客戶端發出的sql語句的相關數據,並根據相關定義來定時運行;
問題進程模塊,通過系統級別定位到問題進程,主要是通過對系統資源的監控包括對cpu的消耗、io的消耗、內存的使用、文件打開數、打開的進程數等資源來得到問題進程;問題sql模塊,通過進程模塊獲得問題進程的id,然後通過字典視圖獲得該進程執行的sql_id,通過sql_id可以獲得該進程執行的sql語句文本;
問題sql資源消耗以及執行計劃模塊,通過sql模塊獲得sql_id來得到sql語句的執行計劃,然後通過分析該執行計劃得到該這個sql語句最消耗資源的原因;
接口模塊,通過對郵件或者簡訊系統接口的調用將問題sql發送給相關維護人員,以便及早發現問題。[0005]本發明的有益效果是:通過在出現性能問題時段MMON以及MMNL進程收集的性能數據為依據,先找到最消耗資源的進程,其中包括最消耗CPU、最消耗內存、最消耗io、執行次數最多、硬解析最多、version過多、consistent read過多、segment最大等,通過找到該進程的id來獲得該進程執行的sql語句,然後通過autotrace、explain、dbms等方法獲得該sql語句的執行計劃。通過對sql語句執行計劃的解讀來獲得該sql語句主要消耗的資源以及他的等待事件,比如發現該語句的io消耗最大,查看他的執行計劃的時候發現是在一個大表的全表掃描、那麼就應該考慮是否應該在相應的欄位上增加索引、是否需要分區、是否需要建立全局或者是本地索引、是否需要對大表的一些歷史數據進行清理、是否這個sql語句需要進行調整等來避免全表掃描,通過對相應的語句進行調整從而使得這類建議更加自動化的提示給管理人員,而且因為是通過sql語句進行相應資源的查詢,這樣更容易實現定製化,可以根據自己的需要在出現問題是發出相應的警告,而且sql語句的接口是標準化的減少了開發的工作量。
[0006]這種字符界面下監控sql語句的方法具有上述優點,使其彌補了在無圖形界面的情況下無法監控sql語句性能的不足,大大提高了 DBA的工作效率與工作質量,減輕了 DBA日常維護的工作量,提高了 DBA對問題的相應速度跟時間,而且由於可定製化使得該方法在無法使用圖形化的情況下有很高的技術價值。
【專利附圖】

【附圖說明】
[0007]附圖1為本發明的邏輯結構圖。
【具體實施方式】
[0008]下面參照附圖,對本發明的內容以監控單個sql性能為例,描述這一結構的實現過程。
[0009]正如
【發明內容】
中所描述的,本發明的邏輯實現結構設計方法主要包括=Oracle後臺進程模塊(I)、問題進程模塊(2)、問題sql模塊(3)、問題sql資源消耗以及執行計劃模塊(4)、接口模塊(5)。
[0010]一種監控SQL語句性能的方法的邏輯結構包括,oracle後臺進程模塊負責收集sql語句的相關信息,包括在規定時間內相關sql語句的執行次數,執行時間,解析次數,子遊標數等,然後將這些數據存放在相應的字典表中,為後續的監控提供最原始的數據;問題進程模塊根據進程資源消耗(包括進程消耗的cpu、內存、打開文件數、語柄數、io)的情況來判斷該進程是否是問題進程,從而決定是否將該進程id發送給sql模塊,該模塊從系統級來判斷,這從2個層面進行性能監控從而獲得全面、完整的性能數據,如果有多個進程消耗資源達到了閥值線,那麼可以根據關心的指標進行排序得到資源消耗進程列表;問題sql模塊根據進程模塊提供的進程id號來獲取該進程的sql_id,然後根據該sql_id來獲取該進程執行的sql文本,根據數據字典信息可以獲得該sql語句的變量值從而判斷是否是因為直方圖或者是綁定變量窺測造成的問題,給開發人員跟維護人員一個可讀的結果;問題sql資源消耗以及執行計劃模塊,通過sql模塊提供的sql_id來獲取該sql的執行計劃以及獲取該sql對資源的消耗情況,從而得到該sql到底在哪一步最消耗資源,進而判斷該sql的執行計劃是否正確;接口模塊,通過郵件系統或者是簡訊系統將該進程執行的sql文本、資源消耗以及執行計劃發送給相關人員從而讓相關人員及時得到相關信息,提高處理問題的相應時間。
【權利要求】
1.一種監控SQL語句性能的方法,其特徵在於該設計結構包括=Oracle後臺進程模塊(I)、問題進程模塊(2)、問題sql模塊(3)、問題sql資源消耗以及執行計劃模塊(4)、接口模塊(5); oracle後臺進程模塊,後臺進程模塊是集成在oracle內部,有oracle自動來維護,負責來收集客戶端發出的sql語句的相關數據,並根據相關定義來定時運行; 問題進程模塊,通過系統級別定位到問題進程,主要是通過對系統資源的監控包括對cpu的消耗、io的消耗、內存的使用、文件打開數、打開的進程數等資源來得到問題進程;問題sql模塊,通過進程模塊獲得問題進程的id,然後通過字典視圖獲得該進程執行的sql_id,通過sql_id可以獲得該進程執行的sql語句文本; 問題sql資源消耗以及執行計劃模塊,通過sql模塊獲得sql_id來得到sql語句的執行計劃,然後通過分析該執行計劃得到該這個sql語句最消耗資源的原因; 接口模塊,通過對郵件或者簡訊系統接口的調用將問題sql發送給相關維護人員,以便及早發現問題。
【文檔編號】G06F17/30GK103793526SQ201410061517
【公開日】2014年5月14日 申請日期:2014年2月24日 優先權日:2014年2月24日
【發明者】初賢哲 申請人:浪潮電子信息產業股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀