zCloud使用技巧:如何使用效能下鑽功能分析SQL效能問題
作為金融機構業務系統的資料承載——資料庫,在金融科技快速發展的過程中,隨著網際網路化、業務敏捷化等業務場景的轉變,資料庫效能也受到了極大的挑戰。為了加快資訊化建設的步伐,雲和恩墨助力於某全國性專業財產保險公司實現IT資訊化建設的發展,資料庫zCloud雲管理平臺幫助客戶加快實現自動化運維的程式。
針對zCloud的一些特定功能,讓我們跟隨著雲和恩墨駐場工程師小秦(化名)在實際操作中來詳細瞭解這款精心雕琢的產品。
zCloud雲管平臺可以透過監控來幫助我們快速的定位以及解決資料庫問題。
第一種是常規監控:透過監控資料庫執行狀態,包括錯誤告警、會話數、常規效能指標、空間使用率等。
第二種是實時效能監控:透過收集全方位的效能指標,在出現效能問題時,透過等待事件、SQL語句、執行計劃、以及相關聯的物件,幫助資料庫管理人員快速診斷複雜的效能問題,並提出效能最佳化建議。
下面透過幾個場景來演示zCloud在效能下鑽方面的表現:
在效能頁面,選擇一個時間段,可以清晰的看到這個時間段影響效能的TOP SQL,可以幫助我們快速的定位該SQL執行時間。如果關心更詳細的資訊,可以點選SQL ID下鑽到SQL效能詳情頁面。
在SQL效能詳情頁面,可以看到完整的SQL文字、效能資料、執行計劃、效能分析、等待事件以及會話的基本資訊等。在新版本中支援SQL文字格式化。
如下圖所示SQL文字頁面展示執行該SQL的完整SQL語句。
在效能資料頁面,可以還可以瞭解該SQL執行的整體統計,內容包括今天的執行次數、最近活躍時間、執行時間等。
在執行計劃頁面可以看到該SQL的執行計劃,可以根據執行計劃來對SQL進行最佳化,並且在該頁面可以看到該SQL所涉及的物件資訊。
效能分析頁面,透過智慧分析引擎,zCloud可以對SQL提出建立索引的建議,我們可以根據實際環境來對該SQL進行判斷,是否可以根據該建議來進行最佳化。
事務鎖分析頁面展示鎖的資訊,後面會話阻塞分析是樹形結構,此處鎖資訊是橫向展示鎖的資訊。當資料庫會話較多時可以幫助我們準確的定位哪個會話產生了鎖。
在業務同步一些資料使用insert等操作,可能會導致一些表的統計資訊不準確,在表連線時產生笛卡爾積導致臨時表空間擴充套件,如下圖所示,這時臨時表空間的使用量並不高,但是,使用量在23:13-23:43之間從3GB增加到96GB,透過temp表空間使用趨勢,我們可以定位到23:13-23:43時間段該臨時表空間異常擴充套件;接下來我們就可以透過實時效能來查詢該時間段的問題SQL。
在實時效能頁面我們可以查詢最近48小時內的效能資料,接下來在實時活動會話中選取我們所要查詢的時間段。
如下圖所示,選定時間框後,下邊一欄會展現出該時間段的TOP SQL和TOP SESSION,我們可以按照Activity%的大小來檢視SQL(TOP SQL處的Activity%為不同的wait class在ASH中出現的次數與ASH中總的次數的比值),點選SQL_ID可以下鑽到SQL效能詳情頁面。
如下圖所示,在SQL效能詳情頁面的等待事件中發現了direct path write temp等待事件。
同時在執行計劃頁面發現merge join cartesian,並且發現該表的統計資訊中行數為0。
最終和業務溝通後,該表所在的儲存過程中每次都先truncate table,之後進行insert,導致統計資訊中記錄該錶行數為0,產生笛卡爾積連線。
面對各種突發狀況,雲和恩墨zCloud資料庫雲管平臺不斷吸取經驗,進行全面的最佳化和改進,彙集各行業更多客戶對安全管理、持續資料最佳化管理的典型需求,不斷增強平臺對內、對外的服務質量管理。在未來,雲和恩墨還將引領國產的資料庫雲管平臺走向一個新的高度。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31556440/viewspace-2679822/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用 Chrome 開發者工具的 lighthouse 功能分析 web 應用的效能問題ChromeWeb
- 【MySQL】如何使用SQL Profiler 效能分析器MySql
- SQL效能優化技巧SQL優化
- openresty使用火焰圖排查效能問題REST
- 【效能測試】常見的效能問題分析思路(二)案例&技巧
- 如何使用SAP HANA Studio的PlanViz分析CDS view效能問題View
- 使用 Unity 開發 Android 遊戲時如何追蹤效能問題UnityAndroid遊戲
- 如何使用AWR報告來診斷資料庫效能問題資料庫
- 如何分析報表效能問題
- 如何使用 dotTrace 來診斷 netcore 應用的效能問題NetCore
- oracle效能問題:sql語句優化OracleSQL優化
- 使用awr來診斷資料庫效能問題資料庫
- 使用EJB遠端介面帶來的效能問題
- 使用profiler測試Oracle PL/SQL效能OracleSQL
- ORACLE 使用TRACE進行SQL效能分析OracleSQL
- 使用 IBM 效能分析工具解決生產環境中的效能問題IBM
- MySQL下Limit使用及效能分析MySqlMIT
- 如何解決soap的效能問題?
- 一個SQL效能問題的優化探索SQL優化
- Faiss使用多執行緒出現的效能問題AI執行緒
- 如何使用效能分析工具定位SQL執行慢的原因?SQL
- QtWebEngine效能問題QTWeb
- WebService效能問題Web
- 如何使用css繪製鑽石CSS
- 高水位線下空閒塊過多導致的SQL效能問題SQL
- iOS開發那些事-效能優化–autorelease的使用問題iOS優化
- sql server datediff函式引發的效能問題SQLServer函式
- 如何使用SQL查詢檢視,Postico使用技巧分享~SQL
- 如何使用函式來優化效能函式優化
- 效能優化問題優化
- JSF效能問題JS
- 活字格效能最佳化技巧(1)——如何利用資料庫主鍵提升訪問效能資料庫
- 使用DBMS_PROFILER進行PL/SQL效能分析SQL
- iOS使用Instrument Time Profiler工具分析和優化效能問題iOS優化
- 包含OLAP元件SCHEMA使用imp匯入碰到嚴重效能問題元件
- SQL執行計劃異常引起的效能問題SQL
- SQL執行計劃異常 引起的效能問題SQL
- 快速定位隱蔽的sql效能問題及調優SQL