精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

PG 的 Bgwriter 為什么搞得那么復雜

數據庫 其他數據庫
我是從C程序員轉DBA的,所以遇到數據庫的一些問題,我總是喜歡從一個碼農的角度去發出靈魂拷問:為什么會這樣?為什么要這樣?這么做有啥必要?

我是從C程序員轉DBA的,所以遇到數據庫的一些問題,我總是喜歡從一個碼農的角度去發出靈魂拷問:為什么會這樣?為什么要這樣?這么做有啥必要?經過二十多年時間,Oracle的一些犄角旮旯的問題都被我理解和接受了。剛剛轉向PG數據庫的學習的時候,對PG這個簡單但是龐大的數據庫系統的一些行為十分不解。今天我們就來聊聊我對BGWRITER的一些思考。

PG的后臺寫入器(Background Writer, bgwriter)負責將臟頁(即被修改但尚未寫入磁盤的數據頁)從共享緩沖區寫回到磁盤,從而減少直接由前端查詢進程執行寫操作的需求,BGWRITER對數據庫的性能優化具有重要作用。對Oracle的dbwr的算法比較了解的DBA剛開始可能很難理解PG的刷臟機制。因為除了BGWriter之外,Checkpoint、Backend都有刷臟的行為。Checkpoint刷臟比較容易理解,因為早期Oracle的CKPT也是有刷臟行為的。需要Checkpoint的時候,如果發現某些需要寫入的臟塊暫時還沒有寫入,并且這些數據塊當前處于可以寫入的狀態,這種情況下CKPT順手就做了。后來為了解決高并發環境下的閂鎖開銷問題,O記才讓CKPT不再刷臟,提高Checkpoint推進的速度。

PG和O記最大的不同是Backend也是有刷臟行為的,這個設計剛開始的時候讓我感到十分不解。BGWriter和Checkpoint都可以刷臟對于閂鎖爭用來說問題還不是太大,頂多是兩個會話協同好就行了,而Backend的數量可能很龐大,如果同時又刷臟需求的話,協調好共享池相關數據結構的LWLOCK成本就低不了。

BGWriter在掃描共享緩沖區時,采用了一種基于LRU(Least Recently Used,最近最少使用)算法的啟發式方法來選擇要刷新的頁面。具體來說BGWriter會優先對最近最少被使用的臟頁進行回寫,即這些頁面在未來短時間內不太可能被再次訪問,因此將它們寫回到磁盤可以釋放內存而不大影響性能。如果一個頁面當前正被其他后端進程讀取或修改,那么BGWriter會跳過該頁面。除此之外,BGWriter的行為受bgwriter_lru_maxpages和bgwriter_lru_multiplier等參數的影響。每次循環中,BGWriter嘗試寫的最大臟頁數由bgwriter_lru_maxpages指定,而實際嘗試寫的頁數則根據系統近期需求動態調整,這取決于bgwriter_lru_multiplier。如果當前循環中已達到設定的最大寫入頁數限制,則即使還有未處理的臟頁,也會暫時跳過。

bgwriter_lru_maxpages參數比較容易理解,就是bgwriter一個批處理任務中刷臟的最大臟頁數量,刷夠了這些頁,bgwriter就結束這次任務,進入休眠。bgwriter_lru_multiplier 是一個用于調整PostgreSQL后臺寫入器(Background Writer, BGWriter)行為的重要參數。它決定了BGWriter嘗試預測需要刷新多少頁面到磁盤的積極程度,基于最近幾次前臺請求所需頁面數量進行計算。BGWriter會監控最近幾次前臺請求所需的新緩沖區頁面數,并將這個數值乘以 bgwriter_lru_multiplier 來決定下一次循環應該嘗試刷新多少個臟頁回到磁盤。假設最近幾次前臺請求所需的平均新緩沖區頁面數為N,則在下一個周期內,BGWriter將會嘗試刷新 N * bgwriter_lru_multiplier 個臟頁。這意味著如果 bgwriter_lru_multiplier 設置得較高,BGWriter就會更積極地嘗試將更多的臟頁寫回磁盤;反之,如果設置得較低,則BGWriter的行為會更加保守。

