中文内容
PostgreSQL 已成为现代应用构建方式的基础。它支撑着从早期初创公司到全球一些要求最严苛的生产系统在内的各类场景。它的长久生命力并非偶然,而是数十年工程纪律、社区协作,以及对正确性和可扩展性持续专注的结果。
随着应用架构不断演进,并且 AI 成为软件栈中的默认组成部分,PostgreSQL 也在持续适应。这种适应能力是 Microsoft 深度投资 PostgreSQL 的关键原因:为最新 PostgreSQL 版本贡献了 345 次提交,一支由 PostgreSQL 提交者和贡献者组成的团队直接参与上游项目,以及围绕 Azure 上的 Postgres 构建的托管服务、开发者工具和社区项目组合不断扩大。以下内容说明了推动这些投资的因素,以及这对当今基于 Postgres 构建应用的人意味着什么。
图 1:这张信息图展示了 Microsoft 为 PostgreSQL 生态系统作出贡献并提供支持的多种方式
为什么选择 PostgreSQL,为什么是现在
在各个行业中,PostgreSQL 正日益成为新工作负载和现代化项目的默认选择。这一转变由三个明确趋势推动。
- PostgreSQL 受到真实生产系统的信任
PostgreSQL 通过解决生产环境中的难题赢得了声誉:事务正确性、并发控制、可扩展性和运营韧性。这些特性并非为孤立的基准测试而设计,而是在多年承受真实压力运行关键任务系统的过程中形成的。
Microsoft 在全球规模上运行 PostgreSQL,并亲眼观察到同样的模式。许多上游贡献,例如近期 PostgreSQL 18 中关于异步 I/O、vacuum 行为和查询规划的工作,都直接来自大规模生产中遇到的瓶颈。
这种反馈循环是双向的。上游改进惠及整个 PostgreSQL 生态系统,而从大规模部署中获得的经验也持续影响未来开发。
- 数据库正在成为 AI 栈的一部分
数据库不再是孤立的存储层。在现代系统中,它们越来越多地处于涉及推理、排序和决策的反馈循环之中。
构建 AI 增强型应用的开发者正在提出新的问题:
- 向量数据能够与事务数据保持多近的距离?
- 相似性搜索如何遵循 SQL 谓词?
- 推理、排序和结构化数据如何在不需要过多胶水代码的情况下协同工作?
PostgreSQL 的可扩展性使其天然适合作为这些模式的基础。因此,Azure Database for PostgreSQL 和 Azure HorizonDB 专注于将向量搜索和模型调用等 AI 相关能力,直接集成到开发者熟悉的 PostgreSQL 工作流中。
- 不同的工作负载,需要不同的扩展路径
随着应用扩展,并非每种工作负载都能从同一种架构方法中受益。
有些团队希望获得完全开放、抽象层最少的单节点 PostgreSQL 体验。另一些团队则需要弹性扩展、多区域复制和快速故障转移,但不希望将复杂性推到应用层。
正因如此,Microsoft 在 Azure 上支持多种 PostgreSQL 部署模型:
- Azure Database for PostgreSQL,面向与开源保持一致的工作负载以及直接迁移场景。
- Azure HorizonDB,面向需要横向扩展计算、共享存储和低延迟全球韧性的云原生系统。
这些并不是分叉版本。它们是针对不同工作负载现实情况给出的不同工程响应。
上游协作与开发者工具
Microsoft 对 PostgreSQL 的投资不仅限于 Azure 托管服务的产品发布,还包括内部贡献者交付的代码、上游协作和生产可靠性。随着我们积累的经验不断增加,我们利用这些洞察来丰富面向更广泛社区的开源 Postgres 引擎。
惠及所有人的上游贡献
Microsoft 的 Postgres 提交者和开发者积极参与 PostgreSQL 开源项目,与全球社区一道推进核心改进。近期版本更新包括以下方面的贡献:
- 异步 I/O 基础能力。
- vacuum 和内存管理方面的性能改进。
- 面向大型数据集的规划器和执行增强。
这些变更首先进入上游,确保改进能够广泛可用,而不是绑定到任何单一云或服务。我们每年都会发布关于自身 Postgres 工作的透明概览。
Azure HorizonDB 背后的架构动因
Azure HorizonDB 的构建目标是解决一类特定 PostgreSQL 工作负载:这些负载受限于单节点扩展,但又不适合通过应用层分片来处理。例如,需要水平扩展但不增加应用复杂性的高吞吐、低延迟系统。
若干关键架构目标塑造了 Azure HorizonDB:
- 计算与存储独立扩展。
- 故障转移和恢复操作与数据规模解耦。
- 默认启用多区域复制。
其结果是一项兼容 PostgreSQL 的服务,采用共享存储、横向扩展设计,支持亚毫秒级多区域提交并可扩展到数千个核心,且不需要重写应用。
Azure HorizonDB 扩展了 PostgreSQL 的适用范围,同时保持开发者所依赖的兼容性预期。
在实际工作发生的地方改善开发者体验
PostgreSQL 长期以来一直是以开发者为中心的数据库。Azure 上的工具投资体现了这种理念。
PostgreSQL 的 Visual Studio Code 扩展安装量超过 500,000 次,将预配、架构探索、性能诊断和迁移工作流直接带入开发者已在使用的 IDE。集成的 GitHub Copilot 辅助功能可帮助进行 SQL 编写、调优,甚至处理复杂迁移,例如 Oracle 到 PostgreSQL 的迁移,这是团队在现实世界中面临的最具挑战性的场景之一。
该扩展有助于消除不必要的摩擦,同时保持 PostgreSQL 的熟悉体验。
投资 PostgreSQL 生态系统
PostgreSQL 的进步始终依赖于其社区。因此,Microsoft 的投资范围超越了产品和服务。
Microsoft 在全球范围内赞助并协助组织 PostgreSQL 会议和用户组,包括 PGConf.dev、PGConf EU、PGConf India 以及许多其他活动。POSETTE: An Event for Postgres 是由 Microsoft 的 Postgres 团队与 AMD 合作组织的免费虚拟 Postgres 活动,覆盖内部机制、生态系统工具、现实世界调试案例和生产架构等广泛主题。今年第 5 届年度活动于 6 月 16 日至 19 日举办,汇聚了 Postgres 社区的贡献者、用户和工程师,分享实践中有效的经验。
Talking Postgres 是我们团队制作的月度播客,内容包括与使用 Postgres 的人士对话,从长期贡献者到在大规模场景中解决难题的生产工程师。
Microsoft Blog for PostgreSQL 则定期提供关于产品更新、迁移指导以及 Azure 上真实 Postgres 使用模式的深入内容。
展望未来
PostgreSQL 正迈向第四个十年,并且仍在加速发展。它最初是 UC Berkeley 的一个研究项目,如今已成为现代应用广泛使用的数据库,覆盖从开发者实验到关键任务生产环境的各种场景。
在社区庆祝这一时刻之际,Microsoft 的重点始终保持一致:
- 通过上游协作强化 PostgreSQL 核心。
- 以负责任的方式扩展 PostgreSQL,以支持 AI 驱动和云原生工作负载。
- 通过开放标准和透明度维护开发者信任。
这些优先事项塑造了 Azure Database for PostgreSQL、Azure HorizonDB、开发者工具和社区参与方面的持续投资。这些领域的更新现在会通过 Microsoft for PostgreSQL LinkedIn 页面定期分享。
明确的结论
PostgreSQL 的成功始终植根于工程纪律和社区信任。维持这种成功需要有意义的长期投资,不仅投资于服务,也投资于项目本身以及其背后的人。
Microsoft 对 PostgreSQL 的承诺体现了这一信念:贡献上游、审慎构建,并支持一个持续推动数据库向前发展的生态系统。






