为 Google Cloud 中的 AI 和机器学习工作负载设计存储

本文档提供了有关如何为 AI 和机器学习工作负载选择和集成Google Cloud 存储服务的设计指导。机器学习生命周期中的每个阶段都有不同的存储要求。例如,在上传训练数据集时,您可能需要优先考虑训练所需的存储空间容量,以及大型数据集所需的高吞吐量。同样,训练、调优、部署和归档阶段也有不同的要求。

本文档可帮助您评估容量、延迟时间和吞吐量要求,以便做出明智的选择,确定合适的存储解决方案。本文档假设您已选择满足工作负载要求的计算平台。对于 AI 和 ML 工作负载,我们建议您使用 Compute EngineGoogle Kubernetes Engine (GKE)。如需详细了解如何选择计算平台,请参阅在 Google Cloud上托管应用

以下标签页简要总结了机器学习工作流各个阶段的建议存储选项。如需了解详情,请参阅选择适当的存储选项

准备

在机器学习工作流的准备阶段,您需要执行以下操作:

  1. 上传和注入数据。
  2. 在训练模型之前,将数据转换为正确的格式。

如需通过使用多个存储类别来优化存储费用,我们建议您使用 Cloud Storage Autoclass 功能或对象生命周期管理

训练

在机器学习工作流的训练阶段,您需要执行以下操作:

  1. 模型开发:使用笔记本并应用迭代试错法来开发模型。
  2. 模型训练
    • 使用不同规模的机器学习加速器重复读取训练数据集。
    • 在模型开发和训练过程中应用迭代流程。
  3. 检查点设置和重启
    • 在模型训练期间,通过创建检查点定期保存状态,以便在节点发生故障后重启训练。
    • 根据 I/O 模式和需要在检查点保存的数据量来选择检查点。

对于训练,我们建议您针对大多数工作负载使用 Managed Lustre。选择存储方案时,请考虑工作负载特征:

  • 如果您的工作负载具有以下特征,请使用 Managed Lustre:
    • 包含小于 50 MB 的小型文件的训练数据,以充分利用低延迟功能。
    • 延迟时间要求小于 1 毫秒,以满足随机 I/O 和元数据访问的存储要求。
    • 需要执行频繁的高性能检查点设置。
    • 类似桌面设备的体验,并支持完整的 POSIX,可用于查看和管理用户的数据。
  • 如果您的工作负载具有以下特征,请将 Cloud Storage 与 Cloud Storage FUSE 和 Anywhere Cache 搭配使用:
    • 包含 50 MB 或更大的大型文件的训练数据。
    • 对数十毫秒的较高存储延迟时间的容忍度。
    • 优先考虑数据耐用性和高可用性,而不是存储性能。

为优化费用,我们建议您在模型训练的所有阶段都使用同一存储服务。

服务

在机器学习工作流的部署阶段,您需要执行以下操作:

  1. 存储模型。
  2. 将模型加载到在启动时运行机器加速器的实例中。
  3. 存储模型推理的结果,例如生成的图片。
  4. (可选)存储和加载用于模型推理的数据集。

对于提供服务,我们建议您将 Cloud Storage 与 Cloud Storage FUSE 和 Anywhere Cache 搭配使用,以应对大多数工作负载。选择存储方案时,请考虑工作负载特征:

  • 如果您的工作负载具有以下特征,请将 Cloud Storage 与 Cloud Storage FUSE 和 Anywhere Cache 搭配使用:
    • 在推理节点数量可能会发生变化的动态环境中,需要使用经济实惠的解决方案。
    • 不常更新模型。
    • 需要在同一大陆内的多个可用区和区域中提供模型。
    • 优先考虑模型的高可用性和耐用性,即使在发生区域级服务中断时也是如此。
  • 如果您的工作负载具有以下特征,请使用 Managed Lustre:
    • 训练和检查点设置工作负载使用 Managed Lustre。
    • 从单个可用区提供模型的要求。
    • 对于对性能敏感的模型,需要可靠的高吞吐量和一致的低延迟 I/O。
    • 频繁更新模型。

