本篇內(nèi)容介紹了“Innodb關鍵特性之怎么刷新鄰接頁”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
1、工作原理
當刷新一個臟頁時,innodb存儲引擎會檢測該頁所在區(qū)(extent)的所有頁,如果是臟頁,那么一起進行刷新。這樣做的好處顯而易見,通過AIO可以將多個IO寫入操作合并為一個IO操作,增大寫入量,減少了物理寫IO,故該工作機制在傳統(tǒng)機械磁盤下有著顯著的優(yōu)勢。
1、在寫入次數(shù)基本不增加的情況下,增加了寫入的量;
2、加速了臟頁的回收;
3、充分利用double write每次1M寫入的特征;
4、這個功能打開以后會發(fā)現(xiàn)iostat里面的wrqm(合并寫)這個值會比較高;
2、問題考慮
1、是不是可能將不怎么臟的頁進行了寫入,而該頁之后又會很快變成臟頁?
2、固態(tài)硬盤有著較高的 IOPS,是否還需要這個特性?
為此,InnoDB 存儲引擎從 1.2.x 版本開始提供了參數(shù) innodb_flush_neighbors,用來控制是否啟用該特性。對于傳統(tǒng)機械硬盤建議啟用該特性,而對于固態(tài)硬盤有著超高 IOPS 性能的磁盤,則建議將該參數(shù)設置為 0、即關閉此特性。
3、參數(shù)控制:innodb_flush_neighbors
mysql>show variables like 'innodb_flush_neighbors'; +-------------------------+-----------------+ | Variable_name | Value | +-------------------------+-----------------+ | innodb_flush_neighbors | 1 | +-------------------------+-----------------+
1,表示打開了刷新鄰接頁的功能,順帶著刷新在 buffer pool 中位于磁盤上相同的 extend 區(qū)的相鄰的臟頁。
0,表示關閉刷新鄰接頁
2 ,表示刷新在 buffer pool 中位于磁盤上相同的 extend 區(qū)的臟頁。
4、Flush neighbor page的影響
1、對于insert頻繁的系統(tǒng),這個功能比較適合
2、對于update頻繁的系統(tǒng),這個功能可能會帶來一些副作用
1、update順帶著刷新其他頁;
2、對于update頻繁的表,這些頁馬上就臟了,白白浪費寫負載。
“Innodb關鍵特性之怎么刷新鄰接頁”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注創(chuàng)新互聯(lián)-成都網(wǎng)站建設公司網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!
網(wǎng)站題目:Innodb關鍵特性之怎么刷新鄰接頁-創(chuàng)新互聯(lián)
本文來源:http://www.sd-ha.com/article26/dojhcg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPT、靜態(tài)網(wǎng)站、定制開發(fā)、Google、自適應網(wǎng)站、全網(wǎng)營銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)