與BGWriter相對保守的刷臟策略相比,Checkpoint是一種強制刷臟機制。Checkpoint的主要目的是縮短崩潰恢復時間,因為它限定了恢復過程中需要回放的WAL(Write-Ahead Logging)日志的范圍。Checkpoint可以由多種條件觸發,包括達到checkpoint_timeout設定的時間間隔(默認為5分鐘),或WAL文件使用量達到了max_wal_size。此外,也可以手動觸發Checkpoint。當Checkpoint開始時,PostgreSQL會強制將所有臟數據頁寫回到磁盤。這包括但不限于共享緩沖區中的數據頁。為了保證一致性,Checkpoint期間不允許新的事務提交(盡管允許讀取和正在進行的事務繼續)。整個過程包括了標記一個檢查點記錄到WAL日志中,并更新控制文件以反映最新的檢查點信息。與BGWriter不同,Checkpoint刷臟的主要目的是提供一個已知的一致狀態點,以便于系統崩潰后快速恢復。通過定期創建這些一致狀態點,可以限制恢復過程中需要處理的日志量。

上面的刷臟機制還是比較容易理解的,PG中最不好理解的就是Backend也有寫臟塊的行為,而在其他數據庫中,這個工作完全是由后臺進程來完成的。當一個Backend進程需要讀取一個新的數據塊到共享緩沖區中,但當前沒有可用的空閑緩沖區時,就會觸發緩沖區替換機制(如使用 ClockSweep 算法)。如果選中的替換頁面是臟頁(Dirty Page),那么該頁面必須被寫回磁盤。

這個機制存在一個比較大的問題,那就是很可能一個SELECT操作操作會產生寫IO操作,從而讓某個SELECT操作的執行延時加大。我前兩天也談到Oracle也存在一些引起執行效率不穩定的行為。不過Oracle的這些行為發生的概率極低,甚至在一些負載不是特別大的系統中很少遇到。而在PG中我們經常會遇到這些情況的。

圖片圖片

這是我們生產環境的一個PG 14數據庫,可以看出,真正由BGWriter刷臟的數量只有162,而Backend刷臟的數量為120萬塊。似乎BGWriter有點不務正業了。

這種情況的發生與PG數據庫的設計初衷有關,PG數據庫作為最為流行的開源數據塊之一,從開始并不是為高并發、高負載的企業級應用設計的,雖然這些年其企業級特性越來越多,但是一些根子上的問題還是沿用了早期的設計。為了適應早期的低成本IO設備,PG在性能上做出了大量的妥協。因為FULL PAGE WRITE機制的存在,導致了PG數據庫總是希望臟塊能夠盡可能比較晚地回寫到存儲系統中,Checkpoint也盡可能的不要太快。將刷臟工作分散到大量的Backend中去,也是對IO的一種妥協,一方面可以緩解Checkpoint過重對IO的影響,一方面也簡化了Backend在共享緩沖區不足時重用臟塊的處置方法。

曾經在和一個搞PG的朋友談到今天討論的問題的時候,他十分興奮地提出他的觀點,他認為PG這方面的設計十分優秀,十分巧妙。我倒是有些不同的觀點,認為這是PG數據庫成為高負載的企業級數據庫路上的一個必須優化的攔路虎。在現代硬件條件下,這方面的設計完全可以做優化了。我想隨著AIO/DIO等IO技術的引進,消除Backend寫臟塊的條件也逐步成熟了。

今天時間有限,我們先談到這里吧,明天我將繼續這個話題,討論一下,基于如此復雜的PG刷臟機制,DBA改如何去調整他們的數據庫,從而適應自己的業務場景。明天再聊吧。

責任編輯:武曉燕 來源: 白鱔的洞穴
相關推薦

2023-06-08 18:25:40

Doris場景查詢

2021-06-09 09:32:58

Esbuild 工具前端

2020-08-03 07:50:56

存儲對象存儲

2017-03-25 21:32:40

Python編碼

2023-11-07 15:11:46

Kafka技巧

2023-10-15 12:23:10

單線程Redis

2015-06-05 14:15:13

程序員難升職

2022-02-21 10:06:14

自動駕駛汽車智能

2017-01-21 14:57:43

Linuxsystemd

2023-11-20 17:38:07

Djangoagtailadmin

2019-12-02 14:22:01

浪費云計算支出

2020-07-29 08:06:30

Kafka MQ消息

2021-03-29 16:32:03

軟件代碼程序員

2020-11-02 07:05:54

虛擬內存Go

2013-07-04 14:05:26