归档

在机器学习工作负载的归档阶段,您会长时间保留训练数据和模型。

如需通过多种存储类别优化存储费用,我们建议您使用 Cloud Storage Autoclass对象生命周期管理

设计过程概览

如需确定Google Cloud中 AI 和机器学习工作负载的合适存储选项,请执行以下操作:

  1. 考虑工作负载的特征、性能预期和费用目标。
  2. 查看 Google Cloud中推荐的存储服务和功能。
  3. 根据您的要求和可用选项,选择机器学习工作流中每个阶段(准备、训练、部署和归档)所需的存储服务和功能。

本文档重点介绍机器学习工作流中需要仔细考虑存储选项的阶段,但并未涵盖机器学习生命周期、流程和功能的全部内容。

下面简要介绍了为 AI 和机器学习工作负载选择存储的三个阶段设计流程:

  1. 定义您的要求
    • 工作负载特性
    • 安全限制条件
    • 弹性要求
    • 效果预期
    • 费用目标
  2. 查看存储选项
    • Managed Lustre
    • Cloud Storage
  3. 选择合适的存储选项:根据机器学习工作流程每个阶段的工作负载特征,选择合适的存储服务、功能和设计选项。

定义您的要求

在Google Cloud中为 AI 和机器学习工作负载选择存储选项之前,您必须先定义工作负载的存储要求。如需确定存储要求,您应考虑计算平台、容量、吞吐量和延迟时间要求等因素。

为帮助您为 AI 和机器学习工作负载选择存储选项,请考虑工作负载的特征:

  • 您的 I/O 请求大小和文件大小是小 (KB)、中还是大(MB 或 GB)?
  • 您的工作负载是否主要表现出顺序文件访问模式或随机文件访问模式?
  • 您的 AI 和机器学习工作负载是否对 I/O 延迟时间和第一字节时间 (Time to First Byte) (TTFB) 敏感?
  • 您是否需要为单个客户端、汇总客户端或两者提供高读写吞吐量?
  • 您最大的单个 AI 和机器学习训练工作负载需要多少个图形处理器 (GPU)张量处理单元 (TPU)

您可以使用对这些问题的回答,在本文档中稍后部分选择合适的存储

查看存储选项

Google Cloud 提供所有主要存储格式的存储服务:块、文件、并行文件系统和对象。下表介绍了您可以为Google Cloud上的 AI 和机器学习工作负载考虑的选项。该表列出了本文档重点介绍的由 Google 管理的存储选项,这些选项适用于 AI 和机器学习工作负载。不过,如果您有这些产品无法满足的特定需求,请考虑 Google Cloud Marketplace 中提供的合作伙伴管理的存储解决方案

查看并评估每种存储格式的可用服务的特征、设计选项和相关优势。

存储服务 存储类型 特征
Managed Lustre 并行文件系统
Cloud Storage 对象

Managed Lustre

Managed Lustre 是 Google Cloud中的一种全代管式文件系统。Managed Lustre 提供基于 DDN EXAScaler Lustre 文件系统构建的持久性可用区级实例。Managed Lustre 非常适合需要提供低延迟(小于 1 毫秒)访问、高吞吐量和高每秒输入/输出操作数 (IOPS) 的 AI 和机器学习工作负载。无论是少量虚拟机还是数千个虚拟机,Managed Lustre 都能保持高吞吐量和高 IOPS。

