对象存储万能论:为什么S3正在成为现代数据架构的核心

引言:从"数据库为中心"到"对象存储为中心"
近日,一篇题为《Object storage is all you need》(对象存储就是你所需要的一切)的文章在 Hacker News 上引发讨论。虽然讨论热度尚在起步阶段,但这一略带挑衅意味的标题,恰恰点中了当前数据基础设施演进的核心命题:对象存储(Object Storage)正在从一个单纯的"冷数据仓库",跃升为现代数据架构的核心枢纽。
这个标题显然是对深度学习领域经典论文《Attention is all you need》的致敬式模仿。它试图传达一个大胆的观点——在云原生时代,也许我们并不需要那么多复杂的专用存储系统,一个足够强大、足够便宜、足够可靠的对象存储层,就能承载绝大多数工作负载。
什么是对象存储,为什么它如此重要
对象存储的本质
对象存储与传统的块存储(Block Storage)、文件存储(File Storage)有着本质区别。它将数据作为"对象"进行管理,每个对象包含数据本身、元数据以及一个全局唯一的标识符。最典型的代表就是 Amazon S3,以及兼容 S3 协议的各类实现(如 MinIO、Cloudflare R2、Backblaze B2 等)。
对象存储的核心优势在于:
- 近乎无限的水平扩展能力:不需要预先规划容量,可以从几 GB 平滑扩展到 EB 级别;
- 极低的存储成本:相比块存储,单位存储成本通常低一个数量级;
- 高持久性与可用性:主流云服务商普遍承诺 99.999999999%(11个9)的数据持久性;
- 标准化的 HTTP API:通过简单的 RESTful 接口即可访问,天然适配分布式与云原生环境。
从边缘走向核心
过去,对象存储常被视为"归档层"——用来存放日志、备份、图片、视频等非结构化数据。而数据库、缓存、消息队列等"热"组件则运行在昂贵的本地磁盘或块存储之上。
但这一格局正在被打破。越来越多的现代系统开始将对象存储作为主存储层(Primary Storage),通过"存算分离"(Separation of Storage and Compute)架构,把计算节点变成无状态的、可弹性伸缩的临时资源,而将所有持久化状态下沉到对象存储中。
存算分离:对象存储崛起的底层逻辑
云原生数据栈的重构
"对象存储万能论"背后,是整个数据栈架构的深刻重构。以数据分析领域为例,Snowflake 的成功很大程度上归功于其存算分离的设计:数据以列式格式存储在 S3 上,计算集群按需启动、随用随停。这一模式随后被 Databricks 的 Lakehouse 架构、Apache Iceberg、Delta Lake 等"开放表格式"进一步推广。
如今,这一趋势已经蔓延到更多领域:
- OLTP 数据库:像 Neon、TiDB 等新一代数据库开始探索将存储层构建在对象存储之上;
- 消息队列:Confluent 的 Kafka 推出了分层存储(Tiered Storage),将历史消息卸载到 S3;WarpStream 更是直接构建了一个完全基于 S3 的、无本地磁盘的 Kafka 兼容系统;
- 搜索与可观测性:Quickwit、GreptimeDB 等系统也将对象存储作为核心存储介质。
成本与弹性的双重驱动
这一趋势的根本驱动力是经济学。对象存储不仅便宜,更重要的是它把"存储"和"计算"这两种成本模型彻底解耦。企业不再需要为了扩展存储而购买过剩的计算能力,反之亦然。在数据量爆炸式增长而计算需求周期性波动的今天,这种弹性带来的成本节约是巨大的。
挑战与边界:对象存储"万能"背后的代价
尽管前景诱人,但"对象存储万能论"绝非没有争议。将对象存储用作主存储,需要应对几个根本性的技术挑战:
延迟问题
对象存储的访问延迟通常在数十到数百毫秒级别,远高于本地 NVMe SSD 的微秒级延迟。对于需要低延迟随机读写的 OLTP 场景,这是一个严峻的挑战。工程师们不得不引入多级缓存、预取、批处理等复杂机制来弥补这一差距。
一致性模型
虽然 S3 在 2020 年后已提供强一致性(Strong Consistency),但对象存储缺乏原生的事务支持。构建在其上的系统必须自行实现并发控制、原子提交等语义,这大大增加了系统设计的复杂度。
高频小对象的成本陷阱
对象存储的 API 请求(PUT/GET/LIST)本身是收费的。当工作负载涉及大量小对象的高频访问时,请求费用可能远超存储费用本身,反而变得昂贵。这要求上层系统精心设计数据布局,将小对象聚合成大对象,以降低请求开销。
结语:一个务实的"万能"
回到那个标题——《Object storage is all you need》。就像它所致敬的那篇论文一样,标题的"绝对化"更多是一种修辞策略,而非严谨的技术断言。对象存储并非真的能取代一切,本地缓存、内存计算、专用索引结构在可预见的未来仍不可或缺。
但这个观点抓住了一个真实且重要的趋势:对象存储正在成为现代数据架构不可动摇的"地基"。 越来越多的系统选择把持久化状态托付给它,然后在其之上构建轻量、弹性、无状态的计算层。这种"以对象存储为中心"的设计哲学,正在悄然重塑我们构建数据密集型应用的方式。
对于架构师和工程师而言,理解并善用对象存储的能力边界,或许正是驾驭下一代云原生系统的关键所在。
相关推荐

GPT-6 Astra对决Fable 5.1:基准高分为何输给实战体验
GPT-6 Astra在KingBench 3基准测试拿下90%高分,却在大型项目实测中频频翻车。本文通过8项小型测试和4个大型项目的完整对比,揭示Astra与Fable 5.1在代码质量、设计审美、成本和日常体验上的真实差距。

Vercel AI SDK Azure集成包4.0.63发布:依赖同步与升级指南
Vercel AI SDK发布@ai-sdk/azure 4.0.63补丁更新,同步升级底层@ai-sdk/openai至4.0.60版本。本文解析更新内容、模块化架构逻辑及开发者升级建议。

Mistral融资30亿欧元:解读主权开放AI战略与欧洲技术独立野心
Mistral AI完成30亿欧元创纪录融资,推动主权开放权重AI战略。本文深度解读Mistral的开放权重模式、资金用途、与OpenAI等巨头的路线之争,以及欧洲AI技术独立的前景与挑战。