宣布为亚马逊 SageMaker Data Wrangler 提供亚马逊 S3 接入点支持

我们很高兴地宣布, 亚马逊 SageMaker Data Wrangler 支持 亚马 逊 S3 接入点。 凭借其可视化的点击界面,SageMaker Data Wrangler 简化了数据准备和功能工程的过程,包括数据选择、清理、探索和可视化,而 S3 接入点则通过提供具有特定访问策略的唯一主机名来简化数据访问。

从今天开始,SageMaker Data Wrangler使用户可以更轻松地从存储在 亚马逊简单存储服务 (Amazon S3)中的共享数据集准备数据,同时使组织能够安全地控制组织中的数据访问权限。借助 S3 接入点,数据管理员现在可以创建应用程序和团队特定的访问点来促进数据共享,而不必使用许多不同的权限规则来管理复杂的存储桶策略。

在这篇文章中,我们将引导您在 SageMaker Data Wrangler 中从 S3 接入点导入数据以及将数据导出到该接入点。

解决方案概述

想象一下,作为管理员,你必须为在 SageMaker Data Wrangler 中运行自己的数据准备工作流程的多个数据科学团队管理数据。管理员经常面临三个挑战:

  • 数据科学团队需要在不影响他人安全的情况下访问他们的数据集
  • 数据科学团队需要访问某些包含敏感数据的数据集,这使权限管理变得更加复杂
  • 安全策略仅允许通过特定端点访问数据,以防止未经授权的访问并减少数据泄露

使用传统的存储桶策略,您在设置精细访问时会遇到困难,因为存储桶策略会将相同的权限应用于存储桶中的所有对象。传统的存储桶策略也无法支持端点级别的安全访问。

S3 Access Points 通过授予精细级别的访问控制来解决这些问题,从而在不影响存储桶其他部分的情况下更轻松地管理不同团队的权限。您无需修改单个存储桶策略,而是使用针对特定用例量身定制的单个策略创建多个接入点,从而降低配置错误或意外访问敏感数据的风险。最后,您可以对接入点强制执行端点策略,以定义规则,控制哪些 VPC 或 IP 地址可以通过特定的接入点访问数据。

我们通过以下步骤演示如何在 SageMaker Data Wrangler 中使用 S3 接入点:

  1. 将数据上传到 S3 存储桶。
  2. 创建 S3 接入点。
  3. 使用必要的策略配置您 的 亚马逊云科技 身份和访问管理 (IAM) 角色。
  4. 创建 SageMaker 数据管理者流程。
  5. 将数据从 SageMaker 数据管理器导出到接入点。

在这篇文章中,我们使用 银行营销数据 集 作为示例数据。但是,你可以使用任何其他你喜欢的数据集。

先决条件

在本演练中,您应该具备以下先决条件:

  • 一个 亚马逊云科技 账户
  • 亚马逊 SageMaker Studio 域名和用户。有关这些设置的详细信息,请参阅使用快速设置 登录 Amazon SageMaker 域名
  • 一个 S3 存储桶。

将数据上传到 S3 存储桶

将您的数据上传到 S3 存储桶。有关说明,请参阅 上传对象 。在这篇文章中,我们使用 银行营销数据集

创建 S3 接入点

要创建 S3 接入点,请完成以下步骤。有关更多信息,请参阅 创建接入点

  1. 在 Amazon S3 控制台上,选择导航窗格 中的 接入点
  2. 选择 创建接入点
  3. 接入点名称 中 ,输入接入点的名称。
  4. 对于 Bucket 选择在此账户中选择一个存储桶
  5. 存储桶名称 中,输入您创建的存储桶的名称。
  6. 将其余设置保留为默认设置,然后选择 创建接入点

在接入点详细信息页面上,记下亚马逊资源名称 (ARN) 和接入点别名。稍后在 SageMaker Data Wrangler 中与接入点进行交互时,你可以使用它们。

配置您的 IAM 角色

