我们正在使用Postgres 9.3(计划升级到9.5)。想知道是否有一些可用于优化Postgresql服务器的清单。
我正在寻找以下级别的优化:
我拥有 5000万 记录的客户表,而交易表有 24亿 记录。
索引如下(两个表都没有分区):
客户主:CustomerId和EnrolledDate(单一索引)
交易:CustomerId和InvoiceDate(单一索引)
所有预期的报告/输出都使用上述两个表格。
服务器规格如下:
你能帮我解决这个问题吗?
答案 0 :(得分:0)
您将永远不会找到这样的清单,因为随着数据的增长,性能瓶颈很大程度上取决于应用程序的特定读写模式。
现在,我使用过的最大的PostgreSQL数据库大小为10TB并且增长迅速。我们的挑战是读/写缩放,管理这些需要密切关注实际问题并理解事物在低层次上的工作方式。
如果行数是您主要关注的问题,那么您的核对清单可归结为:
请注意,索引头部的频繁更新可能会产生令人不快的副作用,并且查询计划不会告诉您所有内容。但它是从哪里开始的。