PostgreSQL 性能优化 1
硬件 数据库最重要的就是 I/O 了
所以一切从 I/O 开始
RAID: 这个基本不用说,数据库放 RAID10 上面,只读的备份数据库可以放 RAID0,反正挂了没关系
谨记:数据库是Random Read RAID 卡的选择: RAID 卡一定要带电池的才可以(BBU)有电源的才能做到东西写进 CACHE,RAID 就返回硬盘写成功(不用等) 1
Areca 2
LSI (真正的LSI,re-brand 不要) 3
HP P400 以上系列 硬盘选择: 首选是SAS: 15K RPM 每个 SAS 大约能提供 25MB/s 的Random Write
也就是说在RAID10 的设定下,如果需要50MB/s 的Random Write 就需要4个硬盘 节俭选择是: SATA 可以多用几个硬盘(SAS 一倍数量)达到在 RAID10 中接近 SAS 的速度
就算 SATA 买 SAS 一倍的数量,价格仍然比 SAS 便宜
也可以买 产品: 例如 Compaq 的 MSA 70 (P800 Battery backed RAID control) CPU:64 位 Cache:越大越好 (现在个人电脑都 3M 的cache 了) CORE:越多 越好 (postgresql 毕竟是跑 cpu 的)建议最少 4 个 core RAM: 最少 4G
通常根据具体需求,用 16-64G 的RAM 2
OS (系统) 可用系统: 1
Debian Stable 2
CentOS 3
Ubuntu LTS 4
Red Hat 5
SUSE Enterprise 如果准备付费(服务),那么就是 Canonical, Novell 跟 Redhat 这三家选择而已 如果准备不买任何服务,可以用Debian, CentOS, Ub