问题描述
|
我正在使用具有以下特征的数据库:
多次插入(范围为1k /秒)
数据上的索引很多,复杂的联接
否删除或更新,仅插入,读取和删除表
我不在乎对数据库的读取是否反映准确的状态
数据不是很关键,我已经在运行fsync = off
我已经对postgres优化有所了解,但是我希望可能还有一些更适合我的特定用例的技巧。
解决方法
您可以通过将WAL指向/ dev / null或RAMDISK来禁用WAL。请注意,有人猜测您可能甚至在干净停止后也无法重新启动数据库,因此,我建议您谨慎并进行测试。
确保将表群集。分区也可能有帮助。
当然可以禁用sync_commits。
http://wiki.postgresql.org/wiki/FAQ#How_do_I_tune_the_database_engine_for_better_performance.3F
,您可能要使用未记录的表(从9.1开始可用)。它基本上是一个禁用WAL的表。