[20151214]exadata-豆腐渣系統的保護神.txt
[20151214]exadata-豆腐渣系統的保護神.txt
--很久以前寫的http://www.itpub.net/thread-1927992-1-1.html,忘記貼到blog,補上。
--這個完全是由感而發,這個是前幾個星期遇到的事情,由於上面統一發票格式,對程式做一些改動.
--上線後我發現一條sql語句存在問題,實際加入的部分使用union all連線起來,前面那部分以前也是存在問題的,
--我使用sql profile把執行計劃穩定下來,在加入union all後,執行計劃再次回到原來的狀態.
--其中2個表1個500M,1個7.XG,全表掃描,做bloom filter,再使用hash join連線起來,我看了大約有10臺機器在執行這個語句,
--是一個刷屏命令,30秒定時執行1次.這樣1個小時大約1200次.
--我自己執行看了大約4秒執行完成,真快!!我這次沒有使用sql profile穩定計劃,因為即使那樣,邏輯度也很高.
--我直接提交要求開發改程式碼.當然我並沒有講如何改,因為我認為開發應該很容易發現問題修改程式碼.
--結果,沒有任何人重視,就這樣一直拖了2個星期,直到星期六早上出現效能問題,我事後看了報表:
--10:11點:
Top 10 Foreground Events by Total Wait Time
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Tota Wait % DB
Event Waits Time Avg(ms) time Wait Class
------------------------------ ------------ ---- ------- ------ ----------
DB CPU 10.8 48.9
gc buffer busy acquire 12,869,510 4860 0 22.0 Cluster
read by other session 10,487,086 4153 0 18.8 User I/O
cell single block physical rea 5,050,453 1499 0 6.8 User I/O
cell multiblock physical read 3,725,544 1301 0 5.9 User I/O
SQL*Net more data from client 230,252 157. 1 .7 Network
SQL*Net more data to client 4,702,358 57.2 0 .3 Network
log file sync 115,817 44.2 0 .2 Commit
SQL*Net break/reset to client 137,108 37.7 0 .2 Applicatio
SQL*Net message to client 14,156,077 30.1 0 .1 Network
--很明顯問題出在rac的內聯方面。
--檢視SQL ordered by Cluster Wait Time部分:
SQL ordered by Cluster Wait Time DB/Inst: DBCN/dbcn1 Snaps: 5465-5466
-> %Total - Cluster Time as a percentage of Total Cluster Wait Time
-> %Clu - Cluster Time as a percentage of Elapsed Time
-> %CPU - CPU Time as a percentage of Elapsed Time
-> %IO - User I/O Time as a percentage of Elapsed Time
-> Only SQL with Cluster Wait Time > .005 seconds is reported
-> Total Cluster Wait Time (s): 4,863
-> Captured SQL account for 98.1% of Total
Cluster Elapsed
Wait Time (s) Executions %Total Time(s) %Clu %CPU %IO SQL Id
-------------- ------------ ------ ---------- ------ ------ ------ -------------
4,772.2 1,050 98.1 18,000.4 26.5 38.0 37.6 dz7bbcwhuhhp7
Module: XXX.EXE
SELECT MS_CF01.CFHM, MS_CF01.CFSB, MS_CF01.BRXM,
MS_CF01.BRID, MS_CF01.FPHM, MS_CF01.CFLX, MS_CF0
1.KFRQ, MS_CF01.CFTS, MS_CF01.FYRQ, MS_CF01.
FYCK, MS_CF01.KSDM, MS_CF01.YSDM, MS_MZXX.CZGH,
--在另外的例項2上看到:
SQL ordered by Cluster Wait Time DB/Inst: DBCN/dbcn2 Snaps: 5465-5466
-> %Total - Cluster Time as a percentage of Total Cluster Wait Time
-> %Clu - Cluster Time as a percentage of Elapsed Time
-> %CPU - CPU Time as a percentage of Elapsed Time
-> %IO - User I/O Time as a percentage of Elapsed Time
-> Only SQL with Cluster Wait Time > .005 seconds is reported
-> Total Cluster Wait Time (s): 2
-> Captured SQL account for 54.4% of Total
Cluster Elapsed
Wait Time (s) Executions %Total Time(s) %Clu %CPU %IO SQL Id
-------------- ------------ ------ ---------- ------ ------ ------ -------------
1.0 1 56.2 13.0 7.4 73.6 11.1 b6usrg82hwsa3
Module: DBMS_SCHEDULER
call dbms_stats.gather_database_stats_job_proc ( )
--估計是系統分析了表ms_cf01導致資料大部分在第2個例項,導致出現cluster相關的等待事件。
--實際上我看最後的分析時間並沒有變化,並沒有分析成功.有點不明白?而且上面的執行時間很短僅僅13秒.
--我們正常這條語句都在例項1上執行,為什麼表ms_cf01資料大量在例項2上,還是不明白?
--例項1上:
Segments by Global Cache Buffer Busy
% of Capture shows % of GC Buffer Busy for each top segment compared
with GC Buffer Busy for all segments captured by the Snapshot
Owner Tablespace Name Object Name Subobject Name Obj. Type GC Buffer Busy % of Capture
xxxxxx_xxx xxxxxx_xxx MS_CF01 TABLE 18,524,883 100.00
--實際上當時緊急修改了程式碼,但是依舊有機器在執行這條語句.我們的系統要退出才會自動升級.
--至少當時的下午已經恢復正常.
--我那這條語句在dg上執行,第1次4分鐘,第2次1分鐘多一點.
--正好前一陣子幫別人解決問題,聽說對方也準備上exadata,我感覺國內許多大單位都有意上exadata,而不願意花精力在解決程式以及
--設計的問題上。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-1871999/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20180828]exadata--豆腐渣系統的保護神.txt
- [20180810]exadata--豆腐渣系統的保護神.txt
- Linux系統安全保護Linux
- Windows8系統保護的作用Windows
- windows10系統開啟系統保護的方法Windows
- 呼叫系統螢幕保護 (轉)
- 保護企業系統中的程式碼安全
- 19-作業系統安全保護作業系統
- LINUX的系統核心空間的保護(轉)Linux
- HMAC演算法:資料傳輸的保護神Mac演算法
- 保護你的 Fedora 系統免受這個 DHCP 漏洞
- Win10系統解除qq保護模式的方法Win10模式
- 用日誌系統保護Linux安全Linux
- 保護Solaris系統安全小竅門(轉)
- 千兆應用入侵防護系統保護解決方案(轉)
- win10如何禁用增強保護_win10怎麼禁用系統保護Win10
- Win10系統如何設定護眼色 Win10系統設定保護色的方法Win10
- 網路安全的保護神——亢天防黑牆(轉)
- 高併發架構下的系統限流保護策略架構
- windows10系統保護的關閉方法【圖文教程】Windows
- 保護工控系統網路安全的關鍵三步
- Tails:專注於隱私保護的口袋作業系統AI作業系統
- 視訊通訊保障系統為‘救護車安全保駕護航’
- 小心設定啟動項保護Windows系統安全Windows
- Fortinet運用前沿IT思維,保護OT系統
- 預言機智慧計算系統全程保駕護航
- 淺談資料庫系統安全保護機制資料庫
- Linux的系統的安全如何保障?保護Linux系統安全的九個常用方法Linux
- 交易所開發系統最主要的要能保護交易安全
- 保護系統 用資料庫加密實現資料的安全資料庫加密
- 詳解Linux作業系統的核心空間保護(轉)Linux作業系統
- win10系統如何關閉密碼保護共享Win10密碼
- 學會認識vista系統IE保護模式模式
- win10系統怎麼設定螢幕保護?Win10
- 自我保護 菜鳥系統安全自檢手冊(轉)
- 資料保護管理:清晰呈現複雜系統(轉)
- Win10系統怎樣關閉Windows檔案保護 win10關閉windows檔案保護的步驟Win10Windows
- windows10系統關閉dep資料執行保護的方法Windows