目录
文档用途
本文档提供了HighGo Database性能参数的作用及调整方向,使用过程中需参照实际情况具体进行选择。
详细信息
shared_buffers
最重要的参数,HighGo Database通过shared_buffers 和内核和磁盘进行数据交换,因此应该尽量大,让更多的数据缓存在shared_buffers中。通常设置为实际 RAM 的25% – 40%。
同时要在系统中设置 kernel.shamax 的值,该值决定了进程可调用最大共享内存数量。该值设置要稍大于shared_buffers的值。
work_mem
HighGo Database在执行排序操作时,会根据work_mem的大小决定是否将一个大的结果集拆分为几个小的和 work_mem 差不多大小的临时文件。显然拆分的结果是降低了排序的速度。因此增加work_mem有助于提高排序的速度。通常设置为实际RAM的2% – 4%,根据需要排序结果集的大小而定。
注意:这是 per connection and per sort 的设定。如果有100个连接,每个连接有2个sort 运算,那么需要的总内存是:100 * 2 * work_mem。
利用EXPLAIN ANALYZE可以检查是否有足够的work_mem。
effective_cache_size
值设置稍大,优化器更倾向使用索引扫描而不是顺序扫描,建议的设置为可用空闲内存的 25%,这里的可用空闲内存指的是主机物理内存在运行数据库后的空闲值。
maintenance_work_mem
这里定义的内存只是在 CREATE INDEX, VACUUM 等时用到,因此用到的频率不高,但是往往这些指令消耗比较多的资源,因此应该尽快让这些指令快速执行完毕:给 maintence_work_mem较大的内存,比如1024MB
更多详细信息请登录【瀚高技术支持平台】 查看https://support.highgo.com/#/index/docContent/b168b9d2031ed090