Postgre SQL   发布时间:2022-05-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了PostgreSQL最大化性能SSD大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我将拥有一个庞大的postgresql 9.3数据库,@R_674_10498@许多表,每个表的条目超过100m.这个数据库基本上是只读的(一旦我填写了所有必要的表并在数据库上不再构建索引)和单用户访问(从localhost运行和基准测试多个查询),因为将使用该数据库仅用于研究目的.查询将始终在整数DB字段上使用JOIN.

我可能会为此目的购买一块SSD(256-512GB).我之前没有使用过SSD作为数据库,所以有什么我应该害怕的吗?我可以将整个数据库放在SSD上,还是只放入索引?调整POSTGResql for SSD需要什么特别的建议/教程吗?请注意,我有一个带有i7和32Gb RAM的好工作站,所以也许你也可以提供一些建议.

没有备份.像任何存储设备一样,它可能会死亡.保持备份.

如果数据加载需要很长时间,我会在完成数据加载后备份只读数据库,通过停止并复制它.这样一来,如果出现问题,以后再重新创建会更容易.

如果适合,请存储整个数据库.

如果没有,请在SSD上放置一个表空间,并使用它来存储索引以及尽可能多的经过严格查询的表.

SSD的大部分优点都适用于OLTP写入负载.只读加载的主要优点是快速搜索,而slardIEre已经涵盖了这一点.

您可能希望设置effective_io_concurrency = 5或其他东西以反映SSD可以执行快速,高度流水线的随机读取这一事实……但它只影响位图索引扫描,实际上random_page_cost已经包含了这一点.

对于只读负载,它没有太大的区别.

有关初始数据加载,请参阅:

> https://stackoverflow.com/q/12206600/398670
> https://stackoverflow.com/q/758945/398670
> https://stackoverflow.com/q/9407442/398670

为数据加载设置一个大的maintenance_work_mem.我使用至少8GB.

为查询工作设置一个很大的work_mem.适当的大小取决于查询的复杂性.从500MB开始,从那里上升.

为初始数据加载提供checkpoint_segments(大量).

记得禁用VM overcommit! (参见POSTGResql手册:http://www.POSTGResql.org/docs/current/static/kernel-resources.html)

大佬总结

以上是大佬教程为你收集整理的PostgreSQL最大化性能SSD全部内容,希望文章能够帮你解决PostgreSQL最大化性能SSD所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:所以