如果你已经准备好了 SageMaker Studio 域名,请完成以下步骤来编辑执行角色:

  1. 在 SageMaker 控制台上, 在导航窗格中选择 域名
  2. 选择您的域名。
  3. 域名设置 选项卡上,选择 编辑

默认情况下,你用于访问 Data Wrangler 的 IAM 角色是 SageMakerExecutionRole。 我们需要添加以下两个策略才能使用 S3 接入点:

  • 政策 1 — 此 IAM 策略授予 SageMaker Data Wrangler 执行 putObject 、getObject 和 Del eteObject 的权限 : {“版本”:“2012-10-17”,“声明”:[{“Sid”:“s3acces sPointAccess”,“Effect”:“允许”,“操作”:[“s3:tob
    puject”,“s3:GetObject”,“s3:GetObject”,“s3:GetObject”,“s3:GetObject”,“s3:GetObject”],“资源”:“arn: aws: s3: us-east-1: < >: accespoint/< >”
    }]}
  • 政策 2 — 此 IAM 政策授予 SageMaker 数据管理者获取 S3 接入点的访问权限:
    
    {“版本”:“2012-10-17”,“声明”:[{“Sid”:“getAccessPoint”,“效果”:“允许”,“操作”:“s3:getAccessPoint”,“资源”:“arn: aws: s3: us-east-1:< >: accesspoint/< >”
    }]}
  1. 创建这两个策略并将它们附加到角色。

在 SageMaker 数据管理器中使用 S3 接入点

要创建新的 SageMaker Data Wrangler 流程,请完成以下步骤:

  1. 启动 SageMaker Studio。
  2. 在 “ 文件 ” 菜单上,选择 “ 新建 ” 和 “ 数据管理者流 ”。

  1. 选择 Amazon S3 作为数据源。

  1. 对于 S3 来源,使用您之前记下的 ARN 或别名输入 S3 接入点。

在这篇文章中,我们使用 ARN 通过 S3 接入点导入数据。但是,ARN 仅适用于同一区域内的 S3 接入点和 SageMaker Studio 域。

或者,你可以使用别名,如以下屏幕截图所示。与 ARN 不同,别名可以跨区域引用。

将数据从 SageMaker Data Wrangler 导出到 S3 接入点

完成必要的转换后,我们可以将结果导出到 S3 接入点。就我们而言,我们只是删掉了一列。完成用例所需的任何转换后,请完成以下步骤:

  1. 在数据流中,选择加号。
  2. 选择添加目的地,然后选择亚马逊 S3。

  1. 输入数据集名称和 S3 位置,引用 ARN。

现在,您已经使用 S3 接入点安全高效地导入和导出数据,无需管理复杂的存储桶策略和浏览多个文件夹结构。

清理

如果您创建了一个新的 SageMaker 域名以供后续使用,请务必停止任何正在运行的应用程序并 删除您的域名 以避免产生费用。此外,删除任何 S3 接入点 删除任何 S3 存储桶

结论

在这篇文章中,我们介绍了SageMaker Data Wrangler的S3接入点的可用性,并向您展示了如何使用此功能来简化SageMaker Studio中的数据控制。我们从 亚马逊云科技 账户的 S3 接入点别名访问了数据集,并将生成的转换保存为该别名。我们希望您利用此功能来消除 SageMaker Studio 用户在数据访问方面的任何瓶颈,并鼓励您尝试一下!


作者简介

Peter Chung 是一名解决方案架构师,为 亚马逊云科技 的企业客户提供服务。他喜欢帮助客户使用技术来解决各种主题的业务问题,例如削减成本和利用人工智能。他写了一本关于 亚马逊云科技 FinOps 的书,喜欢阅读和构建解决方案。

Neelam Koshiya 是 AW S 的企业解决方案架构师。她目前的工作重点是帮助企业客户完成云采用之旅,以实现战略业务成果。在业余时间,她喜欢阅读和户外活动。


*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您发展海外业务和/或了解行业前沿技术选择推荐该服务。