你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
针对 Azure 基础结构 (IaaS) 上 AI 工作负荷的存储建议
本文为在 Azure 基础结构 (IaaS) 上运行 AI 工作负荷的组织提供存储建议。 Azure 基础结构上的 AI 工作负荷存储解决方案必须能够管理 AI 模型训练和推理所固有的数据存储、访问和传输需求。
AI 工作负荷需要高吞吐量和低延迟,以实现高效的数据检索和处理。 它们还需要用于数据版本和一致性的各种机制,以保证在分布式环境中取得准确和可复制的结果。 在选择合适的存储解决方案时,要考虑数据传输时间、延迟、性能要求以及与现有系统的兼容性等因素。
将文件系统用于活动数据。 实现一个文件系统,以存储 AI 作业主动使用或生成的“特定作业/热”数据。 此解决方案具有低延迟和高吞吐能力,是实时数据处理的理想之选。 这些功能对于优化 AI 工作流程的性能至关重要。 Azure 有三种主要的文件系统解决方案,可支持在 Azure 基础结构上训练和推断 AI 模型。 要选择正确的文件系统,请遵循以下建议:
使用 Azure Managed Lustre 以实现最短的数据传输时间和最小的延迟。 Azure Managed Lustre 具有高性能并行文件系统功能,并通过与 Azure 的集成简化了管理。 它成本效益高,存储成本以使用情况为基础,并允许从 Blob 存储选择性地导入数据,从而优化数据处理。
在需要为 AI 工作负荷提供企业级功能和性能时,请使用 Azure NetApp 文件。 Azure NetApp 文件具有高可靠性和高性能,是关键任务应用程序的理想之选。 如果在 NetApp 基础结构上已有投资,则 Azure NetApp 文件将大有裨益。 它有利于混合云功能,以及在需要定制和微调存储配置时使用。
当性能是重中之重时,则可以使用本地 NVMe/SSD 文件系统。 它使用 BeeGFS On Demand (BeeOND) 等作业专用并行文件系统来聚合计算(工作器节点)的本地 NVMe。 它们直接在计算节点上运行,以便在作业期间创建一个临时的高性能文件系统。 这些系统具有超低延迟和高吞吐量的特点,是深度学习训练或实时推理等 I/O 密集型应用的理想之选。
将非活动数据传输到 Azure Blob 存储。 在完成作业后,将不活动的作业数据从 Azure Managed Lustre 转移到 Azure Blob 存储,以实现长期、经济高效的存储。 Blob 存储提供具有不同访问层级的可缩放选项,从而确保高效存储不活动或不常访问的数据,同时在需要时随时可用。
实现模型训练的检查点。 建立定期保存模型状态的检查点机制,包括训练权重和参数,例如每 500 次迭代一次。 将这些检查点数据存储在 Azure Managed Lustre 中,以便从先前保存的状态重新开始模型训练,从而提高 AI 工作流程的灵活性和复原能力。
自动将数据迁移到成本更低的存储层。 配置 Azure Blob 存储生命周期管理策略,将不常访问的旧数据自动迁移到成本较低的存储层,如冷层或存档层。 这种方法既能优化存储成本,又能确保在需要时仍可访问重要数据。
确保分布式环境中的数据一致性。 在 Azure Managed Lustre 和 Azure Blob 存储之间设置同步,从而确保分布式 AI 工作负荷的数据一致性。 这种同步可确保访问数据的所有节点都使用相同、一致的版本,从而防止分布式环境中出现错误和差异。
启用数据版本管理,以便实现可重现性。 在 Azure Blob 存储中激活版本控制,以跟踪数据集和模型随时间的变化。 这一功能便于回滚、提高可重复性并支持协作。 它能详细记录数据和模型的修改历史,并可根据需要比较和恢复以前的版本。