网易首页 > 网易号 > 正文 申请入驻

Postgres的存储分层:NVMe热路径+S3冷存

0
分享至

数据库圈有个反常识的共识正在形成:最快的存储和最便宜的存储, Postgres(一种开源关系型数据库)想要同时用上,而且让两者无缝协作。

这不是降本增效的妥协,而是一次架构层面的重新设计——把NVMe(非易失性内存主机控制器接口规范,一种高速存储协议)推到热路径,让S3(简单存储服务,一种对象存储)接管一切 else。


为什么分层突然变得紧迫

Postgres的存储架构正在经历代际压力。传统上,它依赖本地磁盘做所有事:事务日志、表数据、索引、临时文件。但当数据量突破TB级,这种"一锅炖"模式开始崩解。

云原生场景下,存储成本曲线变得陡峭。NVMe SSD(固态硬盘)每GB成本是S3的40-50倍,但延迟差距是1000倍量级(微秒 vs 毫秒)。

关键洞察:工作负载从来不是均匀分布的。80%的查询可能只触及5%的数据——这是经典的帕累托分布。

Postgres社区和周边生态(包括Neon、Aurora等衍生方案)正在押注一个策略:用NVMe兜住热数据,用S3吞下冷数据,中间用智能分层逻辑粘合。

NVMe在热路径的具体角色

热路径(hot path)指查询必须直接命中的数据通道,延迟敏感到极致。

Postgres把这几类数据钉在NVMe上:

写入缓冲层(Write-Ahead Log,预写日志):事务提交必须同步落盘,NVMe的亚毫秒延迟直接决定吞吐量上限

活跃表和索引的缓存页:Buffer Pool(缓冲池)的扩展,但溢出到本地NVMe而非直接写S3

临时排序和哈希表:复杂查询的中间状态,随机IO(输入输出)密集

Neon的架构文档里有个细节:他们把Postgres计算节点设计成无状态的,但本地仍挂载NVMe作为"第二层缓存"——不是替代S3,而是作为S3的前置加速器。

这层设计的微妙之处在于:NVMe在这里不是持久化主存,而是延迟优化的缓冲带。数据最终归宿仍是S3,但NVMe承担了"削峰填谷"的流量整形角色。

S3如何接管"一切 else"

S3的价值不只是便宜,而是解耦

当Postgres把表数据、历史快照、归档日志、甚至只读副本的基线数据全部塞进S3,几个连锁反应发生:

• 计算节点可以真正无状态,秒级扩缩容

• 存储成本与计算成本脱钩,按需分层计价

• 跨区域复制变成S3的内置能力,无需Postgres自己折腾流复制

Aurora PostgreSQL(亚马逊的关系型数据库服务)是最早验证这条路的。他们的存储层自研,但逻辑一致:日志即数据库,S3兼容对象存储作为真实数据源,本地SSD只是缓存。

开源侧,pg_backrest和wal-g这类备份工具早已把S3作为默认目标。现在趋势是更进一步:让S3不只是"备份目的地",而是"活跃存储层"的一部分。

Neon的分页层(Page Server)设计典型:热页在NVMe,冷页按需从S3拉取,后台异步刷回。查询冷数据时首次访问有毫秒级惩罚,但后续缓存命中后回到微秒级。

分层架构的五个工程要点

这条技术路线能走通,依赖几个关键设计决策:

1. 页级粒度 vs 文件级粒度

Postgres传统以8KB页为IO单位。分层存储必须保持这个粒度,否则随机访问模式会拖垮性能。Neon的Page Server直接操作页,而非整个表文件。

2. 一致性模型的妥协

S3的强一致性是2019年后才保证的,且延迟高于本地存储。Postgres的WAL机制需要调整:本地NVMe负责"已提交即持久",S3负责"最终一致的大规模存储"。

3. 预取与缓存淘汰策略

冷数据首次访问的惩罚必须被掩盖。常用手段:基于查询计划的顺序预取、LRU-K(最近最少使用改进算法)变体的缓存管理、以及工作负载驱动的热数据预测。

4. 写入路径的双写问题

