数据源和摄取 - Amazon SageMaker

数据源和摄取

通过摄取将记录添加到特征组。根据所需的使用案例,摄取的记录可以保留在特征组中,也可以不保留在特征组中。这取决于存储配置,即您的特征组是使用离线存储还是在线存储。离线存储用作历史数据库,通常用于数据探索、机器学习 (ML) 模型训练和批量推理。在线存储支持实时查找记录,通常用于机器学习模型处理。有关 Feature Store 概念和摄取的更多信息,请参阅 Feature Store 概念

可通过多种方式将数据导入 Amazon SageMaker Feature Store。Feature Store 为数据摄取提供名为 PutRecord 的单个 API 调用,该调用使您可以批量或从流式传输源摄取数据。您可以使用 Amazon SageMaker Data Wrangler 来设计特征,然后将特征摄取到您的 Feature Store 中。也可以使用 Amazon EMR 通过 Spark 连接器进行批量数据摄取。

在以下主题中,我们将讨论两者的区别

流摄取

您可以使用 Kafka 或 Kinesis 等流式传输源作为数据源,从中提取记录,并将记录直接馈送到在线存储以用于训练、推理或特征创建。可以使用同步 PutRecord API 调用将记录摄取到您的特征组中。由于这是同步 API 调用,因此可以在一次 API 调用中推送小批量更新。这样就能保持特征值的高新鲜度,并在检测到更新时立即发布值。这些也称为流式处理特征。

带 Feature Store 的 Data Wrangler

Data Wrangler 是 Studio Classic 的一项功能,可提供端到端的解决方案,用于导入、准备、转换、功能化和分析数据。利用 Data Wrangler,您可以设计自己的特征并将其摄取到您的在线或离线存储特征组中。

下面的说明导出了一个 Jupyter Notebook,其中包含创建特征存放区特征组所需的全部源代码,该特征组可将您的功能从 Data Wrangler 添加到在线或离线存储。

在管理控制台上将 Data Wrangler 数据流导出到特征存放区的说明因启用 Amazon SageMaker Studio 还是 Amazon SageMaker Studio Classic 作为默认体验而异。

  1. 按照 启动 Amazon SageMaker Studio 中的说明打开 Studio 管理控制台。

  2. 从左侧面板选择数据,展开下拉列表。

  3. 从下拉列表中选择 Data Wrangler

  4. 如果已运行 Amazon SageMaker Canvas 实例,请选择打开 Canvas

    如果没有运行 SageMaker Canvas 实例,请选择在 Canvas 中运行

  5. 在 SageMaker Canvas 管理控制台上,选择左侧导航窗格中的Data Wrangler

  6. 选择数据流,查看数据流。

  7. 选择 + 扩展下拉列表。

  8. 选择导出数据流,展开下拉列表。

  9. 选择保存到 SageMaker 特征存放区(通过 JupyterLab Notebook)

  10. 在导出数据流为笔记本下,选择以下选项之一:

    • 下载本地副本将数据流下载到本地计算机。

    • 导出到 S3 位置可将数据流下载到 Amazon Simple Storage Service 位置,并输入 Amazon S3 位置,或选择浏览查找 Amazon S3 位置。

  11. 选择导出

创建特征组后,您还可以选择并联接多个特征组中的数据以在 Data Wrangler 中创建新的工程特征,然后将数据集导出到 Amazon S3 存储桶。

有关如何导出到 Feature Store 的更多信息,请参阅导出到 SageMaker Feature Store