Managed Lustre 具有以下优势:

  • POSIX 合规性:支持 POSIX 标准,有助于确保与许多现有应用和工具的兼容性。
  • 降低训练总拥有成本 (TCO):通过高效地将数据交付给计算节点来缩短训练时间。这种加速有助于降低 AI 和机器学习模型训练的总拥有成本。
  • 降低服务总拥有成本:与 Cloud Storage 相比,可实现更快的模型加载速度和优化的推理部署。这些功能有助于降低计算费用,并有助于提高资源利用率。
  • 高效利用资源:在单个实例中结合使用检查点和训练。这种资源利用有助于最大限度地提高单个高性能存储系统中读写吞吐量的使用效率。

Cloud Storage

Cloud Storage 是一项全托管式对象存储服务,适用于任何规模的 AI 和机器学习工作负载。Cloud Storage 非常擅长处理 AI 和机器学习工作流所有阶段的非结构化数据。

Cloud Storage 具有以下优势:

  • 高可伸缩性:获得无限的存储容量,可在全球范围内扩容到 EB 级。
  • 高吞吐量:通过必要的规划,可扩容至 1 TB/秒。
  • 灵活的位置选项:为 AI 和机器学习工作负载选择单区域、多区域和双区域存储选项。
  • 经济高效:受益于一系列存储类别,这些类别旨在根据您的数据访问模式优化费用。

Cloud Storage 在规模和成本效益方面表现出色,但请务必考虑其延迟时间和 I/O 特征。延迟时间预计为数十毫秒,高于其他存储选项。为了最大限度地提高吞吐量,您需要使用数百或数千个线程、大型文件和大型 I/O 请求。Cloud Storage 提供各种编程语言的客户端库,并提供 Cloud Storage FUSEAnywhere Cache

Cloud Storage FUSE 是一种由 Google 支持的开源 FUSE 适配器。借助 Cloud Storage FUSE,您可以将 Cloud Storage 存储桶作为本地驱动器装载。Cloud Storage FUSE 不完全符合 POSIX 标准。因此,请务必了解 Cloud Storage FUSE 的限制以及与传统文件系统的区别。借助 Cloud Storage FUSE,您可以利用 Cloud Storage 的规模、经济实惠性和性能来访问训练数据、模型和检查点。

Cloud Storage FUSE 缓存具有以下优势:

  • 可移植性:使用标准文件系统语义装载和访问 Cloud Storage 存储分区,从而提高应用的可移植性。
  • 兼容性:无需重构应用即可使用云特有的 API,从而节省时间和资源。
  • 缩短了闲置时间:通过直接访问 Cloud Storage 中的数据来快速启动训练作业,从而最大限度地缩短 GPU 和 TPU 的空闲时间。
  • 高吞吐量:充分利用 Cloud Storage 的内置可伸缩性和性能,该服务已针对使用 GPU 或 TPU 的读取密集型机器学习工作负载进行了优化。
  • 客户端本地 文件缓存:使用客户端本地缓存加快训练速度,从而加快重复文件读取速度。如果将此加速功能与 A3 机器类型捆绑的 6 TiB 本地 SSD 搭配使用,可进一步提升加速效果。

Anywhere Cache 是 Cloud Storage 的一项功能,可为 Cloud Storage 存储桶提供高达 1 PiB 的 SSD 支持的可用区级读取缓存。Anywhere Cache 旨在通过为特定可用区内频繁读取的数据提供本地快速访问层,从而加速数据密集型应用。

Anywhere Cache 具有以下优势:

  • 加速吞吐量:自动扩缩缓存容量和带宽以提供高吞吐量,同时超出区域级带宽配额,并实现一致且可预测的延迟时间。
  • 降低费用:避免为缓存数据支付数据传出费用或存储类别检索费用。Anywhere Cache 会自动调整缓存和可用带宽的大小,以满足您的工作负载需求。

合作伙伴存储解决方案

如果上述存储服务无法满足工作负载要求,您可以选择以下合作伙伴解决方案,这些解决方案可在 Cloud Marketplace 中找到:

这些合作伙伴解决方案不受 Google 管理。您需要管理部署和运维任务,以确保在基础设施中实现最佳集成和性能。