数据既要进NVMe(低延迟响应客户端),又要异步刷S3(持久化)。这引入窗口期的丢失风险。主流方案:WAL同步写NVMe,后台批量上传S3,崩溃后从WAL重放。

5. 成本核算的透明度

用户需要知道每笔查询的存储成本构成。Neon的定价模型区分"计算单元"和"存储单元",后者再细分活跃存储(NVMe层计费)和归档存储(S3层计费)。

谁在这条路上走得最远

目前有三类玩家验证不同变体:

Neon:完全重构存储层,计算与存储彻底分离,开源且云中立

Aurora PostgreSQL:深度集成AWS生态,存储层闭源但API兼容

Crunchy Bridge / StackGres:托管Postgres,分层策略较保守,主要用S3做备份和归档

Neon的技术博客披露过一个数字:他们的冷启动时间(计算节点从零到服务查询)可以压到秒级,因为数据不在本地,而在S3按需拉取。代价是首次查询延迟,但这对很多Web应用可接受。

Aurora则走另一条路:存储层自研,但向上暴露标准Postgres协议。他们的卖点是"无需改代码",但锁定在AWS。

对开发者的实际影响

如果你在用Postgres,这条趋势线意味着几件事:

• 选型时关注存储架构:是真正的分层设计,还是只是"本地盘+定期备份"

• 查询模式决定成本:随机访问冷数据会触发S3拉取,账单可能意外膨胀

• 扩展性假设改变:计算节点可以很小、很多、很 ephemeral(短暂存在的),因为状态在S3

• 调试复杂度上升:性能问题可能出在NVMe缓存未命中、S3延迟、或预取策略失效,需要新的可观测工具

一个具体建议:如果你的工作负载有明显的时间局部性(最近数据被频繁访问),分层架构的性价比极高。反之,如果访问完全随机且均匀,NVMe缓存的命中率会崩盘,不如直接用全闪存。

Postgres的存储分层不是万能药,但它把"成本-性能"的权衡从硬件采购层面,下沉到了运行时的自动调度层面。这符合云原生的大方向:让基础设施替你操心容量规划,你只关心查询本身。

当NVMe和S3的边界被软件定义,Postgres正在变成某种"存储编排器"——它不再假设自己拥有完整的磁盘,而是动态地在速度层和容量层之间搬运数据。这种架构转变,会不会最终模糊"数据库"和"数据湖"的界限?

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
伊朗总统当众警告“下一个是中国”,让中国别忘了唇亡齿寒?

伊朗总统当众警告“下一个是中国”,让中国别忘了唇亡齿寒?

少年仍需努力
2026-04-18 07:54:13
钱再多有啥用?75岁无儿无女的刘晓庆,还不是被妹妹等着"吃绝户"

钱再多有啥用?75岁无儿无女的刘晓庆,还不是被妹妹等着"吃绝户"

丁丁鲤史纪
2026-03-26 18:08:58
中美谈判宣告失败,沉默15天,中方宣布稀土涨价,特朗普滋味难受

中美谈判宣告失败,沉默15天,中方宣布稀土涨价,特朗普滋味难受

梦史
2026-04-19 16:11:51
难怪特朗普不同意停延长停火,美方发现不对劲,伊朗要玩一把大的

难怪特朗普不同意停延长停火,美方发现不对劲,伊朗要玩一把大的

阿器谈史
2026-04-19 15:56:41
有没有人敢爆自己的瓜?网友:确定玩这么大吗?

有没有人敢爆自己的瓜?网友:确定玩这么大吗?

夜深爱杂谈
2026-02-18 20:55:58
詹俊:罗塞尼尔真的水平有限;曼联联赛第三稳了

詹俊:罗塞尼尔真的水平有限;曼联联赛第三稳了

懂球帝
2026-04-19 05:29:08
李修贤谈万梓良现状:酒吧驻场不丢人,为人仗义,事业婚姻都不顺

李修贤谈万梓良现状:酒吧驻场不丢人,为人仗义,事业婚姻都不顺

以茶带书
2026-04-14 16:39:49
CBA官方:广厦重新注册塔克 深圳注册火箭旧将+青岛注册勇士旧将

