Redo wastage產生的原因
Redo wastage產生的原因
在v$sysstat中有一個統計是redo wastage,這個究竟是什麼意思,為什麼匯產生這個問題哪?reod wastage會對系統的效能產生影響嗎?
1、為什麼會產生redo wastage?
我們都熟知產生的redo會先寫入到redo buffer中,然後Oracle中的LGWR程式會根據某些觸發條件將redo buffer中的redo寫入到redo檔案中。redo檔案一般塊是512,除去每個塊有16位元組的塊頭,真正能夠使用的部分512-16。而redo檔案在邏輯上是有redo record組成。LGWR寫入redo的時候,會在redo檔案中留下一些沒有使用的空間,例如圖:
這部分看見的產生主要願意是因為在LGWR寫入redo檔案的時候,需要釋放redo allocation latch,而在釋放之前,由於系統的事務需要不停進行,既然要進行就需要不停產生事務redo,而這些redo也是需要不能中斷寫入到redo buffer中,如果不能這樣的話,系統就會等待,就會停滯。所以在釋放之前必須給隨後的redo寫一個新的buffer空間的起始位置。而這個其實位置就是存放在SGA中的fixed area中的一個index(應該是一個指標)。這個index就是告訴Oracle redo buffer寫的起始位置。在分配這個index的時候,oracle會跳過當前已經使用塊,在下一個沒有使用的塊上分配,而LGWR寫的時候也是一塊一塊寫入到redo檔案中,相應的這部分沒有完全使用的塊也是按照原來的情況寫入到redo檔案中,這就造成現在這種redo wastage的狀態。
2、redo wastage過多的原因
redo wastage的產生是正常的現象,但是如果redo wastage過多的情況產生的話就可以有問題了,這就說明LGWR過於頻繁。而LGWR過於頻繁的結果是需要過多的再如redo latch和redo寫的IO。因為LGWR寫的觸發條件是:
n 1/3 buffer被使用
n commit
n redo size > 1M
n DBWR寫
可以從redo buffer的大小和commit次數來著手。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/222350/viewspace-972511/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 延遲塊清理介紹(select也會產生redo的原因)
- Oracle中undo 如何產生RedoOracle
- 產生top sql的原因(zt)SQL
- sqlldr載入會產生redo嗎?SQL
- 線上非rman備份產生和普通操作產生的redo大小比較
- 每天產生REDO歸檔日誌量
- iebugs產生的原因,zoom:1的作用OOM
- Oracle產生redo日誌量大小統計Oracle
- Oracle 什麼時候select會產生redo?Oracle
- 產生《Oracle DBA高效入職指南》原因Oracle
- 瞭解下Mysql的間隙鎖及產生的原因MySql
- oracle 9i臨時表產生過多redoOracle
- Oracle資料庫減少redo日誌產生方式Oracle資料庫
- LMT更新file header bitmap不產生redo和undo ?Header
- SQL*Net message from client 事件產生的原因分析SQLclient事件
- impdp操作產生大量UNDO的原因及解決方法
- 【恩墨學院】Oracle Redo的產生場景及最佳化Oracle Redo
- IMU模式下DML語句所產生的REDO RECORD格式解讀模式
- android ANR產生原因和解決辦法Android
- oracle redo日誌產生量測試及比較1Oracle Redo
- vi/vim配置篇:亂碼產生的原因及解決
- 對序列進行遷移時產生間斷的原因
- 轉roger大師_計算sql語句產生的redo和undo大小SQL
- 插入相同的資料量普通表和臨時表產生的redo對比
- 生產系統 SQL 執行異常原因分析SQL
- Linux中產生zombie的原因詳解及解決方法!Linux
- 深度學習中“過擬合”的產生原因和解決方法深度學習
- Android記憶體洩漏產生的6大原因Android記憶體
- 一個不知道產生錯誤原因的javascript的問題。JavaScript
- 非IMU模式下一條update語句產生REDO RECORD條數的探究模式
- Redis擊穿、穿透、雪崩產生原因以及解決思路Redis穿透
- 關於websphere5.1產生大量heapdump檔案原因Web
- 一文簡析電感噪音產生的常見原因分析
- 深入探討ORA-04031的產生原因及解決方法
- 非IMU模式下DML語句產生的REDO日誌內容格式解讀模式
- oracle redo日誌產生量測試及比較2_insertOracle Redo
- move和shrink的原理和redo的產生 ,利用rowid的含義實用block個數BloC
- ORA-00214 錯誤產生原因與解決方法