的确,在某些场景中其他数据库表现得更好。例如,在TPC-H测试套件中,PostgreSQL缺少针对一些复制查询优化的功能。它在大规模数据仓库中的应用中,比一些商业数据库要弱一些。如果你需要执行TPC-H中包含的那些最复杂的查询,那么Oracle、DB2、SQL Server在这方面的一些性能优势值得你去选择。也有一些从PostgreSQL衍生出来的数据库,增加了一些功能使得它们更适用于数据仓库和大型系统。例如,Greenpulm、Aster Data和Netezza。
对于一些Web应用来说,除非舍弃对数据库完整性的维护,否则性能无法接受,而这时PostgreSQL所不允许的。选择一个相对不是很严谨的数据库,比如MySQL,甚至迷你的SQLite,反而更适合这些Web应用。与已经很成熟的数据仓库市场不同,这类应用的设计还在持续变化。基于键值对(key-value)的NoSQL数据库(包括CouchDB、MongoDB和Cassandra)越来越流行。如果只进行简单查询,对运行键值对存储的高级查询所需要的运行时间不敏感是,那么这些NoSQL数据库是很容易超越传统数据库的。
但是对于那些处于两个极端中间的“正常”数据库应用来说,PostgreSQL9.6的性能已经足够,在数据库成为系统瓶颈之前,硬件和程序架构才是性能的限制因素。与此同时,PostgreSQL的传统优势(比如优秀的复杂查询处理能力、高度可编程性)都会保持下去。