一次優化log_buffer_space的經歷
當向一張表中插入大量資料時,EM中發現有log_buffer_space等待事件。該等待事件是由於重做量超出日誌緩衝區而產生的。
下面介紹實驗環境:
1. 日誌緩衝區預設大小6M。
2. 表的行寬:NUMBER(9)*1+NUMBER(1)*76=85
3. 計劃一次插入1百萬行。
lgwr什麼時候開始空工作的,它要有觸發他的動作
A. 重做日誌緩衝區的已使用的空間達到三分之一時
B. 當dbwn程式向磁碟寫入已修改的緩衝區的時候
C. 每隔3秒鐘
D. 使用者提交事務處理時的一條提交記錄(經常commit會及時重新整理重做日誌緩衝區空間)
如果我們每50,000行提交一次,那麼50,000*85>6M的1/3,因此根據上面的A,將觸發LGWR把log_buffer寫入redo log,這就是LOG BUFFER SPACE產生的原因!
知道了這點,我們調整為每20,000行提交一次,這樣提交前將不會超過日誌緩衝區的1/3。
比較一下,單次提交量和時間的區別:
結論,20,000最佳!
注意到:不是越小越好,比如10,000就比20,000花更多時間,批量提交應儘可能越多越好,但不能超過LOG BUFFER的1/3警戒線。
下面介紹實驗環境:
1. 日誌緩衝區預設大小6M。
2. 表的行寬:NUMBER(9)*1+NUMBER(1)*76=85
3. 計劃一次插入1百萬行。
lgwr什麼時候開始空工作的,它要有觸發他的動作
A. 重做日誌緩衝區的已使用的空間達到三分之一時
B. 當dbwn程式向磁碟寫入已修改的緩衝區的時候
C. 每隔3秒鐘
D. 使用者提交事務處理時的一條提交記錄(經常commit會及時重新整理重做日誌緩衝區空間)
如果我們每50,000行提交一次,那麼50,000*85>6M的1/3,因此根據上面的A,將觸發LGWR把log_buffer寫入redo log,這就是LOG BUFFER SPACE產生的原因!
知道了這點,我們調整為每20,000行提交一次,這樣提交前將不會超過日誌緩衝區的1/3。
比較一下,單次提交量和時間的區別:
25,000 | 00:04:37.62 |
50,000 | 00:04:50.34 |
10,000 | 00:04:40.33 |
20,000 | 00:04:35.52 |
結論,20,000最佳!
注意到:不是越小越好,比如10,000就比20,000花更多時間,批量提交應儘可能越多越好,但不能超過LOG BUFFER的1/3警戒線。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22621861/viewspace-1274302/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 記一次效能優化經歷優化
- 一次資料庫的優化經歷資料庫優化
- 一次非常有趣的 SQL 優化經歷SQL優化
- 一次非常有趣的sql優化經歷SQL優化
- 記一次真實的webpack優化經歷Web優化
- 一次生產事故的優化經歷優化
- 記一次使用策略模式優化程式碼的經歷模式優化
- 一次非常有意思的SQL優化經歷SQL優化
- 記一次我的 MySQL 調優經歷MySql
- 一次vue-cli 2.x專案打包優化經歷(優化xlsx外掛)Vue優化
- 記一次 Laravel 應用效能調優經歷Laravel
- 不斷優化配置,逐步提高效能——我的一次效能測試經歷優化
- 一次java面試經歷Java面試
- 記一次面試經歷面試
- MySQL全面瓦解21(番外):一次深夜優化億級資料分頁的奇妙經歷MySql優化
- 記錄一次微信分享的經歷
- 一次暴牛的Google面試經歷Go面試
- 記一次 Google 面試經歷Go面試
- 一次oracle sql調優的經歷(隱士轉換導致索引失效)OracleSQL索引
- 反思一次羞愧的阿里面試經歷阿里面試
- 記錄一次破解xjar加密的經歷JAR加密
- 記錄一次Mongodb被勒索的經歷MongoDB
- 記一次詭異的故障排查經歷
- 記一次面試後的經歷,求解篇面試
- 記一次封裝Axios的經歷封裝iOS
- 一次破解Macromedia Flash 3的奇怪經歷Mac
- 記一次Oracle Sql最佳化經歷--消耗過多CPUOracleSQL
- 記一次翻譯站經歷
- 記一次 jQuery 踩坑經歷jQuery
- Elasticsearch高併發寫入優化的開源協同經歷Elasticsearch優化
- NOT IN 一次優化優化
- 一次優化優化
- 一次 Linux 桌面自動化測試工具的試用經歷分享Linux
- 記一次慘敗的Oracle DBA面試經歷Oracle面試
- 親身經歷的一次Mysql OCP考試MySql
- 記一次真實的網站被黑經歷網站
- 用impdp匯入資料的一次經歷
- 一次無法mount資料庫的經歷資料庫