成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

PostgreSQL配置優化

開發 前端 PostgreSQL
在fsync打開的情況下,優化后性能能夠提升30%左右。因為有部分優化選項在默認的SQL測試語句中沒有體現出它的優勢,如果到實際測試中,提升應該不止30%。測試的過程中,主要的瓶頸就在系統的IO,如果需要減少IO的負荷,最直接的方法就是把fsync關閉,但是這樣就會在掉電的情況下,可能會丟失部分數據。

硬件和系統配置

操作系統 Ubuntu13.04
系統位數 64
CPU Intel(R) Core(TM)2 Duo CPU
內存 4G
硬盤 Seagate ST2000DM001-1CH164
測試工具 PostgreSQL-9.1.11

 測試工具

工具名稱 pgbench
數據量 200W(整個數據庫大小約為300M)
模擬客戶端數 4
線程數 4
測試時間 60秒
  • 準備命令:pgbench -i -s 20 pgbenchdb
  • 測試命令:pgbench -r -j4 -c4 -T60 testdb

配置文件

默認的配置配置文件是保存在/etc/postgresql/VERSION/main目錄下的postgresql.conf文件

  • 如果想查看參數修改是否生效,可以用psql連接到數據庫后,用<show 選項名> 來查看。
  • 如果要修改shared_buffers, 在ubuntu下可能需要執行命令<sysctl -w>Managing Kernel Resources

主要選項

選項 默認值 說明 是否優化 原因
max_connections 100 允許客戶端連接的最大數目 因為在測試的過程中,100個連接已經足夠
fsync on 強制把數據同步更新到磁盤 因為系統的IO壓力很大,為了更好的測試其他配置的影響,把改參數改為off
shared_buffers 24MB 決定有多少內存可以被PostgreSQL用于緩存數據(推薦內存的1/4) 在IO壓力很大的情況下,提高該值可以減少IO
work_mem 1MB 使內部排序和一些復雜的查詢都在這個buffer中完成 有助提高排序等操作的速度,并且減低IO
effective_cache_size 128MB 優化器假設一個查詢可以用的最大內存,和shared_buffers無關(推薦內存的1/2) 設置稍大,優化器更傾向使用索引掃描而不是順序掃描
maintenance_work_mem 16MB 這里定義的內存只是被VACUUM等耗費資源較多的命令調用時使用 把該值調大,能加快命令的執行
wal_buffer 768kB 日志緩存區的大小 可以降低IO,如果遇上比較多的并發短事務,應該和commit_delay一起用
checkpoint_segments 3 設置wal log的最大數量數(一個log的大小為16M) 默認的48M的緩存是一個嚴重的瓶頸,基本上都要設置為10以上
checkpoint_completion_target 0.5 表示checkpoint的完成時間要在兩個checkpoint間隔時間的N%內完成 能降低平均寫入的開銷
commit_delay 0 事務提交后,日志寫到wal log上到wal_buffer寫入到磁盤的時間間隔。需要配合commit_sibling 能夠一次寫入多個事務,減少IO,提高性能
commit_siblings 5 設置觸發commit_delay的并發事務數,根據并發事務多少來配置 減少IO,提高性能

 測試數據

  • 測試的數據是運行3次,取平均值。
  • 關閉fsync是為了更好的體現出其他參數對PostgreSQL的影響。
參數 修改值 事務總數 tps(包括建立連接) tps(不包括建立連接)
默認設置   8464 140.999792 141.016182
fsync off 92571 1479.969755 1480.163355
shared_buffers 1GB 100055 1635.759275 1635.977823
work_mem 10MB 101209 1665.804812 1666.04082
effective_cache_size 2GB 98209 1636.733152 1636.970271
maintenance_work_mem 512MB 92930 1548.029233 1548.223108
checkpoint_segments 32 195982 3265.995 3266.471064
checkpoint_completion_target 0.9 194390 3239.406493 3239.842596
wal_buffer 8MB 198639 3310.241458 3310.724067
恢復fsync off 11157 185.883542 185.909849
commit_delay && commit_siblings 10 && 4 11229 187.103538 187.131747

總結

  事務總數 tps(包括建立連接) tps(不包括建立連接)
優化前 8464 140.999792 141.016182
優化后(fsync=on) 11229 187.103538 187.131747
優化后(fsync=off) 198639 3310.241458 3310.724067

在fsync打開的情況下,優化后性能能夠提升30%左右。因為有部分優化選項在默認的SQL測試語句中沒有體現出它的優勢,如果到實際測試中,提升應該不止30%。

測試的過程中,主要的瓶頸就在系統的IO,如果需要減少IO的負荷,最直接的方法就是把fsync關閉,但是這樣就會在掉電的情況下,可能會丟失部分數據。

原文鏈接:http://blog.csdn.net/kyle__shaw/article/details/17576259

責任編輯:陳四芳 來源: 路人丙的奮斗史
相關推薦

2024-05-08 16:47:24

PostgreSQL數據庫

2023-02-07 08:15:45

PostgreSQLIO技巧

2018-05-25 15:04:57

數據庫PostgreSQL查詢優化器

2018-05-23 13:47:28

數據庫PostgreSQL查詢優化

2020-10-06 18:57:14

PostgreSQL數據庫數據導入

2017-12-12 14:26:16

數據庫PostgreSQL邏輯優化

2023-03-10 08:37:33

預熱優化PostgreSQL

2024-04-03 09:12:03

PostgreSQL索引數據庫

2024-04-12 08:28:38

優化查詢語句PostgreSQL索引

2011-08-24 14:07:13

PostgreSQLStreaming R

2023-03-07 08:17:19

Postgresql數據庫優化

2022-01-10 07:59:14

PostgreSQl 主從流復制歸檔配置

2019-10-21 13:28:38

UbuntuPostgreSQL命令

2024-04-16 09:53:56

PostgreSQL數據庫優化索引

2010-09-26 10:02:09

JVM優化配置

2009-07-05 11:23:44

2014-04-04 10:16:51

Nginx配置Nginx性能優化

2024-04-08 09:00:30

PostgreSQ數據庫EXPLAIN 命令

2014-01-05 17:51:03

2019-03-12 15:20:33

tomcat7配置優化
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲午夜精品一区二区三区他趣 | 午夜一区二区三区在线观看 | 久久久亚洲一区 | 精品视频一区二区在线观看 | 亚洲国产精品一区 | 中文字幕日韩欧美一区二区三区 | 在线精品一区二区 | 日韩成人免费视频 | 免费观看成人av | 97日日碰人人模人人澡分享吧 | 国产精品爱久久久久久久 | 农村黄性色生活片 | 欧美一级片免费看 | 欧美一级免费看 | 久久国产精品久久久久久久久久 | 亚洲一区有码 | 精品欧美一区二区在线观看视频 | 日本高清视频在线播放 | www.日日夜夜 | 亚洲精品18| 九九热免费观看 | 99色在线 | 四虎永久在线精品免费一区二 | 91久久国产精品 | 玖玖色在线视频 | 欧美成人免费电影 | 久久毛片 | 免费激情 | 在线免费中文字幕 | 久久久久久高潮国产精品视 | 亚洲人在线播放 | 精产国产伦理一二三区 | 性一交一乱一伦视频免费观看 | 狠狠干五月天 | 久久精品一二三影院 | 国产精品色一区二区三区 | 亚洲+变态+欧美+另类+精品 | 国产性生活一级片 | 欧美理伦片在线播放 | 一级a性色生活片久久毛片波多野 | 色天堂视频 |