大多数人一听到“人工智能”,脑海中浮现的可能是神经网络、复杂的算法,或者那些略显诡异的人形机器人。但很少有人会直接提及:人工智能对存储空间的消耗几乎与对计算能力的消耗一样惊人。而且,并非所有存储设备都会消耗存储空间——对象存储设备默默地在后台运行,承担着为模型提供所需数据的这项看似不起眼却至关重要的工作。
让我们来分析一下对象存储对人工智能为何如此重要,它与“旧式”存储系统有何不同,以及它为何最终成为可扩展性和性能的关键杠杆之一。.
您可能还想阅读以下文章:
🔗 要将大规模生成式人工智能应用于商业领域,必须具备哪些技术?
企业有效扩展生成式人工智能所需的关键技术。.
🔗 你应该关注的人工智能工具的数据管理
优化人工智能性能的数据处理最佳实践。.
🔗 人工智能对商业战略的影响
人工智能如何影响商业战略和长期决策。.
是什么让对象存储对人工智能如此重要?🌟
核心理念:对象存储摒弃了文件夹或僵化的块布局。它将数据拆分成“对象”,每个对象都带有元数据标签。这些元数据可以是系统级信息(例如大小、时间戳、存储类别),也可以是用户自定义的键值对标签[1]。你可以把它想象成每个文件都附带一叠便签,上面详细记录着文件的内容、创建方式以及在数据处理流程中的位置。
对于人工智能团队而言,这种灵活性具有颠覆性意义:
-
轻松扩展,告别头痛——数据湖可以扩展到 PB 级,对象存储可以轻松应对。它们专为近乎无限的增长和多可用区持久性而设计(Amazon S3 以“11 个 9”和默认的跨区域复制而自豪)[2]。
-
元数据丰富性——更快的搜索、更清晰的过滤器和更智能的管道,因为上下文与每个对象一起传递[1]。
-
云原生- 数据通过 HTTP(S) 传输,这意味着您可以并行拉取数据并保持分布式训练的顺利进行。
-
内置弹性- 当你训练数天时,你不能冒着因分片损坏而导致第 12 个 epoch 终止的风险。对象存储通过设计避免了这种情况 [2]。
它基本上就是一个没有底的背包:里面可能有点乱,但当你伸手去拿的时候,所有东西都能找到。.
AI对象存储快速对比表🗂️
| 工具/服务 | 最适合(受众) | 价格范围 | 它为何有效(页边注释) |
|---|---|---|---|
| 亚马逊 S3 | 企业 + 云优先团队 | 按需付费 | 极其耐用,具有区域恢复力[2] |
| Google Cloud Storage | 数据科学家和机器学习开发人员 | 灵活层级 | 强大的机器学习集成,完全云原生 |
| Azure Blob 存储 | 微软产品较多的商店 | 分层(冷/热) | 与 Azure 的数据 + ML 工具无缝集成 |
| MinIO | 开源/DIY方案 | 免费/自托管 | 兼容S3,轻量级,可部署于任何地方🚀 |
| 芥末热云 | 对成本敏感的组织 | 统一低价 | 无出站流量费或 API 请求费(按政策)[3] |
| IBM Cloud Object Storage | 大型企业 | 因情况而异 | 成熟的技术栈,具备强大的企业安全选项 |
务必根据实际使用情况核对定价,特别是出口流量、请求量和存储等级组合。.
为什么人工智能训练喜欢对象存储🧠
训练并非“处理少量文件”,而是要并行处理数以百万计的记录。层级式文件系统在高并发情况下不堪重负。对象存储通过扁平化的命名空间和简洁的 API 规避了这个问题。每个对象都有一个唯一的键;工作进程可以并行地进行数据提取。分片数据集加上并行 I/O,使得 GPU 能够保持高效运行,而不是闲置等待。
来自实战的经验:将热分片放在计算集群附近(同一区域或可用区),并积极地在 SSD 上进行缓存。如果需要近乎直接地将数据馈送到 GPU, NVIDIA GPUDirect Storage值得考虑——它可以减少 CPU 缓冲,降低延迟,并将带宽直接提升到加速器 [4]。
元数据:被低估的超级大国🪄
对象存储的优势体现在一些不太明显的地方。上传时,您可以附加自定义元数据(例如x-amz-meta-… )。例如,视觉数据集可以为图像添加lighting=low或blur=high 等。这样,数据处理流程就可以在不重新扫描原始文件的情况下[1]。
还有版本。许多对象存储会并排保存对象的多个版本,这对于可重现的实验或需要回滚的治理策略来说非常理想[5]。
对象存储、块存储和文件存储 ⚔️
-
块存储:对于事务数据库来说非常棒——速度快、精度高——但对于 PB 级非结构化数据来说太贵了。
-
文件存储:熟悉且符合 POSIX 标准,但目录在大规模并行负载下会不堪重负。
-
对象存储:从底层设计就考虑了可扩展性、并行性和元数据驱动的访问[1]。
如果要用一个笨拙的比喻:块存储就像文件柜,文件存储就像桌面文件夹,而物品存储就像……一个无底洞,里面贴满了便利贴,勉强还能用。.
混合人工智能工作流程🔀
并非总是完全基于云端。常见的混合模式如下:
-
用于敏感或受监管数据的本地对象存储
-
适用于突发工作负载、实验或协作的云对象存储
这种平衡兼顾了成本、合规性和敏捷性。我见过一些团队为了启动一个临时的GPU集群,一夜之间将数TB的数据上传到S3存储桶,然后在迭代周期结束后全部删除。对于预算较为紧张的情况,Wasabi的固定费率/无出口流量模式[3]让预测变得更加容易。.
没人会炫耀的部分😅
现实是:它并不完美。.
-
延迟——计算和存储设备之间的距离过远,GPU 的运行速度就会很慢。GDS有所帮助,但架构仍然至关重要[4]。
-
费用意外——出口流量和 API 请求费用可能会悄悄地增加。一些服务提供商会免除这些费用(Wasabi 会免除;其他服务提供商则不会)[3]。
-
大规模元数据混乱——谁来定义标签和版本中的“真相”?你需要合同、政策和一些治理机制[5]。
对象存储是基础设施管道:至关重要,但并不引人注目。.
它的走向🚀
-
更智能、具有 AI 感知能力的存储,可通过类似 SQL 的查询层自动标记和显示数据 [1]。
-
更紧密的硬件集成(DMA 路径、NIC 卸载),因此 GPU 不会出现 I/O 不足的情况 [4]。
-
透明、可预测的定价(简化模型,免除出口费)[3]。
人们常说计算能力是人工智能的未来。但实际上,瓶颈在于如何在不超出预算的情况下快速地将数据输入模型。正因如此,对象存储的作用只会越来越重要。
总结📝
对象存储虽然并不引人注目,但却是基础性的。如果没有可扩展、支持元数据且具有弹性的存储,训练大型模型就像穿着凉鞋跑马拉松一样艰难。.
所以,没错——GPU很重要,框架也很重要。但如果你真的想认真做人工智能,就别忽略数据存储的位置。很有可能,对象存储已经在悄悄地拖慢了整个流程。
参考
[1] AWS S3 – 对象元数据– 系统元数据和自定义元数据
https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html
[2] AWS S3 – 存储类别– 持久性(“11 个九”)+ 弹性
https://aws.amazon.com/s3/storage-classes/
[3] Wasabi Hot Cloud – 定价– 固定费率,无出口/API费用
https://wasabi.com/pricing
[4] NVIDIA GPUDirect Storage – 文档– GPU 的 DMA 路径
https://docs.nvidia.com/gpudirect-storage/
[5] AWS S3 – 版本控制– 多个版本用于治理/可复现性
https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html