设计混合AIML数据访问策略与Amazon SageMaker 架构博客

创建混合 AI/ML 数据访问策略与 Amazon SageMaker

作者 :Franklin Aguinaldo, Ananta Khanal, Sid Misra, Tony Chen
日期 :2023年7月10日
来源 :[Amazon Elastic File System (EFS)](https://aws.amazon.com/blogs/architecture/category/storage/amazon- elastic-file-system-efs/),,,,,,,
分享链接

关键要点

  • 企业在本地服务器群集上积累数据,通常以本地实验开始他们的机器学习 (ML) 之旅。
  • 随着数据量增加,企业正在考虑将部分工作负载迁移到云端,以利用更强大的云计算能力。
  • 创建混合数据访问策略至关重要,包括数据存储位置、访问需求和网络连接要求。

随着时间的推移,许多企业建立了本地服务器群集以积累数据,并随后采购更多的服务器和存储。他们通常会在本地计算机上开始机器学习(ML)旅程。不同企业对人工智能(AI)的投资阶段各不相同。有些企业完全保持在本地,有些则采用混合模式(本地和云),还有一些企业完全转向云计算来处理其AI和机器学习(ML)工作负载。

这些企业也在研究或已经开始使用云计算,以增强其本地系统,原因多种多样。随着技术的进步,数据的规模和数量也随之增加。捕获的数据量和数据点数量持续扩展,这给本地管理带来了挑战。许多企业分布在不同的地理区域、大洲和时区。尽管可以增加本地基础设施和网络带宽,但维护和保养仍然存在隐性成本。这些组织正寻求云计算,以转移部分工作负担,并利用云中丰富的人工智能和机器学习功能。

定义混合数据访问策略

将ML工作负载迁移到云中需要一个全面的混合数据策略,明确何时及如何将本地数据存储连接到云。对于大多数企业来说,让云成为真相的源头是有意义的,同时仍然允许团队在本地使用和管理数据集。将云定义为数据集的真相源,意味着主副本将存储在云中,任何生成的数据集都将在同一位置存储在云中。这确保了数据请求能够从主副本和任何衍生副本中获取。

混合数据访问策略应考虑以下几个方面:

需求描述
理解当前与未来的ML存储需求评估本地存储的情况和未来的扩展需求。
创建ML工作负载的地图记录性能和访问需求,包括测试和训练需求。
定义本地与云之间的连接包括支持站点间互联的东-西和南-北流量,必要的带宽和数据传输能力。
确定单一真相源(SSOT)确定ML数据集的主要存储位置,考虑如何存储过时、新的数据及热数据和冷数据。
定义存储性能要求将存储性能需求映射到合适的云存储服务,使得能够利用基于云的ML服务如Amazon SageMaker。

混合数据访问策略架构

为了解决这些挑战,我们概述了一个端到端的系统架构,如下图所示,定义了:1) 本地数据中心与 AWS 区域之间的连接;2) 本地数据到云的映射;3) 将 Amazon SageMaker 与适当存储对接,基于 ML 需求。