比较分析

下表展示了 Managed Lustre 和 Cloud Storage 的主要功能。

Managed Lustre Cloud Storage
容量 18 TiB - 8 PiB 没有下限或上限。
扩缩 扩缩能力强 根据使用情况自动扩缩。
共享 可在多个 Compute Engine 虚拟机和 GKE 集群上装载。
  • 可从任意位置读写
  • Cloud CDN 和第三方 CDN 集成。
加密密钥选项 Google-owned and Google-managed encryption keys
  • Google-owned and Google-managed encryption keys
  • 由客户管理
  • 由客户提供
持久性 Managed Lustre 实例的生命周期。 存储桶的生命周期
可用性 Zonal
性能 使用配置容量进行线性伸缩,并提供多种性能层级选项 自动扩缩读写速率和动态负载重新分布
管理 全托管式、符合 POSIX 标准 全代管式

数据转移工具

本部分介绍了在Google Cloud上的不同存储服务之间转移数据的选项。执行 AI 和机器学习任务时,您可能需要将数据从一个位置移至另一个位置。例如,如果您的数据最初位于 Cloud Storage 中,您可能会将其移至其他位置以训练模型,然后将检查点快照或训练后的模型复制回 Cloud Storage。

您可以使用以下方法将数据转移到 Google Cloud:

  • 使用 Storage Transfer Service 在线转移数据:在对象和文件存储系统(包括 Cloud Storage、Amazon S3、Azure 存储服务)与本地数据源之间自动转移大量数据。借助 Storage Transfer Service,您可以将数据从源位置安全地复制到目标位置,并定期转移已更改的数据。它还提供数据完整性验证、自动重试和负载均衡。
  • 将数据上传到 Cloud Storage:使用 Google Cloud 控制台、gcloud CLI、Cloud Storage API 或客户端库将数据在线上传到 Cloud Storage 存储分区。

选择数据传输方法时,考虑数据大小、时间限制、带宽可用性、费用目标以及安全和合规性要求等因素。如需了解如何规划和实现数据转移到 Google Cloud,请参阅迁移到 Google Cloud:转移您的大型数据集

选择适当的存储空间

AI 和机器学习工作负载通常涉及四个主要阶段:准备、训练、部署和归档。每个阶段都有独特的存储需求,选择合适的解决方案可以显著影响性能、成本和运营效率。借助混合或本地优化方法,您可以根据 AI 和机器学习工作负载每个阶段的具体需求量身定制存储选项。不过,如果您优先考虑统一管理和易于操作,则采用全球简化的方法(在所有阶段使用一致的解决方案)可能对任何规模的工作负载都有益。存储选择的有效性取决于数据集属性、所需计算和存储资源的规模、延迟时间以及您之前定义的工作负载要求

以下各部分详细介绍了 AI 和机器学习工作负载的主要阶段,以及可能影响存储选择的因素。

准备

准备阶段为 AI 和机器学习应用奠定了基础。它涉及将来自各种来源的原始数据上传到云环境,并将数据转换为可用于训练 AI 和机器学习模型的格式。 此过程包括清理、处理和转换数据类型等任务,以确保与所选的 AI 和机器学习框架兼容。

Cloud Storage 具有可伸缩性、耐用性和成本效益,非常适合用于准备阶段,尤其适用于 AI 中常见的大型数据集。Cloud Storage 可与其他Google Cloud 服务无缝集成,让您能够充分利用潜在的优化功能,以进行数据密集型训练。

在数据准备阶段,您可以将数据重新整理为几大块,以提高访问效率并避免随机读取请求。为了进一步降低对存储系统的 I/O 性能要求,您可以使用流水线、训练优化或同时使用这两种方法来增加 I/O 线程数。

训练

