首 页 ┆ 源码下载 ┆ IT学院 ┆ 字体下载 ┆ 模板下载 ┆ 源码发布 ┆ 广告合作 ┆ 网站地图
► 设为首页
► 加入收藏
► 联系我们
源码下载 >> ASP源码 | PHP源码 | ASP.net源码 | JSP源码 | CGI源码 | VC/C++源码 | VB源码 | Delphi源码 | Flash源码
文章学院 >> 网络编程 | 网页设计 | 图形图象 | 数据库 | 服务器 | 网络媒体 | 网络安全 | 操作系统 | 办公软件 | 软件开发 | 黑客知识
字体下载 >> 精制字体 | 非英字体 | 艺术字体 | 著名字体 | 哥特式 | 简单字体 | 手写体 | 节假日 | 图案字体 | 精度像素 | 中文字体
模板下载 >> 企业门户 | 数码网络 | 休闲娱乐 | 影视音乐 | 旅游名胜 | 文化艺术 | 电子商务 | 个性展示 | 登陆导航 | Flash模板
►►您当前的位置:源码园 → IT学院 → 操作系统 → Linux → 文章内容

PostgreSQL Hardware Performance Tuning

作者:佚名  来源:网上收集  发布时间:2006-5-22 18:23:59
本文转自 CU 论坛PostgreSQL Hardware Performance Tuning ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1: Postgresql Shared Buffer Cache postgresql.conf --> shared_buffers pg默认配置申请 1000 个 shared buffers, 每个 8k . postgresql 并不直接修改硬盘上的数据,需要的数据被读到 shared buffer cache 中,后台程序修改这些块,最后刷新到硬盘上。 后台程序刷新数据到硬盘的操作其实是请求系统内核来完成对硬盘的修改操作,而 内核对于硬盘的操作其实是先到 kernel disk buffer cache 中的。
2: 多大是太大 将所有的内存都给 shared_buffers 将导致没有内存来运行程序。 unix 管理内存使用 swap, 当没有内存可用的时候,内核会将长时间不用的内存 挪到 swap 去,这个叫:swap pageout,当你再次使用它的时候内核又会将其挪 回来,这个叫:swap pagein,这个操作有很大的不好,因为它会导致你的程序 挂起直到操作完成。 3: cache size 的影响 4: 正确的 Shared Buffer Cache 大小 (1) 它应该足够大来应付通常的表访问操作。 (2) 它应该足够小来避免 swap pagein 的发生。 5:Sort Memory Batch Size postgresql.conf --> sort_mem 当对一个大表或记录集进行排序时,pg将对它们进行部分排序,中间数据结果会 被放在临时文件中。当所有的行都被排序完了后,这些临时文件会被合起来进行 再次排序。增加 batch 的大小可以减少临时文件并且加快排序的速度。如果 sort batch 太大将导致 pagein 。这种情况下,较少的 sort batch 和更多的临 时文件将会使排序更快。这个主要是对 order by, create index, merge join. 6: Cache Size and Sort Size cache size 和 sort size 都影响内存的使用。 记住, cache size 是在 postmaster 启动的时候就申请好的,sort size 的改变是依赖于执行多少个排序。 通常,cache size 比 sort size 更有效果。 一开始调整, 如果你只有一些大的session而有更多的小session: 10% of RAM for cache size 2-4% of RAM for sort size 还有一个很有价值的参数: effective_cache_size。 优化器用这个参数来预估 内核的硬盘 buffer cache. 当内核有 unified buffer cache (统一缓冲), 这个 值将是没被使用的内存的平均值,因为这种内核会使用所有没有使用的内存来作 最近硬盘访问的缓存的;当内核用 fixed-sized disk buffer cache 时,这个参 数应该设成一样的,通常是内存的 10%. 7: Disk Locality (硬盘分区的物理分布位置) 分布在头上的数据的读取很快,连续分布的块的读取比不连贯的快。 8:多个硬盘 设计你的数据库文件如何在硬盘上分布。有点复杂........ 9: 硬盘的缓存 关掉的好,要不突然停电就惨了。当然,你的硬盘有备用电源就不用关了。 hdparm -W0, sysctl hw.ata.wc = 0 10:SCSI vs. IDE 当然是 scsi 好了。 11: 文件系统格式 推荐 BSD 的 UFS/FFS, Linux 就比较惨了,虽然有很多中文件系统,但没有一个 适合的。 12: 多个 CPU 当然好了。但如果只有一个连接,则有点浪费。 13:Ceckpoints postgresql.conf --> checkpoint_segments = 3 如果发现太频繁了,加大。 14: 结论 幸运的是,postgresql不需要太多的调整。很多参数都会被优化器自动调整的。 Cache size 和 sort size 是管理员需要调整的以便更好的使用内存。硬盘访问 可以同交叉分布数据到不同的硬盘上来改善性能,当然,还有scsi 。_________________^^^^^^^^^^^^^^^^^^^^^^^^^^ ============ == 个人观点 == == 权作废话 == ============ VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV

[] [返回上一页] [打 印]
  • 上一篇文章:网络安全——iptable
  • 下一篇文章:通过红旗4.1plus管窥红旗5.0(多图)

  • 相关文章:
  • 在Linux上安装postgresql的全过程
  • Squid 错误解决一则:squid: ERROR: No running copy...
  • PostgreSQL Hardware Performance Tuning
  • postfix+ldap+sasl2+courier-imap for freebsd完全p...
  • [图文]黑客我不怕Outpost防火墙应用技巧攻略(3)
  • [图文]黑客我不怕Outpost防火墙应用技巧攻略(2)
  • [图文]黑客我不怕Outpost防火墙应用技巧攻略(1)
  • 入侵我不怕 Outpost防火墙应用技巧攻略--入侵,我不怕...
  • [图文]新云网站管理系统articlepost.asp文件注入漏洞...
  • 全面利用本地Post方式获取WebSHELL--Post方式,获取,...
  • FreeBSD下安装PostgreSQL新手教程
  • 如何用asp+获取post的页面的数据
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 源码发布
Copyright © 2003-2009 Ymyasp.Com. All Rights Reserved .
备案序号:粤ICP备07029071号