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

在PG數據庫中 shared_buffers會影響DROP TABLE的性能嗎

數據庫 其他數據庫
數據庫就是這樣一點點的在用戶場景中完善起來的,商用數據庫廠商十分注重收集這方面的需求,而開源數據庫因為用戶群體十分龐大,需求更為龐大,因此在實現某些功能的時候,選擇比較困難,無法像商用數據庫那么迅速的響應。

前陣子一個朋友和我討論一個PG性能問題,他們最近把幾個小的PG數據庫整合為一個大系統,換了臺新服務器,搞了超豪華配置,有512GB的物理內存。他們配置了一個128GB的SHARED_BUFFERS,然后應用就出問題了。因為這套系統中經常要用到臨時表,他們的臨時表都是物理表,一般是create/insert/select/drop,一串操作。系統升級后,系統就變得特別慢了,經過分析,發現主要問題出在drop table上。在一頓亂試中,他們恢復了shared_buffers原來的配置后,系統性能居然恢復了!

在PG數據庫中,過大的shared_buffers會影響DROP TABLE/TRUNCATE TABLE等的性能嗎?這個問題乍一聽好像天方夜譚,不過細想起來確實是有道理的。按理說PG數據庫DROP TABLE直接刪除文件系統中的文件,修改數據字典就OK了,應該比Oracle還更利索一些,不應該很慢。而DROP TABLE和SHARED BUFFERS的大小有關就更離譜了。

我在cybertec上找到了一篇Hans-Jürgen Sch?nig的博客,提供了一個測試用例,在我們實驗室的一套PG 12.6上做了一個測試,還真的挺有意思的。先介紹一下這個測試用例。這個測試用例分為run.sql和tps.sh兩個腳本,通過pgbench工具對DROP TABLE做了一個測試。先看run.sql的代碼:

SET synchronous_commit TO off;
BEGIN;
CREATE TABLE x(id int);
INSERT INTO x VALUES (1);
DROP TABLE x;
COMMIT;

 關閉同步提交的目的是為了盡可能降低IO性能對測試的影響。然后執行一個建表,寫數據,刪除表這個操作。tps.sh的代碼如下:

#/bin/sh


for x in '8 MB' '32 MB' '128 MB' '1 GB' '8 GB'
do
      pg_ctl  -l /dev/null -o "--shared_buffers='$x'" start
      sleep 1
      echo tps for $x
      psql -c "SHOW shared_buffers"
      pgbench --file=run.sql -j 1 -c 1 -T 10  2> /dev/null
      pg_ctl -D /tmp/db stop
      sleep 1
done

根據不同的測試環境,大家需要對tps.sh做一些修改,比如psql和pgbench的參數。我做了一些調整。測試了一下。    

圖片圖片

可以看出,隨著shared_buffers的加大,TPS出現了明顯的下降,最后居然降到了不足200。在本次測試中,系統中有足夠的物理內存,確保系統不會出現SWAP的情況。在這種情況下,還是出現了此類情況,這是什么原因呢?

問題一般不會出在其他地方,我這個測試是單獨進行的,也沒有其他會話干擾,也不會有鎖的問題。唯一出問題的地方是在shared_buffers上了。當drop table完成后,需要做一個類似checkpoint的工作,把shared_buffers中和這個表相關的所有buffer全部清理掉。正是這個工作拖慢了drop table的性能。

我不知道一些老的Oracle DBA還有沒有這方面的印象,以前運維Oracle 9i或者更早版本的數據庫的時候,有些時候truncate操作會特別慢,只要在等待object reuse。實際上就是在等待對象級的CKPT完成。為了解決這個問題,我們會用truncate table keep storage語法。為了解決這個問題,Oracle 也是折騰了很久的。

在8.0和7.3版本,Oracle一共設置了3條鏈:LRU鏈、LRU-W鏈和LRU-P鏈。LRU鏈是我們傳統所說的replacement list,用于BUFFER的LRU替代,LRU-W是需要DBWR寫入數據文件的鏈,LRU-P是當前正在寫入的鏈表,當時所有的BUFFER都被PIN住,等寫入完成后會降低鎖定級別,并被重新鏈入LRU。8I開始引入了5條鏈:LRU、LRU-W、LRU-P,LRU-XO、LRU-XR。其中前面三條含義沒變,LRU-XO是重用對象鏈,當實例發布需要重用某個對象的時候(比如TRUNCATE等DDL操作后),這個對象的所有當前塊和臟塊被鏈入這個隊列,DBWR需要將臟塊寫入文件。CKPT會檢查這個隊列,當這個隊列變空的時候認為本次對象級的CKPT結束。LRU-XR主要用于對某個數據文件或者表空間進行CKPT,把一個范圍的臟塊鏈入該鏈,讓DBWR去寫盤,CKPT檢查這個鏈表,直到鏈表為空。    