训练阶段是模型开发的核心,在此阶段,AI 和机器学习模型会通过提供的数据学习。此阶段涉及两个具有不同要求的关键方面:用于访问训练数据的高效数据加载,以及用于保存模型进度的可靠检查点。以下部分提供了相关建议,以及在选择合适的数据加载和检查点存储选项时需要考虑的因素。

数据加载

在数据加载期间,GPU 或 TPU 会反复导入批量数据来训练模型。在此阶段,您可以根据批次的大小以及请求它们的顺序,使用缓存来优化数据加载任务。 在数据加载期间,您的目标是以最低的费用尽可能高效地训练模型。

如果训练数据的规模扩容到 PB 级,可能需要多次重新读取数据。这种规模需要 GPU 或 TPU 加速器进行密集处理。不过,您需要确保 GPU 和 TPU 不处于空闲状态,并确保它们主动处理数据。否则,在将数据从一个位置复制到另一个位置时,您需要为昂贵的空闲加速器支付费用。

如需优化数据加载的性能和费用,请考虑以下因素:

  • 数据集大小:整个训练数据语料库的大小,以及每个训练数据集的大小。
  • 访问模式:以下哪个选项最能描述您的训练工作负载 I/O 访问模式:
    • 并行和顺序访问:文件分配给单个节点,并按顺序读取。
    • 并行和随机访问:文件分配给单个节点,并随机读取文件以创建一批样本。
    • 完全随机访问:节点可以读取任何文件中的任何范围来创建批次。
  • 文件大小:典型的读取请求大小。
用于数据加载的 Managed Lustre

我们通常建议您使用 Managed Lustre 进行训练和检查点设置。此外,如果符合以下任一条件,请使用 Managed Lustre:

  • 您的训练数据由小于 50 MB 的小型文件组成,以充分利用低延迟功能。
  • 延迟时间要求小于 1 毫秒,以满足随机 I/O 和元数据访问的存储要求。
  • 您需要获得类似桌面设备的体验,并支持完整的 POSIX,可用于查看和管理用户的数据。

您可以将 Managed Lustre 用作 Cloud Storage 上的高性能缓存,以加速 AI 和机器学习工作负载,这些工作负载需要极高吞吐量和低延迟 I/O 操作,并且需要全托管式并行文件系统。为了最大限度缩短训练期间的延迟时间,您可以将数据导入和导出到受管 Lustre 以及从 Cloud Storage 导入和导出数据。如果您使用 GKE 作为计算平台,则可以使用

使用 GKE Managed Lustre CSI 驱动程序,以使用来自 Cloud Storage 的数据预先填充 PersistentVolumesClaim。训练完成后,您可以将数据导出到费用较低的 Cloud Storage 类,从而最大限度地减少长期存储费用。

用于数据加载的 Cloud Storage

如果符合以下任一条件,您应选择 Cloud Storage with Cloud Storage FUSE and Anywhere Cache 来加载数据:

  • 您的训练数据包含 50 MB 或更大的大型文件。
  • 您可以容忍数十毫秒的较高存储延迟时间。
  • 您优先考虑数据耐用性和高可用性,而不是存储性能。

Cloud Storage 提供了一种用于存储海量数据集的可伸缩解决方案,而 Cloud Storage FUSE 可让您以本地文件系统的形式访问数据。Cloud Storage FUSE 通过将训练数据靠近机器加速器来加快训练期间的数据访问速度,从而提高吞吐量。

对于需要超过 1 TB/秒吞吐量的工作负载,Anywhere Cache 可通过缓存数据并将带宽扩展到超出区域带宽配额来加快读取速度。Anywhere Cache 可为缓存命中提供低延迟,从而无需从 Cloud Storage 存储桶中读取数据。如需评估 Anywhere Cache 是否适合您的工作负载,请使用 Anywhere Cache Recommender 来分析您的数据用量和存储空间。

