展开菜单
首页 精品内容 本月促销 装机必备 Windows PDF教程 macOS软件 IOS软件 Android AI 专题
全部分类

当前位置:

首页 > 硬件相关 > 谷歌云:投资于PostgreSQL的未来

谷歌云:投资于PostgreSQL的未来

谷歌云持续投入PostgreSQL开源项目,聚焦逻辑复制、升级韧性与系统稳定性三大方向。近期工作包括为逻辑复制引入自动冲突检测框架、实现序列数据自动同步,并修复订阅僵局问题。升级流程方面,优化了大型对象处理与逻辑复制槽保留机制,修复了约束迁移错误。此外,还解决了扩展加载异常和WAL刷新。

本文目录

    在数据库技术的演进中,开源社区的协作是创新的核心引擎。作为这一生态的重要参与者,谷歌云始终将PostgreSQL视为其托管数据库服务(如Cloud SQL和AlloyDB)的基石,并持续投入资源回馈上游项目。过去半年,团队的工作重心清晰聚焦于几个关键领域:提升逻辑复制的成熟度、增强数据库升级的韧性,以及修复影响稳定性的底层问题。这些努力并非孤立的技术迭代,而是为了构建一个更可靠、更易用的基础,最终惠及全球范围内依赖PostgreSQL的每一位开发者和企业。

    技术贡献:2025年7月 – 2025年12月

    从2025年7月到12月,谷歌云工程师在PostgreSQL开源项目中的贡献,主要围绕逻辑复制、升级流程和系统稳定性三大方向展开。具体的技术改进和修复如下。

    逻辑复制增强

    逻辑复制堪称PostgreSQL的“瑞士军刀”,它能实现近乎零停机的版本升级、数据选择性同步,乃至构建主动-主动式架构。然而,一些长期存在的功能缺口限制了其潜力。近期社区的几项关键工作,正是为了填补这些空白。

    自动冲突检测

    构建主动-主动式PostgreSQL集群,最大的挑战之一就是处理行级数据冲突。当两个节点同时修改同一行数据时,传统的逻辑复制会因此卡住,不得不等待人工干预。这无疑成了高可用架构的绊脚石。好消息是,社区现已实现了自动冲突检测的基础框架——这是迈向自动化冲突解决的第一步。该机制使得复制工作进程能够自动识别出传入的数据变更(插入、更新或删除)与本地数据状态存在冲突,为后续的自动化处理铺平了道路。目前,相关工作正推进至第二阶段,旨在将冲突记录写入专用的日志表,为更智能的解决策略提供数据基础。

    序列的逻辑复制

    长期以来,PostgreSQL的逻辑复制只“关心”表数据,却将序列(Sequence)置之度外。这导致在迁移或大版本升级时,数据库管理员必须手动同步序列的当前值,否则极易在新主库上引发“重复键值”错误。考虑到序列在生成主键等场景中的普遍应用,这无疑是一个重大的使用障碍。现在,社区正在攻克这一难题,致力于让序列也能通过逻辑复制自动同步,从而消除这一手动操作风险,使逻辑复制方案更加完整。

    修复DROP SUBSCRIPTION订阅僵局

    此前,执行DROP SUBSCRIPTION命令删除订阅时,它会持有一个访问发布者的排他锁,以清理对应的复制槽。但如果发布者恰好位于同一台服务器的另一个数据库中,就可能引发一个有趣的“自我僵局”:该命令在等待自己持有的另一把锁,导致进程挂起。这个缺陷已被分析并修复,消除了这一潜在的运维陷阱。

    升级韧性

    平滑、无忧的升级体验,是数据库产品成熟度的试金石。为了提升PostgreSQL的升级韧性,团队针对几个关键痛点进行了优化。

    大型对象的pg_upgrade优化

    对于存储了大量大型对象(如图片、文档)的数据库,使用pg_upgrade进行跨版本升级可能耗时数天,令人难以忍受。性能瓶颈在于旧版本逐个处理大对象的低效方式。通过优化,改为直接导出底层数据表,升级速度得到了数量级的提升,将漫长的等待变成了分钟级的操作。

    防止升级过程中的逻辑复制槽失效

    在升级至PostgreSQL 17时,如果max_slot_wal_keep_size参数未设置为-1,升级过程可能会失败。这个修复增强了pg_upgrade的健壮性,用户无需再手动调整参数。服务器现在会自动保留逻辑复制槽所需的WAL日志数据,简化了升级流程,降低了因配置疏忽而导致失败的风险。

    修复pg_upgrade中与NULL约束相关的错误

    在从PostgreSQL 17或更新版本进行升级时,pg_dump工具中存在一个漏洞,导致继承列上的非继承式NULL约束无法被正确保留。修复方案更新了底层查询逻辑,确保在升级过程中,这类特定的表结构约束能够被准确识别和迁移,保障了数据模型的完整性。

    错误修复

    除了功能增强,持续修复影响稳定性的底层错误也同样重要。以下是此周期内解决的几个典型问题。

    提升pgstattuple扩展对异常索引页的健壮性

    pgstattuple扩展常用于分析表和索引的物理存储状况,以判断是否需要执行VACUUM或REINDEX等维护操作。然而,它在处理哈希索引和GiST索引中的空白或无效页面时,会引发错误。此次修复使其能够妥善处理这些异常页面,增强了工具的可靠性。

    修复从嵌套路径加载扩展的问题

    动态加载共享库(扩展)时存在一个错误:当库文件位于嵌套子目录时,系统错误地剥离了路径前缀,导致无法找到并加载这些扩展。修复后,系统仅对简单的文件名执行前缀剥离,从而确保能够正确加载位于复杂路径下的扩展模块。

    硬化WAL刷新逻辑

    XLogFlush()和XLogNeedsFlush()是PostgreSQL内部确保预写式日志(WAL)持久化的关键函数。但在某些边缘场景下(如恢复结束时的检查点),这些函数依赖的判断条件存在不一致性,可能导致选择错误的代码路径。这个问题不仅影响当前版本的稳定性,更对后续计划引入的异步I/O等新功能构成了潜在风险。此次修复硬化了相关逻辑,为未来更高级的I/O优化打下了坚实基础。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    硬件相关 谷歌
    相关文章 更多
    精品专题 更多
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    macOS软件

    正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

    IOS软件

    正软商城iOS软件专区,精选适用于iPhone和iPad的办公、学习、影音、设计、效率及AI应用,提供功能介绍、适用设备、系统要求和正版获取方式等信息。

    AI

    正软商城AI软件专区,汇集AI写作、AI绘画、AI视频、AI办公、AI编程、AI翻译、智能客服和数据分析等人工智能工具,提供功能介绍、适用平台、收费方式及正版购买信息。

    Mac软件 更多
    Postman macOS版
    Postman macOS版

    Postman是一套面向API全生命周期的开发与测试平台,可在Mac上发送和调试多种协议请求,管理集合、环境及认证信息,并完成脚本测试、模拟服务、监控、文档发布和团队协作。它适合开发、测试及运维人员使用,提供个人免费方案。

    Docker Desktop macOS版
    Docker Desktop macOS版

    Docker Desktop 是 Docker 官方为 Mac 提供的容器开发环境,集成 Docker Engine、命令行工具、Compose、Build、Kubernetes 与图形化管理界面。

    Android Studio macOS版
    Android Studio macOS版

    Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。

    Xcode macOS版
    Xcode macOS版

    Xcode 是苹果面向 Mac 提供的官方集成开发环境,将代码编辑、项目构建、SwiftUI 实时预览、设备模拟、自动化测试、断点调试、性能分析和应用分发整合在同一套工作流中,适合开发与维护 iPhone、iPad、Mac、Apple Wa

    JetBrains WebStorm macOS版
    JetBrains WebStorm macOS版

    JetBrains WebStorm 是面向 JavaScript、TypeScript 和现代 Web 技术的专业集成开发环境,可智能理解项目结构,提供代码补全、重构、错误检查、运行调试、测试及 Git 工具。

    PhpStorm macOS版
    PhpStorm macOS版

    PhpStorm 是 JetBrains 推出的专业 PHP 集成开发环境,可在 Mac 上完成代码编写、智能检查、重构、调试、测试和数据库管理。它支持主流 PHP 框架、Composer、Git、Docker 与远程解释器。

    JetBrains PyCharm macOS版
    JetBrains PyCharm macOS版

    JetBrains PyCharm 是面向 Python 开发者的集成开发环境,提供智能补全、代码检查、重构、调试、测试、版本控制及虚拟环境管理功能。Mac 版兼容 Intel 与 Apple 芯片,核心功能可免费使用。

    JetBrains IntelliJ IDEA macOS版
    JetBrains IntelliJ IDEA macOS版

    IntelliJ IDEA 是 JetBrains 推出的专业集成开发环境,重点服务于 Java、Kotlin 与 JVM 项目开发。软件集成代码补全、静态检查、重构、调试、测试、版本控制及构建工具,并可借助插件扩展语言和框架支持。

    Visual Studio Code macOS版
    Visual Studio Code macOS版

    Visual Studio Code 是微软提供的免费代码编辑器,支持 macOS,并为 Intel 与 Apple 芯片 Mac 提供适配版本。软件集代码编辑、调试、Git 源代码管理、集成终端和扩展市场于一体。

    REAPER macOS版
    REAPER macOS版

    REAPER是Cockos开发的数字音频工作站,提供多轨音频与MIDI录制、剪辑、处理、混音和母带制作工具。Mac版兼容Intel与Apple芯片,支持AU、VST、VST3、CLAP等插件格式,并提供高度可定制的工作流程。

    Adobe Audition macOS版
    Adobe Audition macOS版

    Adobe Audition 是面向播客、影视后期、音乐制作及内容创作者的专业音频工作站,提供波形精修、多轨录制与混音、频谱编辑、降噪修复、响度匹配和效果处理工具,并可与 Adobe Premiere 协同完成视频声音制作。

    Pro Tools macOS版
    Pro Tools macOS版

    Pro Tools 是 Avid 推出的专业数字音频工作站,覆盖多轨录音、无损剪辑、MIDI 编曲、插件处理、自动化混音及声音与画面同步等工作。它拥有 Intro、Artist、Studio 和 Ultimate 等方案。

    WINDOWS 更多
    PixPix 网页版
    PixPix 网页版

    PixPix 是面向品牌、卖家和内容团队的在线 AI 图片视频创作平台,提供图视频 Agent、无限画布、图片生成、视频生成、自然语言编辑及商品套图、产品精修和带货视频等电商工具。

    Postman Windows版
    Postman Windows版

    Postman 是面向 API 全生命周期的开发与协作平台。Windows 桌面版可用于构建和发送 HTTP、GraphQL、gRPC、WebSocket、MQTT 等请求,并提供环境变量、集合、脚本测试、模拟服务、监控、文档及团队工作区等

    Docker Desktop Windows版
    Docker Desktop Windows版

    Docker Desktop 为 Windows 开发者提供集成式容器环境,内置 Docker Engine、命令行工具、Compose、Build 与 Kubernetes 等组件,可在本机完成镜像构建、容器运行、日志查看和资源管理。

    Android Studio Windows版
    Android Studio Windows版

    Android Studio 是 Google 面向 Android 应用开发提供的官方集成开发环境,以 IntelliJ IDEA 为基础,集成智能代码编辑、Gradle 构建、设备模拟、界面预览、调试测试及性能分析工具,

    JetBrains WebStorm Windows版
    JetBrains WebStorm Windows版

    WebStorm 是 JetBrains 面向 JavaScript、TypeScript 和现代 Web 技术打造的集成开发环境。它提供项目级代码分析、智能补全、安全重构、导航搜索,并集成调试、测试、终端、Git 与常用前端工具,

    JetBrains PhpStorm Windows版
    JetBrains PhpStorm Windows版

    PhpStorm 是 JetBrains 面向 PHP 与现代 Web 开发打造的专业集成开发环境,提供代码补全、静态检查、重构、调试、测试、数据库、版本控制及前端语言支持。Windows 用户可直接下载安装程序,

    JetBrains PyCharm Windows版
    JetBrains PyCharm Windows版

    PyCharm 是 JetBrains 推出的 Python 集成开发环境,提供智能代码补全、错误检查、重构、调试、测试、Git、终端及 Jupyter Notebook 支持。统一版安装后可体验 30 天 Pro 功能,

    JetBrains IntelliJ IDEA Windows版
    JetBrains IntelliJ IDEA Windows版

    JetBrains IntelliJ IDEA 是以 Java、Kotlin 和 JVM 项目为核心的专业集成开发环境,提供智能补全、代码检查、安全重构、调试、测试、版本控制及构建工具集成。统一发行版的核心功能可免费用于商业和非商业项目,

    Visual Studio Code Windows版
    Visual Studio Code Windows版

    Visual Studio Code 是微软推出的免费代码编辑器,Windows 版集成智能补全、代码导航、调试、终端和版本控制,并可通过扩展添加语言、格式化及远程开发能力。它启动较快、配置灵活,

    REAPER Windows版
    REAPER Windows版

    REAPER 是 Cockos 推出的数字音频工作站,适用于录音、MIDI 编曲、音频编辑、混音、母带制作及声音设计。软件安装包小巧,支持多轨录制、灵活路由、自动化、第三方插件和脚本扩展,并提供完整功能的 60 天免费评估期。

    Adobe Audition Windows版
    Adobe Audition Windows版

    Adobe Audition 是面向播客、影视后期、广播与音乐制作的专业音频工作站,提供波形编辑、多轨混音、频谱分析、录音、降噪修复和效果处理等功能。Windows 版通过 Adobe Creative Cloud 安装和管理,

    Pro Tools Windows版
    Pro Tools Windows版

    Pro Tools 是 Avid 推出的专业数字音频工作站,提供多轨录音、音频剪辑、MIDI编曲、插件处理、自动化混音及影视声音制作能力。它适合音乐人、录音师、制作人和音频后期团队使用,并提供免费入门版、订阅方案及永久授权选择。