在 AWS Glue 中处理 Ray 作业 - AWS Glue

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 AWS Glue 中处理 Ray 作业

此部分提供有关使用 AWS Glue for Ray 作业的信息。有关编写 AWS Glue for Ray 脚本的更多信息,请参阅 Ray 脚本编程 部分。

AWS Glue for Ray 入门

要使用 AWS Glue for Ray,您可以使用为 AWS Glue for Spark 使用的相同 AWS Glue 作业和交互式会话。AWS Glue 作业专为循环运行相同的脚本而设计,而交互式会话旨在让您针对相同的预置资源按顺序运行代码片段。

AWS Glue ETL 和 Ray 在底层是不同的,所以在您的脚本中,您可以访问不同的工具、功能和配置。作为一个由 AWS Glue 管理的新计算框架,Ray 具有不同的架构,并使用不同的词汇来描述它的作用。有关更多信息,请参阅 Ray 文档中的架构白皮书

注意

AWS Glue for Ray 在美国东部(弗吉尼亚州北部)、美国东部(俄亥俄州)、美国西部(俄勒冈州)、亚太地区(东京)和欧洲地区(爱尔兰)发布。

AWS Glue Studio 控制台中的 Ray 作业

在 AWS Glue Studio—Ray 脚本编辑器中创建作业时,在 AWS Glue Studio 控制台的 作业页面上,可以选择一个新选项。选择此选项可在控制台中创建 Ray 作业。有关这些作业及其使用方法的详细信息,请参阅 使用 AWS Glue Studio 构建可视化 ETL 作业

AWS Glue Studio 中的作业页面,其中选择了 Ray 脚本编辑器选项。

AWS CLI 和 SDK 中的 Ray 作业

AWS CLI 中的 Ray 作业与其他作业使用相同的 SDK 操作和参数。AWS Glue for Ray 为某些参数引入了新值。有关作业 API 的更多信息,请参阅 任务

支持的 Ray 运行时环境

在 Spark 作业中,GlueVersion 确定 AWS Glue for Spark 作业中可用的 Apache Spark 和 Python 版本。Python 版本指示了 Spark 类型的作业支持的版本。这不是 Ray 运行时环境的配置方式。

对于 Ray 作业,应将 GlueVersion 设置为 4.0 或更高。但是,Ray 作业中可用的 Ray、Python 和其他库的版本由作业定义中的 Runtime 字段决定。

Ray2.4 运行时环境将在发布后至少 6 个月内可用。随着 Ray 的快速发展,您将能够在未来的运行时环境版本中整合 Ray 的更新和改进功能。

有效值:Ray2.4

运行时值 Ray 和 Python 版本
Ray2.4(适用于 AWS Glue 4.0+ 版本)

Ray 2.4.0

Python 3.9

其他信息

Ray 作业的工作线程会计

AWS Glue 在新的基于 Graviton 的 EC2 工作线程类型上运行 Ray 作业,这些类型仅适用于 Ray 作业。为了适当地为这些工作负载配置 Ray 所设计的工作负载,我们提供了与大多数工作线程不同的计算资源与内存资源的比例。为了考虑这些资源,我们使用内存优化数据处理单元(M-DPU),而不是标准数据处理单元(DPU)。

  • 一个 M-DPU 相当于 4 个 vCPU 和 32 GB 内存。

  • 一个 DPU 相当于 4 个 vCPU 和 16 GB 内存。DPU 用于核算 AWS Glue 中使用 Spark 作业和相应工作线程的资源。

Ray 作业目前可以访问一种工作者类型 Z.2XZ.2X 工作线程映射到 2 个 M-DPU(8 个 vCPU,64 GB 内存),并拥有 128 GB 的磁盘空间。Z.2X 计算机提供 8 个 Ray 工作线程(每个 vCPU 一个)。

在一个账户中可以同时使用的 M-DPU 数量受服务限额的限制。有关 AWS Glue 账户限制的更多信息,请参阅AWS Glue端节点和配额

您可以在作业定义中指定使用 --number-of-workers (NumberOfWorkers) 的 Ray 作业可用的工作节点数量。有关作业 API 中 Ray 值的更多信息,请参阅 任务

您可以使用 --min-workers 作业参数进一步指定 Ray 作业必须分配的最小工作线程数。有关任务参数的更多信息,请参阅 参考