如需增强数据访问和组织能力,请创建启用了分层命名空间的 Cloud Storage 存储分区。分层命名空间可让您以文件系统结构整理数据,从而针对 AI 和机器学习工作负载提供性能、确保一致性并简化管理。分层命名空间可实现更高的初始每秒查询次数 (QPS) 和快速的原子目录重命名

检查点设置和恢复

对于检查点设置和恢复,训练作业需要定期保存其状态,以便在实例发生故障时快速恢复。发生故障时,作业必须重启,注入最新的检查点,然后恢复训练。用于创建和注入检查点的确切机制通常特定于框架。如需了解 TensorFlow Core 的检查点和优化方法,请参阅训练检查点。 如需了解 PyTorch 的检查点和优化方法,请参阅保存和加载模型

您只需在任何一个时间点保存几个检查点。检查点工作负载通常主要由写入操作、少量删除操作组成,理想情况下,在发生故障时读取操作很少。

如需优化检查点设置和恢复性能,请考虑以下因素:

  • 模型大小:AI 和机器学习模型中的参数数量。 模型的大小会直接影响其检查点文件的大小,后者可能介于 GiB 到 TiB 之间。
  • 检查点频率:模型保存检查点的频率。 频繁保存可提高容错能力,但会增加存储费用,并可能影响训练速度。
  • 检查点恢复时间:您希望用于加载检查点和恢复训练的恢复时间。如果您需要恢复检查点,请注意,在恢复完成之前,模型训练会暂停。为了尽可能缩短恢复时间,请考虑检查点大小、存储性能和网络带宽等因素。
  • 加速器空闲时间:加速器因等待检查点写入或恢复操作完成而未处理数据的时间。为了最大限度地缩短此空闲时间,请选择可提供高吞吐量和低延迟时间的存储解决方案。
用于设置检查点的 Managed Lustre

如果符合以下任一条件,您应选择 Managed Lustre 来设置检查点:

  • 训练工作负载已使用 Managed Lustre 加载数据。
  • 您执行频繁的高性能检查点设置。

为了最大限度地提高资源利用率并最大限度地减少加速器空闲时间,请使用 Managed Lustre 进行训练和检查点设置。 Managed Lustre 可实现快速检查点写入,从而实现较高的单虚拟机吞吐量。您可以将检查点保留在持久性 Managed Lustre 实例中,也可以通过定期将检查点导出到 Cloud Storage 来优化费用。在训练期间,Managed Lustre 可与 Cloud Storage FUSE 搭配使用。您可以使用 Cloud Storage FUSE 进行数据加载和训练,并使用 Managed Lustre 在检查点设置期间提高性能。

用于检查点设置的 Cloud Storage

如果符合以下任一条件,您应选择 Cloud Storage 来设置检查点:

  • 训练工作负载使用 Cloud Storage FUSE。
  • 您优先考虑数据耐用性和高可用性,而不是存储性能。

为了提高检查点设置性能,请使用启用了分层命名空间的 Cloud Storage FUSE,以充分利用快速的原子重命名操作并异步保存检查点。为防止在部署期间意外泄露训练数据集中的敏感信息,您需要将检查点存储在单独的 Cloud Storage 存储桶中。为了帮助减少停滞上传的尾端写入延迟时间,Cloud Storage FUSE 会在 10 秒后尝试重试。

服务

当您部署模型(也称为推理)时,主要 I/O 模式为只读,以便将模型加载到 GPU 或 TPU 内存中。在部署阶段,您的目标是在生产环境中运行模型。模型比训练数据小得多,这意味着您可以跨多个实例复制和扩缩模型。在提供数据时,请务必确保高可用性,并防范可用区级和区域级故障。 因此,您必须确保模型在各种故障情况下均可用。

对于许多生成式 AI 和机器学习应用场景,模型的输入数据可能非常小,并且可能不需要持久存储数据。在其他情况下,您可能需要对模型运行大量数据(例如科学数据集)。如需运行大量数据,请选择一种存储选项,以便在分析数据集期间尽可能缩短 GPU 或 TPU 的空闲时间,并使用一个永久性位置来存储推理结果。