CBA官方:广厦重新注册塔克 深圳注册火箭旧将+青岛注册勇士旧将

醉卧浮生
2026-04-19 12:04:22
左小青这状态,鲨疯了!明媚动人,若隐若现

左小青这状态,鲨疯了!明媚动人,若隐若现

只要高兴就好
2025-12-10 19:09:26
欧尔班还没正式卸任,茶已经凉透了?匈牙利军方集体公开“倒戈”

欧尔班还没正式卸任,茶已经凉透了?匈牙利军方集体公开“倒戈”

阿芒娱乐说
2026-04-17 17:45:17
第6艘船出事,美军舰拦截成功,难题已抛给中国,俄政府准备救场

第6艘船出事,美军舰拦截成功,难题已抛给中国,俄政府准备救场

共工之锚
2026-04-16 13:45:22
地下捐精有多乱!女的被约到宾馆,捐精者:直接怀孕只收800元

地下捐精有多乱!女的被约到宾馆,捐精者:直接怀孕只收800元

雍亲王府
2025-11-14 14:50:03
王健林预言成真!第3轮大涨来了?内行人:2026年房价将超乎想象

王健林预言成真!第3轮大涨来了?内行人:2026年房价将超乎想象

猫叔东山再起
2026-04-19 09:20:11
2011年一名6旬老人在看谍战剧时,突然指着电视:是他当年害的我

2011年一名6旬老人在看谍战剧时,突然指着电视:是他当年害的我

谈古论今历史有道
2026-04-11 11:20:03
440公斤浓缩铀引爆美伊危机,伊朗导弹产能激增

440公斤浓缩铀引爆美伊危机,伊朗导弹产能激增

享用人生
2026-04-15 21:19:18
女人好色起来会有多恐怖?男人只能求饶

女人好色起来会有多恐怖?男人只能求饶

那年秋天
2026-04-12 18:30:03
春天就该这样穿!裙子选彩色、白色T恤作内搭,舒适优雅简约

春天就该这样穿!裙子选彩色、白色T恤作内搭,舒适优雅简约

静儿时尚达人
2026-04-19 16:26:16
湖人爆冷迎首胜,先发五虎都进红榜,替补火力稍有欠缺

湖人爆冷迎首胜,先发五虎都进红榜,替补火力稍有欠缺

谢说篮球
2026-04-19 16:56:26
脸没恢复就别出来拍剧了,顶着肿胀脸、笨重假发套,太让人出戏了

脸没恢复就别出来拍剧了,顶着肿胀脸、笨重假发套,太让人出戏了

白面书誏
2026-04-14 18:34:11
扒了三天 挖出86版《西游记》一个猛料:风婆婆竟是15岁初中生演的

扒了三天 挖出86版《西游记》一个猛料:风婆婆竟是15岁初中生演的

市井大实话
2026-04-18 09:00:26
2026-04-19 17:12:49
摸鱼算法
摸鱼算法
致力于用最前沿的AI技术,换取更多发呆时间的三十岁青年。
1539文章数 16关注度
往期回顾 全部

科技要闻

50分26秒破人类纪录!300台机器人狂飙半马

头条要闻

广州暹岗大山遭多人私挖水晶破坏 林业部门:涉嫌违法

头条要闻

广州暹岗大山遭多人私挖水晶破坏 林业部门:涉嫌违法

体育要闻

湖人1比0火箭:老詹比乌度卡像教练

娱乐要闻

张天爱评论区沦陷!被曝卷入小三风波

财经要闻

华谊兄弟,8年亏光85亿

汽车要闻

29分钟大定破万 极氪8X为什么这么多人买?

态度原创

旅游
数码
时尚
房产
游戏

旅游要闻

树枝断裂致三名游客轻伤 开封万岁山武侠城:突发大风引发 将持续跟进伤者治疗情况

数码要闻

明天上线!当贝鱼缸2S Ultra硬规格全面升级

这些才是最适合普通人的造型!不用穿大牌、不老套,真实自然

房产要闻

官宣签约最强城更!海口楼市,突然杀入神秘房企!

犯罪学家都来研究!这部TGA获奖游戏太有看头

无障碍浏览 进入关怀版