![AI/ML混合数据访问策略参考架构](https://d2908q01vomqb2.cloudfront.net/fc074d501302eb2b93e2554793fcaf50b3bf7291/2023/07/06/Fig1-hybrid- 删除)

让我们逐步探讨此架构。

  1. 本地连接 AWS 云通过 实现高传输速度。
  2. 用于将大型数据集迁移到 (Amazon S3)。AWS DataSync 代理安装在本地。
  3. 本地网络文件系统(NFS)或服务器消息块(SMB)数据通过 桥接到云中,使用虚拟机 (VM) 或硬件设备。
  4. 将数据上传至 Amazon S3,并在本地缓存。
  5. Amazon S3 是云中 ML 资产的真相源。
  6. 将 S3 数据下载到 进行实验。
  7. 实例可以通过 S3、 和 访问数据。使用 进行快速缓存以访问本地数据,并使用 进行云端弹性扩展。
  8. SageMaker 训练作业可以使用存储在 Amazon S3、EFS 和 FSx for Lustre 中的数据。S3 数据可以通过文件、快速文件或管道模式访问,并在使用 FSx for Lustre 时进行预加载或延迟加载。EFS 中的任何现有数据也可以使训练作业可用。
  9. 利用 进行数据归档和降低存储成本。

使用 Amazon SageMaker 的 ML 工作负载

让我们深入了解 SageMaker 如何助力您的 ML 工作负载。

要开始将 ML 工作负载映射到云中,请考虑哪些 AWS 存储服务可以与 Amazon SageMaker 一起使用。通常情况下,Amazon S3 是用于 ML 的结构化和非结构化数据的中心存储位置。这包括来自上游应用的原始数据,以及作为功能存储一部分组织和存储的策划数据集。

在开发的初期阶段,SageMaker Studio 用户将利用 S3 API 从 S3 下载数据到其私有主目录。这个主目录是由 SageMaker 管理的 EFS 文件系统支持的。Studio 用户将他们的笔记本代码(存储在主目录中)指向本地数据集,并开始他们的开发任务。

为了扩展和自动化模型训练,SageMaker 用户可以启动在 SageMaker Studio 笔记本环境之外运行的训练作业。有多种选项可以使数据可用于 SageMaker 训练作业。

  1. Amazon S3 :用户可以指定训练数据集的 S3 位置。使用 S3 作为数据源时,有三种输入模式可供选择:
  2. 文件模式 :这是默认输入模式,SageMaker 将数据从 S3 复制到训练实例存储。该存储可以是 SageMaker 提供的 (Amazon EBS)卷或某些实例类型中包含的 NVMe SSD。训练仅在数据集下载到存储后开始,并且需要有足够的存储空间来容纳整个数据集。
  3. 快速文件模式 :快速文件模式将 S3 对象暴露为训练实例上的 POSIX 文件系统。数据集文件会根据训练脚本的读取需求从 S3 流式传输。这意味着训练可以更早开始并且需要更少的磁盘空间。快速文件模式也无需修改训练代码。
  4. 管道模式 :管道输入也在训练脚本读取时从 S3 流式传输数据,但需要代码更改。管道输入模式在很大程度上被更新且易于使用的快速文件模式所取代。
  5. FSx for Lustre :用户可以指定一个 FSx for Lustre 文件系统,SageMaker 将其挂载到训练实例并运行训练代码。当 FSx for Lustre 文件系统与一个 S3 存储桶连接时,数据可以在第一次训练作业中从 S3 懒加载。在同一数据集上进行后续训练作业时,可以低延迟地访问。
  6. Amazon EFS :用户可以指定一个已经包含他们训练数据的 EFS 文件系统。SageMaker 将在训练实例上挂载该文件系统并运行训练代码。
    您可以。

结论

通过这个参考架构,您可以开发并交付在本地或云中运行的 ML 工作负载。您的企业可以继续在本地存储和计算特定的 ML 工作负载,同时也可以利用云计算资源,使用 Amazon SageMaker。云计算提供的规模允许您的企业在不担心容量的情况下进行实验。今天就开始在 AWS 上定义您的混合数据策略吧!

附加资源:

1 将来自多个来源的数据聚合到单一来源或位置的实践。

作者介绍

Franklin Aguinaldo

Franklin 是 Amazon Web Services 的高级解决方案架构师,拥有超过 20 年的开发和架构经验。他是应用现代化的 SME,并在无服务器和容器领域拥有专家级经验。

Ananta Khanal

Ananta Khanal 是 AWS 专注于云存储解决方案的解决方案架构师,拥有超过 15 年的 IT工作经验,曾在不同公司担任多种角色,对云技术、基础设施管理、IT 战略和数据管理充满热情。

Sid Misra

Sid Misra 是 Amazon 文件存储团队的高级产品经理。他在企业软件、机器学习、计算机视觉和无线通信方面拥有超过 15年的产品和工程团队领导经验。

Tony Chen

Tony Chen 是 Amazon Web Services的机器学习解决方案架构师,帮助客户设计可扩展且可靠的机器学习能力。他曾是一名数据科学家和数据工程师,利用他的经验帮助解决组织在机器学习操作化过程中面临的最具挑战性的问题。

Leave a Reply

Required fields are marked *