功能用戶體驗

2017-01-17 15:26:37

電信移動寬帶

2020-08-28 10:11:33

蘋果配件手機

2024-09-26 00:00:25

2025-08-05 07:58:28

2014-12-16 11:03:46

大數據
點贊
收藏

51CTO技術棧公眾號

人与嘼交av免费| 亚洲啊啊啊啊啊| 岳乳丰满一区二区三区| 围产精品久久久久久久| 精品久久久三级丝袜| 国产免费毛卡片| 免费在线观看黄| 99精品偷自拍| 成人免费激情视频| 精品少妇theporn| 欧美日韩国产一区二区三区不卡| 欧美一区二区三区视频| 日韩av综合在线观看| 在线国产情侣| 92国产精品观看| 亚洲精品日产aⅴ| 免费的毛片视频| 亚洲婷婷在线| 久久精彩免费视频| 9.1成人看片| 91精品入口| 欧美老年两性高潮| caopor在线视频| 8x8ⅹ拨牐拨牐拨牐在线观看| 久久青草视频| 韩国毛片一区二区三区| 全球成人中文在线| 成人观看免费视频| 日韩国产一区| 亚洲色图美腿丝袜| 国产美女视频免费观看下载软件| 亚洲精品三区| 欧美日韩一区在线| 日韩在线第三页| 国产ktv在线视频| 亚洲狼人国产精品| 一区二区三区四区| 看电影就来5566av视频在线播放| www.在线成人| 国产精品sss| av高清一区二区| 精品在线播放午夜| 国产精品一区二区久久久久| 国产污片在线观看| 国产精品成人一区二区网站软件| xxav国产精品美女主播| 久久久久久成人网| 欧美日韩中字| 中文字幕亚洲欧美一区二区三区| 精品国产无码在线观看| 免费成人三级| 亚洲欧美日韩在线一区| 免费看黄色aaaaaa 片| 人人网欧美视频| 日韩成人在线电影网| 亚洲啪av永久无码精品放毛片| 国产激情一区| 欧美一区二区视频网站| 日韩视频在线观看一区二区三区| 免费视频成人| 制服视频三区第一页精品| 一区二区免费av| 国产精品亚洲综合在线观看| 欧美一区二区精品久久911| 中文字幕第10页| 超碰97久久| 亚洲精品久久久久久久久久久| 一起草在线视频| 欧美极品中文字幕| 色一情一乱一区二区| 欧美国产日韩在线| 精品人妻一区二区三区四区| 国产毛片一区二区三区| 中文字幕亚洲综合久久| 国产免费久久久久| 欧美日韩午夜| 欧美一级视频免费在线观看| 国产一级片一区二区| 激情文学综合丁香| 国产精品二区三区| 欧美另类自拍| 国产精品久线在线观看| 激情六月天婷婷| 2021中文字幕在线| 在线免费亚洲电影| 国产精品探花在线播放| 精品资源在线| 色妞欧美日韩在线| 久久久久亚洲av片无码下载蜜桃| 国产日韩一区| 国产日产欧美a一级在线| 亚洲精品一区二区三区新线路| 91香蕉国产在线观看软件| 一本一本久久a久久精品综合妖精| 中文在线观看免费| 懂色aⅴ精品一区二区三区蜜月| 国内自拍视频一区| 国产精品久久久久久久久久辛辛| 亚洲激情在线视频| 久久久99999| 精品动漫一区| 国产原创欧美精品| 亚洲区小说区图片区| 国产精品国产精品国产专区不片| av在线播放亚洲| 欧美久久久网站| 亚洲精品久久久久久久久久久| 午夜激情福利电影| 国产一区导航| 亚洲综合在线播放| av网站在线免费观看| 亚洲成人综合网站| 一区二区久久精品| 激情综合网五月| 久久久久久久久国产| 亚洲系列第一页| 久久久五月婷婷| 超碰成人免费在线| 欧美视频二区欧美影视| zzzwww在线看片免费| 一区二区不卡在线播放 | 一区二区不卡免费视频| 一区二区在线影院| 国产精品视频免费在线| 欧美色图另类| 精品成人乱色一区二区| 日本一区二区三区在线免费观看| 国语产色综合| 日韩av免费在线| 天堂成人在线观看| 亚洲愉拍自拍另类高清精品| 午夜福利123| 日韩精品影视| 国产精品久久久久久久久久免费 | 欧美极品少妇xxxxⅹ免费视频| 一区二区视频免费| 国产日本欧洲亚洲| 熟妇人妻va精品中文字幕| 美女扒开腿让男人桶爽久久动漫| 欧美精品免费在线观看| 国产欧美一级片| 亚洲少妇最新在线视频| 在线视频观看91| 国产精品成人av| 91精品国产综合久久香蕉922| www.中文字幕久久久| 91国在线观看| 在线观看亚洲大片短视频| 日韩中文字幕亚洲一区二区va在线| 久久精品国产美女| 在线观看涩涩| 亚洲天天在线日亚洲洲精| 高潮毛片又色又爽免费 | 狠狠色狠狠色综合| 一区二区在线观看网站| 日韩三区四区| 欧美成人精品在线播放| 国产三级漂亮女教师| 亚洲精品视频在线看| 女王人厕视频2ⅴk| 精品999成人| 精品一区在线播放| 欧美人体一区二区三区| 日韩在线麻豆| 欧美一区三区四区| 欧美精品久久久久性色| 成人国产亚洲欧美成人综合网| 国产亚洲黄色片| 蜜臀91精品国产高清在线观看| 国产福利视频一区| 九七电影韩国女主播在线观看| 日韩一区二区三区在线观看| 欧美日韩精品一区二区三区视频播放| www.日韩在线| 免费激情视频在线观看| 国产精品久久观看| 国产精品乱码一区二区三区| 中文字幕乱码在线播放| 中文字幕在线看视频国产欧美| 91中文字幕在线视频| 一二三区精品视频| 亚洲精品成人无码| 国产一区二区在线观看视频| 久久久久久久9| 国产乱码精品一区二区亚洲| 国产一区二区不卡老阿姨| 久久久久久99| 亚洲伦理久久| 777精品视频| 黄色网址在线免费| 日韩成人av网| 国产男女无套免费网站| 欧美日韩在线另类| 日本一级片免费| 99久久精品一区二区| 亚洲免费一级视频| 亚洲精品四区| 国产精品波多野结衣| 亚洲第一福利社区| 亚洲精品欧美极品| 成人看片网站| 国内揄拍国内精品| 国产午夜精品久久久久免费视| 日韩电影免费在线观看中文字幕 | a国产在线视频| 日韩最新中文字幕电影免费看| 内射后入在线观看一区| 欧美日韩国产片| 国产精品久久久久久久久久久久久久久久久 | 国产在线拍揄自揄拍无码视频| 国产日韩欧美综合在线| 稀缺小u女呦精品呦| 精品在线亚洲视频| 人妻无码视频一区二区三区| 亚洲精选一区| 欧美人与动牲交xxxxbbbb| 欧美3p在线观看| 欧美午夜精品久久久久免费视| 一区二区在线免费播放| 国产精品永久免费观看| 亚洲天堂电影| 久久免费在线观看| 怡红院在线播放| 久久精品2019中文字幕| av大片在线观看| 亚洲精品一区二区三区婷婷月| 黄色a在线观看| 91精品国产综合久久精品| www.亚洲激情| 日韩欧美亚洲国产一区| 国产欧美日韩另类| 一区二区欧美视频| 精品国产欧美日韩不卡在线观看| 欧美激情在线一区二区| 精品人伦一区二区| 久久精品夜夜夜夜久久| 亚洲调教欧美在线| 不卡高清视频专区| 娇妻高潮浓精白浆xxⅹ| 成人一区在线观看| 一级黄色电影片| 国产精品系列在线播放| 亚洲热在线视频| 国产麻豆精品theporn| 肉色超薄丝袜脚交| 国模少妇一区二区三区| 亚洲综合123| 国产激情一区二区三区四区| 久久久久中文字幕亚洲精品 | 国产精品一二| 两根大肉大捧一进一出好爽视频| 国产精品免费看| 成人免费观看毛片| 日本欧美在线看| 久久人人爽av| 国产呦精品一区二区三区网站| 超碰91在线播放| 成人免费高清视频在线观看| 成熟妇人a片免费看网站| 91视频.com| 精品成人无码一区二区三区| 国产精品无人区| 男人av资源站| 亚洲一区成人在线| 波多野结衣国产| 91精品1区2区| 99在线精品视频免费观看20| 亚洲成人教育av| 免费一级在线观看播放网址| 在线免费观看羞羞视频一区二区| 国产成年人免费视频| 欧美午夜在线播放| 国产精品天天狠天天看| www一区二区三区| 国产成人精品免费视频大全最热| 欧美激情99| 日韩一区二区三区高清| 久久久久午夜电影| 成人免费性视频| 久久亚洲欧美| 三级黄色片播放| 91麻豆免费视频| 国产又粗又硬又长又爽| 亚洲不卡在线观看| 成人一级免费视频| 精品国产乱码久久久久久免费| 日本天堂影院在线视频| 久久影视电视剧免费网站清宫辞电视| 国产精品一品| 国产精自产拍久久久久久| 高清日韩中文字幕| 亚洲一区二区高清视频| 亚洲午夜精品久久久久久app| 日日碰狠狠丁香久燥| 国产精品综合在线视频| b站大片免费直播| 亚洲蜜桃精久久久久久久| 日本韩国欧美中文字幕| 日韩天堂在线观看| 国产系列在线观看| 久久久人成影片一区二区三区| 91久久久久久白丝白浆欲热蜜臀| 国产精品国产精品国产专区不卡| 青青草国产免费一区二区下载| 少妇高潮毛片色欲ava片| 久久超碰97人人做人人爱| 亚洲综合自拍网| 亚洲综合激情网| 在线观看毛片网站| 亚洲免费视频一区二区| 中文字幕在线三区| 成人日韩在线电影| 神马电影久久| 男人日女人视频网站| 国产成人综合精品三级| 成人黄色a级片| 欧美午夜精品久久久久久久| 亚洲欧美高清视频| 久久躁日日躁aaaaxxxx| www.成人在线视频| 欧美日韩在线精品| 一本综合久久| 日本一级片在线播放| 一区二区三区中文字幕精品精品| 97精品人妻一区二区三区在线 | 午夜在线观看免费一区| 中文字幕99页| 一区二区三区.www| 国产毛片一区二区三区va在线| 色吧影院999| 91国拍精品国产粉嫩亚洲一区| 美国av一区二区三区| 亚洲久色影视| 免费黄色三级网站| 亚洲成人资源在线| 黄色美女一级片| 久久久中精品2020中文| 精品无码久久久久久久| av毛片久久久久**hd| 国产污视频在线观看| 精品国产露脸精彩对白| 黄页在线观看免费| 粉嫩av一区二区三区免费观看 | 国产麻豆免费视频| 日韩在线播放视频| 成人豆花视频| 青草全福视在线| 国产不卡视频在线播放| 国产一级片视频| 日韩av一区二区在线| 日韩激情电影免费看| 欧美不卡在线一区二区三区| 媚黑女一区二区| 三年中国中文观看免费播放| 欧美系列在线观看| 色影院视频在线| 亚洲aⅴ男人的天堂在线观看| 伊人色**天天综合婷婷| 亚洲熟女一区二区三区| 亚洲高清免费视频| 香蕉视频911| 国产精品久久久久7777婷婷| 国产精品久久久乱弄| 97超碰免费在线观看| 亚洲高清视频中文字幕| 黄色的视频在线免费观看| 国产精品亚洲欧美导航| 综合激情在线| 中文字幕av观看| 欧美综合天天夜夜久久| 国产鲁鲁视频在线观看特色| 国产福利久久| 久久伊人亚洲| 久久免费看少妇高潮v片特黄| 亚洲国产精品久久久久秋霞蜜臀| 国产日韩电影| 在线成人性视频| 99视频一区二区三区| 最好看的日本字幕mv视频大全| 久久夜色精品国产亚洲aⅴ| 激情视频极品美女日韩| 人人爽人人av| 一卡二卡欧美日韩| 国家队第一季免费高清在线观看| 91精品免费看| 国产农村妇女毛片精品久久莱园子| 亚洲精品一区二区三区影院忠贞| 国产一区二区三区四区五区传媒| 久久久精品有限公司| 毛片一区二区三区| 国产精品.www| 色婷婷成人综合| 乱亲女h秽乱长久久久| 在线免费视频一区| 五月婷婷久久丁香| 精品国产丝袜高跟鞋| 乱色588欧美| 福利电影一区二区三区| 波多野结衣日韩| 久久久久久久香蕉网|