Oracle 9.2發現這樣設計后,object reuse的性能還是無法 徹底改善,甚至性能更差了,所以把LRU-XO鏈去掉了,5條鏈變又成了4條鏈。直到Oracle 10g這個才被徹底解決。OBJECT REUSE的算法再次改進,在WORKING SET中引入了Object hash chain結構kcbohtab * htabkcbwds,從而把一條LRU-XO鏈變成了一個HASH TABLE加N條鏈,每個對象有自己獨立的OBJECT REUSE鏈表。這樣對于一個對象的OBJECT REUSE操作就沒有任何性能問題了。    

圖片圖片

上面是11.1.0.7版本的Oracle的kcbwds結構,黃色部分就是我說的object queue hash table。在沒有這個hash table的時候,如果要把某個drop/truncate的對象相關的cache清理出去的時候,就需要遍歷shared_buffers,這樣情況下,緩沖區越大性能就越差。如果有了這個hash table,那么這個操作的性能就只與該對象在緩沖區中的緩沖塊的數量有關了。

實際上,對于這個問題,2015年的時候,就有人寫了Patch,只不過當時PG社區的大多數大佬認為超大內存數據庫系統只是小眾場景,頻繁做drop/truncate的系統也不多,因此沒必要在這方面做優化。    

圖片圖片

我圍觀了他們的討論,因為大多數大佬都認為場景十分有限,沒必要去優化這個操作,這件事就不了了之了。實際上在這件事上,這些PG大佬可能真的有點自負了,使用臨時表(不論是全局臨時表還是物理表充當臨時表,這方面的操作模式是類似的)在一些復雜的系統,比如ERP、財務、供應鏈管理、審計、工業流程管理等是很常見的操作。頻繁創建刪除截斷表對象也是很常見的操作。因此這個場景的優化還是十分必要的。

要想實現對此的優化其實也不難,因為PG沒有使用類似Oracle的表空間管理機制,因此不存在Object Reuse的問題,只需要不寫盤淘汰這些對象的shared buffers緩沖就可以了。這個操作完全可以做成延時的,backend刪除表后直接結束操作,淘汰臟塊的事情由CKPT后續延時完成就可以了。當某個對象被刪除時,只要記錄一下清單,當CKPT發現某個臟塊屬于這個對象時,直接拋棄就可以了。這個清單最好能寫入WAL,這樣系統故障恢復時可以比較快速地拋棄這些臟數據,如果WAL中沒有這些數據,也沒關系,只是效率低一點而已。

其實數據庫就是這樣一點點的在用戶場景中完善起來的,商用數據庫廠商十分注重收集這方面的需求,而開源數據庫因為用戶群體十分龐大,需求更為龐大,因此在實現某些功能的時候,選擇比較困難,無法像商用數據庫那么迅速的響應。

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

2010-06-17 13:34:47

SQL Server數

2024-03-13 10:40:00

性能探測工具SQL語句數據庫

2010-11-26 14:52:10

MySQL系統變量

2021-07-01 10:45:08

硬盤數據庫性能

2024-05-31 13:04:09

2009-06-30 15:02:41

磁盤排序Oracle數據庫性能

2010-05-10 09:48:16

SQL Server數

2024-07-31 08:21:53

2019-03-07 15:06:48

MySQL數據庫數據庫優化

2011-08-30 17:57:40

OracleCACHE BUFFE

2025-01-03 08:42:59

數據庫三范式架構

2024-11-04 08:20:00

try-catch編程

2010-06-01 15:32:33

MySQL數據庫

2009-07-02 00:26:00

臨時表空間Oracle數據庫性能

2022-02-09 06:31:57

AzureSolarWinds數據庫

2013-06-20 09:05:48

MySQL

