DataWorks的Serverless Ray节点支持在EMR Serverless Ray计算资源上,使用Ray分布式框架进行Python作业开发与周期性调度。本文介绍使用Serverless Ray节点的主要流程。
节点介绍
EMR Serverless Ray在Spark工作空间之上提供托管Ray计算能力,兼容开源Ray接口,支持Python编程模型,适用于分布式计算、机器学习与数据处理等场景。通过DataWorks的Serverless Ray节点,您可在线编写Python代码并配置ray job submit提交命令,完成作业开发、调试与调度。
使用限制
计算资源限制:仅支持选择已绑定EMR Serverless Ray计算资源,并确保Serverless资源组与该计算资源网络连通。
语言限制:仅支持Python语言。
运行限制:不支持单行或代码块单独运行,仅支持整体提交运行。
准备工作
已在目标DataWorks工作空间完成绑定EMR Serverless Ray计算资源,并确保Ray集群处于可用状态。
(可选,RAM账号需要)进行任务开发的RAM账号已被添加至对应工作空间中,并具有开发或空间管理员(权限较大,谨慎添加)角色权限,添加成员的操作详情请参见为工作空间添加空间成员。
说明如果您使用的是主账号,则忽略该添加操作。
新建Serverless Ray节点
新建入口与在数据开发中创建其他节点一致,请参见节点。
开发Serverless Ray节点
Serverless Ray节点的开发包含两部分:在代码编辑区编写Python代码,并在Submit命令区域配置作业提交命令。用户创建文件后,系统自动生成提交命令,文件名为节点名称加.py后缀。
节点内容配置说明
您可参照以下参数配置信息,配置Serverless Ray节点内容。
配置区域 | 参数名称 | 参数描述 |
Python代码 | Python代码 | 编写使用Ray框架的Python代码。支持 |
Submit命令 | 提交命令 | 配置Ray作业的提交命令。命令格式为 |
runtime-env-json | 可选。配置运行时环境。例如通过 | |
参数 | 填写您所需传入代码的参数信息。您可将该参数配置为动态参数 |
若作业依赖多个Python文件,可将依赖文件创建为DataWorks Ray File类型资源并在代码中使用##@resource_reference引用,再在--working-dir指向工作目录的前提下组织ray job submit命令。资源创建请参见EMR资源与函数。
调试Serverless Ray节点
配置运行配置。
在节点右侧运行配置中,配置以下参数信息。
参数名称
描述
计算资源
选择您所绑定的Serverless Ray计算资源。
资源组
选择已通过网络连通性测试的Serverless资源组。Serverless Ray节点仅支持Serverless资源组。
脚本参数
在配置节点内容时,通过${参数名}的方式定义变量,需要在脚本参数处配置参数名、参数值信息,任务运行时会将它动态替换为真实的取值。详情请参见调度参数来源及其表达式。
调试运行节点。
单击保存并运行执行调试。
后续步骤
相关文档
引用Ray File操作可参见Lindorm Ray节点。
图标唤起发布流程,通过该流程将任务发布至生产环境。项目目录下的节点只有在发布至生产环境后,才会进行周期性调度。