PostgreSQL 18 Beta: 异步 I/O 的革命性改进

2025-05-07

PostgreSQL 18 Beta 1 版本引入了备受期待的异步 I/O (AIO) 功能,这标志着 PostgreSQL 在 I/O 处理方面的一次重大飞跃。AIO 通过允许数据库并发发出多个读取请求,显著提升了在云环境下的性能,尤其是在延迟敏感的场景中。目前 AIO 仅支持读取操作,但未来版本可能会扩展到写入操作。新的 `io_method` 配置参数允许选择同步、I/O 工作进程或 `io_uring` 三种 I/O 模式,其中 `io_uring` 在支持的 Linux 内核上能提供最佳性能。基准测试显示,在 AWS 云环境下,AIO 可将读取性能提升 2-3 倍。然而,异步 I/O 也改变了性能监控方式,`EXPLAIN ANALYZE` 的 I/O 时间统计可能不再完全准确,需要结合新的 `pg_aios` 视图进行分析。

阅读更多
开发

Postgres 17 即将到来: 顺序扫描和 ANALYZE 的流式 I/O

2024-06-13
Postgres 17 即将到来:  顺序扫描和 ANALYZE 的流式 I/O

Postgres 17 引入了流式和向量化 I/O,这是实现异步 I/O 的重要一步。尽管异步 I/O 尚未实现,但内部 API 的重构已经带来了性能提升。本文探讨了 Postgres 17 中的这些变化,包括用于流式读取的新内部 API,以及 pg_prewarm、ANALYZE 和顺序扫描如何利用这些 API 来提高性能。

阅读更多
未分类