模型加载时间会直接影响加速器的空闲时间,从而产生大量费用。每个节点的模型加载时间增加可能会在多个节点上放大,从而导致费用大幅增加。因此,为了在服务基础设施中实现成本效益,您必须优化模型加载速度。

如需优化服务效果和费用,请考虑以下因素:

  • 模型大小:模型的大小(以 GiB 或 TiB 为单位)。较大的模型需要更多计算资源和内存,这可能会增加延迟时间。
  • 模型加载频率:您计划更新模型的频率。频繁加载和卸载会消耗计算资源并增加延迟时间。
  • 服务节点数:将有多少个节点为您的模型提供服务。 节点越多,延迟时间通常越短,吞吐量越高,但基础设施费用也会随之增加。

用于部署的 Cloud Storage

如果符合以下任一条件,您应选择将 Cloud Storage 与 Cloud Storage FUSE 和 Anywhere Cache 搭配使用来部署模型:

  • 您需要一个推理节点数量可能会发生变化的动态环境。
  • 您不常更新模型。
  • 您可以在一个大洲内的多个可用区和区域中提供模型。
  • 优先考虑模型的高可用性和耐用性,即使在发生地区级服务中断时也是如此。

借助多区域或双区域架构,Cloud Storage 可提供高可用性,并保护您的工作负载免受可用区级和区域级故障的影响。 为了加快模型加载速度,您可以将 Cloud Storage FUSE 与并行下载搭配使用,以便并行提取模型的部分内容。

如需实现超过 1 TB/秒吞吐量的模型部署,或者对于超过 100 个服务节点的部署,请将 Anywhere Cache 与多区域存储桶搭配使用。这种组合可提供高性能、跨区域的冗余存储,并具有灵活性。此外,Anywhere Cache 还可免除缓存数据的出站流量费用和存储类别检索费用。

用于部署的 Managed Lustre

如果符合以下任一条件,您应选择 Managed Lustre 来部署模型:

  • 训练和检查点设置工作负载使用 Managed Lustre。
  • 您从单个可用区提供模型。
  • 您需要可靠的高吞吐量和一致的低延迟 I/O,以支持对性能敏感的模型。
  • 您频繁更新模型。

如果您已使用 Managed Lustre 进行训练和检查点设置,则它可能是一种经济实惠的高性能模型部署选项。Managed Lustre 提供单虚拟机高吞吐量和集群总吞吐量,有助于缩短模型加载时间。您可以将 Managed Lustre 用于任意数量的服务虚拟机。

归档

归档阶段的 I/O 模式为“写入一次,很少读取”。您的目标是存储不同的训练数据集和生成的不同版本的模型。您可以将这些增量数据版本和模型用于备份和灾难恢复。您还必须将这些项长期存储在耐用的位置。虽然您可能不需要经常访问数据和模型,但您希望在需要时能够使用这些内容。

Cloud Storage 具有极高的耐用性、极大的规模和较低的费用,因此是长期存储对象数据的最佳Google Cloud 选择。Cloud Storage 可通过不同的存储类别来优化费用,具体取决于您访问数据集、模型和备份文件的频率。 您可以根据预期访问归档数据的频率来选择存储类别:

  • 频繁访问数据:Standard Storage
  • 每月访问数据:Nearline Storage
  • 每季度访问数据:Coldline Storage
  • 每年访问数据:Archive Storage

借助对象生命周期管理,您可以创建政策,根据特定条件自动将数据移至长期存储类别或删除数据。如果您不确定访问数据的频率,可以使用 Autoclass 功能根据您的访问模式自动在存储类别之间移动数据。

后续步骤

如需详细了解存储选项以及 AI 和机器学习工作负载,请参阅以下资源:

贡献者

作者:Samantha He | 技术文档工程师

其他贡献者: