日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

PolarDB 物理復制刷臟約束問題和解決

來源: 責編: 時間:2024-01-02 09:31:35 186觀看
導讀目前物理復制到了ro 開始刷120s apply_lsn 不推進的信息以后, 即使壓力停下來也無法恢復, 為什么?如下圖所示:這里最極端的場景是如果rw 上面最老的page1, 也就是在flush list 上根據 oldest_modification_lsn 排在最

目前物理復制到了ro 開始刷120s apply_lsn 不推進的信息以后, 即使壓力停下來也無法恢復, 為什么?6Ps28資訊網——每日最新資訊28at.com

如下圖所示:6Ps28資訊網——每日最新資訊28at.com

6Ps28資訊網——每日最新資訊28at.com

這里最極端的場景是如果rw 上面最老的page1, 也就是在flush list 上根據 oldest_modification_lsn 排在最老的位置page_lsn 已經大于ro 上面的apply_lsn 了, 那么刷臟是無法進行的, 因為物理復制需要保證page 已經被解析到ro parse buffer才可以進行刷臟. 另外想Page2 這樣的Page 雖然newest_modification 和 oldest_modification 沒有差很多也無法進行刷臟了. 因為Parse buffer 已經滿了.6Ps28資訊網——每日最新資訊28at.com

但是這個時候ro 節點的apply_lsn 已經不推進了, 因為上面的parse buffer 已經滿了, parse buffer 推進需要等rw 節點把老的page 刷下去, 老的parse buffer chunk 才可以釋放. 但是由于上面rw 節點已經最老的page 都無法刷臟, 那么parse buffer chunk 肯定就沒機會釋放了.6Ps28資訊網——每日最新資訊28at.com

那么此時就形成了死循環了. 即使寫入壓力停下來, ro 也是無法恢復的.6Ps28資訊網——每日最新資訊28at.com

所以只要rw 上面最老page 超過了 parse buffer 的大小, 也就是最老page newest_modification_page lsn > ro apply_lsn 之時, 那么死鎖就已經形成, 后續都無法避免了6Ps28資訊網——每日最新資訊28at.com

這里copy_page 為何沒有生效?6Ps28資訊網——每日最新資訊28at.com

目前copy_page 的機制是刷臟的時候進行的, 在下圖中copy page copy 出來的page newest_modification 也是大于ro apply_lsn 的, 所以也是無法刷臟的, 所以這個時候其實這個copy_page 機制是無效的機制.6Ps28資訊網——每日最新資訊28at.com

正確的做法是: 在發現Page newest_modification 有可能超過一定的大小, 那么就應該讓該page 進行copy page強行刷臟, 否則到后面在進行刷臟就來不及了.6Ps28資訊網——每日最新資訊28at.com

開啟了多版本LogIndex 版本為什么可以規避這個問題?6Ps28資訊網——每日最新資訊28at.com

在因為parse buffer 滿導致的刷臟約束中, 如上圖所示, Page1, Page2 無法進行刷臟, 但是其他的Page 如果newest_modification < ro apply_lsn 是可以刷臟的, 因此rw 節點buffer pool 里面臟頁其實不多.6Ps28資訊網——每日最新資訊28at.com

開啟了LogIndex 以后, ro 就可以隨意丟棄自己的parse buffer 了, 當然也就不會crash.6Ps28資訊網——每日最新資訊28at.com

但是依然有一個問題是如果Page1 一直修改, 這個Page1 的newest_modification lsn 一直在更新, 那么即使開啟LogIndex 也無法將該Page 刷下去, 帶來的問題是rw checkpoint 是無法推進,  但是由于有了LogIndex, 其他page 可以隨意刷臟, 所以不會出現rw 臟頁數不夠的問題. 那Page1 刷臟如何解決呢?6Ps28資訊網——每日最新資訊28at.com

通過copy page 解決.6Ps28資訊網——每日最新資訊28at.com

如果rw 開啟了copy page 以后, 雖然上圖中的Page1 剛剛被copy 出來的時候無法flush, 但是因為開啟LogIndex, ro apply_lsn 可以隨意推進, 隨著ro apply_lsn 的推進, 過一段時間一定可以刷這個copy page, 也就避免了這個問題了.6Ps28資訊網——每日最新資訊28at.com

所以目前版本答案是 LogIndex + copy page 解決了幾乎所有問題6Ps28資訊網——每日最新資訊28at.com

另外驗證了刷臟約束兩種場景6Ps28資訊網——每日最新資訊28at.com

  1. 大量寫入場景
  2. 有熱點頁場景

其實大量寫入場景即使導致了刷臟約束, 后面還是可以恢復的, 只有熱點頁場景才無法恢復. 很多時候熱點頁不一定是用戶修改的page, 而是Btree 上面的一些其他page, 比如root page 等等, 我們很難發現的.6Ps28資訊網——每日最新資訊28at.com

另外驗證了如果page 以及 redo log 寫入延遲都升高, 是不會特別出現刷臟約束問題, 只有出現熱點頁的場景才會有問題.6Ps28資訊網——每日最新資訊28at.com

上圖可以看到6Ps28資訊網——每日最新資訊28at.com

ro parse buffer = ro appply_lsn - rw flush_lsn6Ps28資訊網——每日最新資訊28at.com

apply_lsn 是ro 節點讀取redo 并應用推進的速度6Ps28資訊網——每日最新資訊28at.com

flush_lsn 是rw 節點page 刷臟推進的速度6Ps28資訊網——每日最新資訊28at.com

由于IO 延遲同時影響了 redo 和 page, 從公式可以看到, 那么ro parse buffer 不會快速增長的.6Ps28資訊網——每日最新資訊28at.com

從公式里面可以看到, 如果redo 推進速度加快, page 刷臟速度減慢, 那么是最容易出現刷臟約束的. 也就是redo IO 速度不變, Page IO 速度變慢, 就容易出現把RO parse buffer 打滿的情況, 但是一樣需要出現熱點頁才能出現parse buffer 被打滿的死鎖.6Ps28資訊網——每日最新資訊28at.com

如果沒有熱點頁, 這個時候由于parse buffer 還是再推進, 所以不會自動crash, 反而會出現rw 由于被限制了刷臟, buffer pool 里面大量的臟頁, 最后找不到空閑Page 的情況. rw crash 的情況.6Ps28資訊網——每日最新資訊28at.com

多版本或者Aurora 如何解決這個問題?6Ps28資訊網——每日最新資訊28at.com

剛才上面的分析有兩個鏈條互相依賴6Ps28資訊網——每日最新資訊28at.com

約束1: rw 的刷臟依賴ro 節點apply_lsn 的推進6Ps28資訊網——每日最新資訊28at.com

約束2: ro 節點釋放old parse buffer 依賴rw 節點刷臟6Ps28資訊網——每日最新資訊28at.com

多版本/Aurora 都把約束2 給去掉了, ro 節點可以隨意釋放old parse buffer. 那么就不會有parse buffer 滿的問題, 那么如果ro 節點訪問到rw 還未刷下去page, 但是ro 節點已經把Parse buffer 釋放了, 那么會通過磁盤上的 logIndex + 磁盤上page 生成想要的版本.6Ps28資訊網——每日最新資訊28at.com

但是這里依然還要去解決約束1 的問題, rw 的刷臟會被ro 給限制. rw 刷臟時候判斷 page newest_modification_lsn > ro apply_lsn, 那么在Aurora 里面這個Page 也是無法進行Apply 的, 但是Aurora 和我們區別在于Aurora 可以把這個Page 丟出buffer pool, 但是我們是無法把這樣的page 丟出Buffer Pool, 依然會造成Buffer Pool 里面大量的臟頁, 最后找不到空閑Page 的情況. 在多版本引擎里面支持把Page newest_modification_lsn > ro apply_lsn 這樣的Page 在Buffer Pool 中釋放也很重要.6Ps28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-55258-0.htmlPolarDB 物理復制刷臟約束問題和解決

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: PolarDB 物理復制刷臟約束問題和解決