2009-06-22 10:41:43

ibmdwLotus

2011-11-04 14:07:40

存儲

2011-07-20 16:28:54

Oracle數據庫shared pool

2011-08-24 13:37:33

PostgreSQLpg_hba.conf
點贊
收藏

51CTO技術棧公眾號

亚洲精品视频久久| 亚洲国产美国国产综合一区二区| 国产精品爱久久久久久久| 精品人妻无码一区二区三区换脸| se69色成人网wwwsex| 亚洲欧洲国产日韩| 国产91视觉| 奴色虐av一区二区三区| 亚洲一区在线| 亚洲精品中文字| 中文字幕剧情在线观看| a在线视频v视频| 国产精品美女久久福利网站| 风间由美久久久| 黄色在线免费观看| 综合久久99| 亚洲一二三在线| gogo亚洲国模私拍人体| 综合毛片免费视频| 亚洲精品乱码久久久久久久久 | 国产一区二区美女诱惑| 久久久久久网址| 色综合影院在线观看| 精品久久久久久电影| 牛牛影视一区二区三区免费看| 久久久国产精品成人免费| 欧亚精品中文字幕| 黄色网zhan| 深夜福利视频网站| 美女网站色91| 91av在线免费观看| 欧美成人aaa片一区国产精品| 久久不见久久见国语| 日韩欧美在线1卡| 91日韩视频在线观看| 蜜桃视频www网站在线观看| 中文字幕亚洲区| 欧美一区视久久| 天堂网2014av| 国产福利一区二区三区视频在线| 国产又爽又黄的激情精品视频 | av天堂一区二区三区| 日韩精品免费专区| 欧美在线影院在线视频| 国产精品第56页| 午夜精品免费| 久久这里有精品| 国产三级精品三级观看| 国产在线观看91一区二区三区| 亚洲高清免费观看高清完整版| 婷婷激情综合五月天| 国产精品伊人| 欧美日韩一区成人| 91激情视频在线| 成人日韩精品| 欧美日韩一区视频| 日本黄大片一区二区三区| 精品三区视频| 欧美色涩在线第一页| 久草福利视频在线| 国产日本久久| 欧美精品 日韩| 做a视频在线观看| 亚洲欧美久久精品| 91精品蜜臀在线一区尤物| 国产一区二区在线观看免费视频| 欧美xxxx性| 9191国产精品| 韩国三级hd中文字幕有哪些| caoporn成人| 亚洲国产精品va| 99久久国产精| 久久97视频| 日韩在线观看视频免费| 日韩一级片大全| 欧美日韩国产精品一区二区亚洲| 欧美富婆性猛交| 91看片在线播放| 久久青草久久| 国产欧美日韩专区发布| 国产免费黄色片| 高清国产一区二区三区| 国产久一道中文一区| 亚洲欧美综合在线观看| 国产午夜精品一区二区| 亚洲激情一区二区| 在线电影福利片| 亚洲国产日产av| 欧美精品第三页| 成人全视频在线观看在线播放高清| 欧美另类高清zo欧美| 欧美日韩一区二区区别是什么| 国产欧美三级电影| 亚洲午夜精品久久久久久性色 | 亚洲欧美日韩久久| 欧美又粗又长又爽做受| 欧美日韩美女| 制服丝袜日韩国产| 制服丝袜第二页| 手机亚洲手机国产手机日韩| 欧美激情精品久久久久久大尺度 | 一区二区三区伦理| 午夜欧美一区二区三区在线播放| 无码内射中文字幕岛国片| 成人亚洲精品| 日韩高清免费观看| 神马久久精品综合| 亚洲永久字幕| 亚洲a一级视频| 黄色片在线免费观看| 亚洲精品免费视频| 国产成人精品无码播放| 日韩精品一区二区三区中文| 亚洲男人av在线| 免费中文字幕在线| 石原莉奈在线亚洲三区| 国产精品久久国产三级国电话系列| 国产午夜在线视频| 亚洲电影在线播放| 午夜大片在线观看| 国产一区二区亚洲| 国内精品一区二区三区四区| 一级特黄aaaaaa大片| 久久亚洲精品国产精品紫薇| 中文字幕在线中文| 久久天天久久| 亚洲色图校园春色| 国产精品7777777| 国产激情一区二区三区四区| 日韩精品一区二区三区丰满| 蜜桃av在线| 亚洲国产高清高潮精品美女| 国产精品久久久精品四季影院| 视频一区中文字幕国产| 久久国产精品-国产精品| 欧美14一18处毛片| 欧美一区二区女人| 久久久久人妻一区精品色| 久久xxxx精品视频| 国模一区二区三区私拍视频| 日本在线视频网址| 91精品国产乱码| 免费精品在线视频| 久色婷婷小香蕉久久| 日本在线观看一区二区| 欧美性xxx| 亚洲日本aⅴ片在线观看香蕉| 亚洲精品视频在线观看免费视频| 高清成人在线观看| av女优在线播放| 超碰成人福利| 久久免费视频网站| 欧美77777| 婷婷综合另类小说色区| 扒开伸进免费视频| 亚洲精品综合| 精品国产乱码久久久久久108| 国产区美女在线| 精品粉嫩aⅴ一区二区三区四区| 久久久久97国产| 成人午夜大片免费观看| 日韩av新片网| 日韩人体视频| 国产91在线高潮白浆在线观看| 神马电影在线观看| 91久久免费观看| 久久久免费看片| 狠狠久久亚洲欧美| 91嫩草国产在线观看| 黑丝av在线播放| 欧美日一区二区在线观看 | 超碰在线97观看| 久久久精品欧美丰满| 美女网站免费观看视频| 色狮一区二区三区四区视频| 成人高h视频在线| 免费av不卡在线观看| 亚洲精品电影网在线观看| 丁香六月婷婷综合| 国产精品萝li| 99热这里只有精品2| 亚洲毛片网站| 午夜老司机精品| www.久久久.com| 97色在线观看免费视频| 国产尤物视频在线| 欧美一区二区三区啪啪| www..com国产| 中文字幕不卡一区| 久久国产劲爆∧v内射| 乱人伦精品视频在线观看| 亚洲欧洲一区二区在线观看| 亚洲欧美日本国产| 国产福利精品视频| 日韩精品亚洲人成在线观看| 日韩精品在线观看一区二区| 一区二区视频网站| 亚洲国产欧美另类丝袜| 国产又粗又黄又猛| 国产.欧美.日韩| 国产一二三四在线视频| 亚洲国产一区二区三区高清| 性高潮久久久久久久久| 精品深夜福利视频| 91久久综合亚洲鲁鲁五月天| 538视频在线| 最新91在线视频| 天天干天天插天天操| 666欧美在线视频| 久久久精品免费看| 一区二区三区自拍| 人妻无码一区二区三区免费| 波多野结衣中文字幕一区 | 精品处破女学生| 中文字幕第一区第二区| 亚洲精品女人久久久| 国产一区三区三区| 免费看黄色一级大片| 亚洲日本黄色| 永久免费网站视频在线观看| 国产一区不卡| 精品久久蜜桃| 婷婷视频一区二区三区| 国产欧美婷婷中文| 日本精品不卡| 欧美一区亚洲一区| 福利小视频在线| 久久综合伊人77777| av中文字幕一区二区三区| 国产偷国产偷亚洲清高网站| 国内爆初菊对白视频| 91精品一区二区三区久久久久久| 国产又大又粗又爽| 欧美日韩在线视频首页| 久久久久久久久久91| 亚洲摸摸操操av| 欧美肥妇bbwbbw| 国产精品女人毛片| 欧美人妻一区二区三区| 久久麻豆一区二区| 日韩 中文字幕| av不卡免费电影| 日本道中文字幕| 成人污污视频在线观看| 国产吃瓜黑料一区二区| 国产剧情在线观看一区二区| www,av在线| 国产一区视频网站| 欧美色图校园春色| 国产成人久久精品77777最新版本| 亚洲精品中文字幕乱码无线| 国产精品中文字幕一区二区三区| 拔插拔插华人永久免费| 久久国产夜色精品鲁鲁99| 999精彩视频| 久久www免费人成看片高清| 三上悠亚在线一区二区| 美女视频网站黄色亚洲| 亚洲天堂国产视频| 国产又粗又猛又爽又黄91精品| 欧美一级xxxx| 国产98色在线|日韩| 免费黄色a级片| 99久久99久久综合| 成人乱码一区二区三区av| 久久精品视频一区二区三区| 日本一卡二卡在线播放| 中文字幕一区二区三区在线播放| 99热这里只有精品4| 一区二区三区在线视频免费观看| 久久黄色小视频| 精品久久香蕉国产线看观看亚洲| 91精品国产乱码久久久张津瑜| 午夜成人免费电影| 免费观看日批视频| 欧美日韩大陆一区二区| 精品人妻少妇嫩草av无码专区| 精品99999| 国产一级在线| 久久天天躁夜夜躁狠狠躁2022| 成人超碰在线| 国产91九色视频| 自拍偷拍亚洲| 精品不卡一区二区三区| 欧美日韩一二三四| 麻豆传媒网站在线观看| 国产精品一区亚洲| 中文字幕中文在线| 成人蜜臀av电影| 一级特黄曰皮片视频| 亚洲女同ⅹxx女同tv| av资源免费观看| 欧美精品tushy高清| 亚洲av成人无码网天堂| www.亚洲人.com| 香蕉伊大人中文在线观看| 国产精品一区二区三区成人| h视频久久久| 亚洲高清乱码| 日韩视频二区| 99日在线视频| 久久婷婷久久一区二区三区| 成人免费毛片xxx| 欧美网站在线观看| 99久久精品免费看国产交换| 亚洲欧美日韩一区二区三区在线| 老司机99精品99| 日本精品久久久久久久| 欧美视频三区| 亚洲免费精品视频| 国产欧美欧美| 久久久久久久久久久影视| 国产午夜精品一区二区三区嫩草 | 色综合天天做天天爱| 国产手机精品视频| 在线免费观看羞羞视频一区二区| 日本h片在线| 成人h视频在线| 欧美美女在线观看| 131美女爱做视频| 国产乱码精品1区2区3区| 国产jjizz一区二区三区视频| 亚洲国产精品麻豆| 精品国产区一区二| 日韩有码片在线观看| 欧美不卡高清一区二区三区| 国产女人水真多18毛片18精品| 国产大片一区| 超碰在线97免费| 久久久综合网站| 日本中文字幕在线免费观看| 日韩欧美国产综合一区| 91大神在线网站| 青青久久av北条麻妃黑人| 国产精品调教视频| 日本一级黄视频| 国内外成人在线| 99久久精品久久亚洲精品| 欧美自拍偷拍午夜视频| 欧美日韩在线中文字幕| 91高潮精品免费porn| 国产无遮挡裸体免费久久| 日本大片免费看| 国产精品一区二区视频| 国产精品免费在线视频| 欧美日韩一区成人| 午夜视频在线| 成人黄色av免费在线观看| 日韩影院二区| 国产一二三区av| 国产精品午夜免费| 中文字幕男人天堂| 色噜噜久久综合伊人一本| 成人黄页网站视频| 亚洲一区三区视频在线观看| 麻豆一区二区三区| 国产精品视频在| 欧美人牲a欧美精品| 精品麻豆一区二区三区| 亚洲一区二区三区久久 | 国产亚洲精品aa午夜观看| 国产一级片毛片| 亚洲欧美日韩另类| 亚洲一区二区三区四区| 亚洲欧美日韩精品在线| 极品少妇xxxx精品少妇| 搜索黄色一级片| 日韩欧美三级在线| 国产天堂在线播放视频| 久久精品magnetxturnbtih| 久久亚洲一区| 天堂资源在线视频| 91精品国产入口| free性欧美| 欧美日韩亚洲一区二区三区在线观看| 日韩电影网1区2区| 国产一二三区精品| 亚洲精品国产精品国自产在线 | 91露出在线| 亚洲aⅴ男人的天堂在线观看| 激情一区二区| 国产精品久久久久久久无码| 国产极品模特精品一二| 欧美色综合网站| 国内自拍第二页| 欧美人妖在线观看| 国产午夜精品一区二区三区 | 91黄色在线看| 欧美一级二级视频| 日韩亚洲欧美一区| 五月天免费网站| 性欧美69xoxoxoxo| 久久精品99无色码中文字幕| 一二三四区视频| 久久精品国产免费观看| 91蜜桃臀久久一区二区| 可以免费观看av毛片| 亚洲日本护士毛茸茸| 人妻无码中文字幕免费视频蜜桃| 国产v综合v亚洲欧美久久|