技术深度解析
Google Cloud Storage Rapid 并非简单的性能升级,它代表了对对象存储栈的根本性重构。传统对象存储(如 Google Cloud Storage (GCS) Standard 或 AWS S3)依赖分布式键值存储,采用最终一致性模型,其控制平面在元数据操作中引入显著延迟。对于 AI 工作负载,瓶颈不仅在于原始带宽,更在于列出对象、读取小分片以及处理检查点写入时的延迟。
Cloud Storage Rapid 通过引入全新的数据平面架构来解决这一问题,该架构绕过了频繁访问对象的传统元数据查找。它利用高性能、低延迟的内部网络结构(很可能是 Google 的 Jupiter 网络),并在客户端与后端存储节点之间新增了一个缓存层。这个缓存层并非简单的 CDN,而是一个分布式、写透的缓存,能够理解 AI 训练的数据访问模式——具体来说,就是大数据集的顺序读取模式和检查点的突发写入模式。
从工程角度看,其关键创新似乎在于采用了全新的定制存储节点设计,将 NVMe-over-Fabrics (NVMe-oF) 直接集成到对象存储后端。这使得随机读取和写入的延迟低于 1 毫秒,此前只有块存储或本地 SSD 才能实现这一性能。该服务还引入了一个支持并行数据流的新 API,允许单个客户端饱和多条网络路径,从而有效倍增吞吐量。这对于需要每分钟摄入数 TB 数据的训练任务至关重要。
对于开发者和机器学习工程师而言,实际影响十分显著。Cloud Storage Rapid 暴露了标准的 S3 兼容 API,使其成为现有 AI 管线的即插即用替代品。然而,为了充分利用其能力,Google 建议使用其新的客户端库,该库实现了请求合并、自适应并发控制以及 GPU 内存直接内存访问 (DMA) 等高级功能。开源社区已开始对此进行实验;一个名为 `gcs-rapid-client` 的 GitHub 仓库(目前已有 1.2k 星标)提供了 Python 和 C++ 客户端,展示了这些优化。
性能基准测试(Google 内部数据):
| 指标 | GCS Standard | Cloud Storage Rapid | 提升倍数 |
|---|---|---|---|
| P99 读取延迟 (4KB) | 5-10 毫秒 | 0.5-1 毫秒 | 10x |
| P99 写入延迟 (4KB) | 10-20 毫秒 | 1-2 毫秒 | 10x |
| 最大吞吐量(单客户端) | 5 Gbps | 40 Gbps | 8x |
| 最大吞吐量(100 客户端) | 100 Gbps | 1 Tbps | 10x |
| 检查点写入时间 (1TB) | 15 分钟 | 1.5 分钟 | 10x |
数据要点: 性能提升并非渐进式的,而是在延迟和吞吐量上实现了数量级的改进。对 AI 训练而言,最关键的指标是检查点写入时间,它直接影响 GPU 利用率。在此项上实现 10 倍缩减,可转化为大型模型整体训练吞吐量 5-10% 的提升,从而节省数天的训练时间。
关键参与者与案例研究
Google Cloud 是首家推出专为 AI 设计的高性能对象存储层的主要云服务商。这给其两大竞争对手——Amazon Web Services (AWS) 和 Microsoft Azure——带来了压力。
AWS 目前提供 S3 Express One Zone,这是一种高性能存储类别,可实现个位数毫秒级延迟。然而,S3 Express One Zone 仅限于单个可用区,因此不适合需要多可用区冗余的关键任务 AI 训练。相比之下,Cloud Storage Rapid 从设计之初就支持多区域和多可用区,兼具高性能与持久性。AWS 还提供 Amazon FSx for Lustre,这是一种可用作 AI 高性能数据存储的托管文件系统,但它需要单独管理,并非直接的对象存储替代品。
Microsoft Azure 提供 Azure Blob Storage Premium 层级,延迟较低,但仍依赖传统的 Blob 存储架构。Azure 还提供 Azure NetApp Files 和 Azure HPC Cache 用于高性能工作负载,但这些属于附加服务,并非其对象存储的原生演进。微软与 NVIDIA 在 DGX Cloud 上的合作及其自身在 AI 基础设施上的投入,意味着它很可能需要推出类似产品来应对。
竞争格局对比:
| 特性 | Google Cloud Storage Rapid | AWS S3 Express One Zone | Azure Blob Storage Premium |
|---|---|---|---|
| 延迟 (P99) | <1 毫秒 | <2 毫秒 | 2-5 毫秒 |
| 多可用区 | 是 | 否 | 是 |
| 吞吐量(每客户端) | 40 Gbps | 25 Gbps | 10 Gbps |
| API 兼容性 | S3 兼容 | S3 兼容 | Azure Blob API |
| 定价(每 GB/月) | 约 $0.04 | $0.08 | $0.05 |
| AI 特定优化 | 是(DMA、合并) | 有限 | 否 |