内容提要
Postgres 18将于2025年9月发布,带来性能提升和新功能。新增的异步I/O和跳过扫描优化提高了查询效率,RETURNING子句允许在INSERT、UPDATE等操作中访问旧新行值。这些改进体现了Postgres对智能性能和简化开发的承诺。
关键要点
-
Postgres 18将于2025年9月发布,带来性能提升和新功能。
-
新增的异步I/O(AIO)提高了I/O吞吐量,特别是在顺序扫描和VACUUM操作中。
-
RETURNING子句允许在INSERT、UPDATE、DELETE和MERGE语句中访问旧新行值,简化开发和提高效率。
-
跳过扫描优化使Postgres能够在未过滤前导列的情况下使用多列B树索引,提升查询性能。
-
跳过扫描功能解决了多列B树索引在查询时的限制,避免了创建多个索引的需求。
-
跳过扫描优化特别适用于低基数的前导列和后续列的等值条件。
-
Postgres 18的跳过扫描功能仅适用于B树索引,且性能受限于省略列的基数。
-
跳过扫描简化了数据库设计,减少存储开销,提高查询性能。
-
Postgres社区致力于持续改进性能,跳过扫描功能是这一承诺的体现。
延伸解读
异步I/O的优势
Postgres 18引入的异步I/O(AIO)功能显著提升了I/O吞吐量,尤其在顺序扫描和VACUUM操作中表现突出。这意味着在处理大量数据时,用户可以期待更快的响应时间和更高的效率,尤其是在Linux环境下,性能提升可达2-3倍。
跳过扫描的应用场景
跳过扫描优化特别适用于低基数的前导列和后续列的等值条件查询。这一功能使得开发者无需创建多个索引,简化了数据库设计,降低了存储开销。对于分析和报告工作负载,跳过扫描提供了更大的灵活性,能够有效提升查询性能。
跳过扫描的限制
尽管跳过扫描功能强大,但目前仅适用于B树索引,且性能受限于省略列的基数。对于高基数的前导列,仍可能需要专门的索引。此外,该功能要求后续列必须有等值条件,复杂的查询模式可能无法获得预期的性能提升。
延伸问答
Postgres 18的主要新功能是什么?
Postgres 18引入了异步I/O和跳过扫描优化,提升了查询效率,并新增了RETURNING子句以访问旧新行值。
跳过扫描优化如何改善查询性能?
跳过扫描优化允许在未过滤前导列的情况下使用多列B树索引,从而提升查询性能,避免创建多个索引的需求。
RETURNING子句在Postgres 18中有什么用处?
RETURNING子句允许在INSERT、UPDATE、DELETE和MERGE操作中访问旧新行值,简化开发并提高效率。
跳过扫描功能的限制是什么?
跳过扫描功能仅适用于B树索引,性能受限于省略列的基数,并且需要在后续列上有等值条件。
Postgres 18的跳过扫描功能适合哪些场景?
跳过扫描功能特别适用于低基数的前导列和后续列的等值条件,以及分析和报告工作负载。
Postgres 18的发布计划是什么时候?
Postgres 18计划于2025年9月发布。