当前位置:  开发笔记 > 数据库 > 正文

性能调优PostgreSQL

如何解决《性能调优PostgreSQL》经验,为你挑选了2个好方法。

请记住,我是sql/databases世界的新手.

我每秒插入/更新数千个对象.这些对象以多个第二间隔被主动查询.

我应该做些什么基本的事情来调整我的(postgres)数据库?



1> tommym..:

这是一个广泛的主题,所以这里有很多东西供你阅读.

EXPLAIN和EXPLAIN ANALYZE对于了解db-engine中正在发生的事情非常有用

确保将相关列编入索引

确保没有索引不相关的列(如果必须更新太多索引,插入/更新 - 性能可能会耗尽)

确保你的postgres.conf已正确调整

了解work_mem是什么,以及它如何影响您的查询(主要用于较大的查询)

确保您的数据库已正确规范化

VACUUM用于清除旧数据

ANALYZE用于更新统计信息(统计数据的统计目标)

持久连接(您可以使用像pgpool或pgbouncer这样的连接管理器)

理解如何构造查询(连接,子选择,游标)

缓存数据(即memcached)是一种选择

当你已经用尽这些选项时:添加更多内存,更快的磁盘子系统等.硬件很重要,特别是在较大的数据集上.

当然,阅读postgres/databases上的所有其他线程.:)



2> Ben S..:

首先,阅读官方手册的性能提示.

对所有查询运行EXPLAIN并了解其输出将告诉您查询是否尽可能快,以及是否应添加索引.

完成后,我建议您阅读本手册的" 服务器配置"部分.有许多选项可以进行微调,以进一步提高性能.请务必了解您正在设置的选项,因为如果设置不正确,它们可能会轻易阻碍性能.

请记住,每次更改查询或选项时,请进行测试基准测试,以便了解每项更改的效果.

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有