下一篇: 淺談ArkUI之Web組件的基礎用法

標簽:
  • 熱門焦點
  • 鴻蒙OS 4.0公測機型公布:甚至連nova6都支持

    華為全新的HarmonyOS 4.0操作系統將于今天下午正式登場,官方在發布會之前也已經正式給出了可升級的機型產品,這意味著這些機型會率先支持升級享用。這次的HarmonyOS 4.0支持
  • K60 Pro官方停產 第三方瞬間漲價

    雖然沒有官方宣布,但Redmi的一些高管也已經透露了,Redmi K60 Pro已經停產且不會補貨,這一切都是為了即將到來的K60 Ultra鋪路,屬于廠家的正常操作。但有意思的是該機在停產之后
  • 一加Ace2 Pro官宣:普及16G內存 引領24G

    一加官方今天繼續為本月發布的新機一加Ace2 Pro帶來預熱,公布了內存方面的信息。“淘汰 8GB ,12GB 起步,16GB 普及,24GB 引領,還有呢?#一加Ace2Pro#,2023 年 8 月,敬請期待。”同時
  • 影音體驗是真的強 簡單聊聊iQOO Pad

    大公司的好處就是產品線豐富,非常細分化的東西也能給你做出來,例如早先我們看到了新的vivo Pad2,之后我們又在iQOO Neo8 Pro的發布會上看到了iQOO的首款平板產品iQOO Pad。雖
  • 一篇文章帶你了解 CSS 屬性選擇器

    屬性選擇器對帶有指定屬性的 HTML 元素設置樣式。可以為擁有指定屬性的 HTML 元素設置樣式,而不僅限于 class 和 id 屬性。一、了解屬性選擇器CSS屬性選擇器提供了一種簡單而
  • 拼多多APP上線本地生活入口,群雄逐鹿萬億市場

    Tech星球(微信ID:tech618)文 | 陳橋輝 Tech星球獨家獲悉,拼多多在其APP內上線了&ldquo;本地生活&rdquo;入口,位置較深,位于首頁的&ldquo;充值中心&rdquo;內,目前主要售賣美食相關的
  • 消費結構調整丨巨頭低價博弈,拼多多還卷得動嗎?

    來源:征探財經作者:陳香羽隨著流量紅利的退潮,電商的存量博弈越來越明顯。曾經主攻中高端與品質的淘寶天貓、京東重拾&ldquo;低價&rdquo;口號。而過去與他們錯位競爭的拼多多,靠
  • 華為HarmonyOS 4升級計劃公布:首批34款機型今日開啟公測

    8月4日消息,今天下午華為正式發布了HarmonyOS 4系統,在更流暢的前提下,還帶來了不少新功能,UI設計也有變化,會讓手機煥然一新。華為宣布,首批機型將會在
  • iQOO 11S評測:行業唯一的200W標準版旗艦

    【Techweb評測】去年底,iQOO推出了“電競旗艦”iQOO 11系列,作為一款性能強機,該機不僅全球首發2K 144Hz E6全感屏,搭載了第二代驍龍8平臺及144Hz電競
Top 主站蜘蛛池模板: 敖汉旗| 涟水县| 建平县| 淳安县| 曲阳县| 大洼县| 辽阳县| 广安市| 凤冈县| 资中县| 遵化市| 汤阴县| 仙居县| 南澳县| 正镶白旗| 台南县| 舞阳县| 那坡县| 达孜县| 绵竹市| 聂拉木县| 海丰县| 宝山区| 巴林右旗| 安丘市| 嵊泗县| 旬邑县| 福建省| 福贡县| 嵊泗县| 英吉沙县| 香格里拉县| 泸水县| 乐平市| 铜鼓县| 广汉市| 保靖县| 通城县| 石渠县| 榕江县| 贺州市|