1 使用场景
Python 任务适用于处理的数据量较少且处理逻辑不复杂的场景,能够满足 Python 开发业务场景,支持版本 Python 3.7 。
2 前提条件
- 已开通 DataLeap 服务。
- Python 任务访问私有网络服务或资源时,需通过独享计算资源组访问,Python 任务界面不支持单独修改网络配置。
注意
若仅开通 Dataleap大数据集成服务,不支持创建 Python 任务。
3 操作步骤
3.1 创建任务
- 登录 DataLeap租户控制台。
- 在概览界面,显示加入的项目中,点击数据开发进入对应项目。
- 在任务开发界面,左侧导航栏中,点击新建任务按钮,进入新建任务页面。
- 选择任务类型:
- 分类:数据开发。
- 绑定引擎:通用。
- 选择任务:离线数据 Python。
- 填写任务基本信息:
- 任务名称:输入任务的名称,只允许字符.、字母、数字、下划线、连字符、[]、【】、()、()以及中文字符,且在127个字符以内。
- 保存至:选择任务存放的目标文件夹目录。
- 点击确认按钮,成功创建任务。
3.2 编辑使用
任务创建成功后,进入代码开发编辑界面。
3.2.1 开发代码编辑
- 支持语言:Python,如下所示:
print ("Hello, Python!")
- 参数:支持时间参数 ${date}、${hour} 等,更多参数可参考:时间变量与常量说明
print ('${date}')
3.2.2 资源设置
- 依赖包:代码中引用的第三方包,可在此手动输入三方包依赖。如需指定具体版本,按照 "plcga==1.6" 格式添加,多个依赖包,用英文分号分隔。
注意
- 配置依赖包时建议加上对应包的版本,以保证每次运行环境一致。
- 代码中没有依赖的包,不建议添加配置。
- 环境变量:设置系统环境变量时,避免直接覆盖系统环境变量,请按照追加方式指定,例如 PATH=$PATH:/usr/local/bin/python,多个环境变量用英文分号分隔。
3.2.3 网络配置(可选)
当任务在脚本中访问公网、私有网络(VPC)资源,或者访问有存在网络访问限制的镜像仓库地址时,您需要进行网络配置,选择能够与您资源互通的私有网络、子网、安全组信息。
有以下两种方式:
- 您可通过手动下拉的方式,选择访问任务资源、数据源所在的私有网络(VPC)、子网和安全组等网络信息。
说明
若是子账号登录创建任务时,选择网络环境需具备相关服务使用权限,需主账号在访问控制中,添加 DataLeapFullAccess 权限。
- 亦或是当项目已绑定独享计算资源组时,您也可通过使用独享计算资源组来访问私有网络下的资源、服务,实现网络互通。
可将独享计算资源组所在的 VPC 开通公网,或者使其 VPC 信息与您资源所在的 VPC 信息保持一致,若二者不一致时,您也可以通过 CEN 做网络打通工作。
选择独享计算资源组后,此处网络配置信息均来源于独享计算资源组信息,暂不支持在网络配置界面直接修改,您可在创建独享计算资源组时,配置好对应的私有网络信息,详见:资源组管理。
3.2.4 任务产出数据登记
产出数据登记用于记录任务的数据血缘,不会对代码逻辑造成影响。
- 引擎类型:E-MapReduce(EMR)和湖仓一体分析服务(LAS)、默认(没有产出登记)。
- 关联实例:选择关联对应引擎下的实例信息。
- 数据类型:仅 EMR 引擎类型下需选择数据类型,目前有 Hive、HDFS、其他。
- 数据库表:选择对应引擎下产出的数据库和数据表。
3.2.5 执行设置
- 单击进入右侧侧边栏执行设置窗口。
- 选择计算资源组:支持选择公共计算资源组、独享计算资源组。
- 镜像地址:
支持您自定义镜像,建议使用火山引擎镜像仓库,填写示例如下:
- 北京地域:dataleap-cn-beijing.cr.volces.com/studio/spark:online
- 上海地域:dataleap-cn-shanghai.cr.volces.com/studio/spark:online
- 广州地域:dataleap-cn-guangzhou.cr.volces.com/studio/spark:online
说明
- DataLeap 公共计算资源组无法访问公网,若您填写的镜像仓库地址(如第三方镜像仓库)需通过公网或指定私有网络(VPC)访问时,您需要通过上方网络配置来实现网络互通。可尝试以下解决方案:
- 将您的镜像仓库地址和您配置的 VPC 地址均开通公网访问能力;
- 您镜像仓库所在的 VPC 和您配置的 VPC 需保持一致,或是通过 CEN 做网络打通。
详见3.2.3 网络配置(可选)。
- 自定义镜像中须安装 python3,方可正常使用。
- 基础镜像地址中仅包含最基础的 Linux 和 Python 命令,简单场景下,您也可基于基础镜像地址,并额外补充一些依赖来使用。
- 基础镜像所包含依赖包查看方式如下:
创建 Python 任务;
执行以下脚本信息:
import os
os.system("pip freeze")
执行后可在日志中查看包含依赖包结果。
- 基础镜像地址:
- 北京地域:dataleap-cn-beijing.cr.volces.com/studio/runtime_light:online
- 上海地域:dataleap-cn-shanghai.cr.volces.com/studio/runtime_light:online
- 广州地域:dataleap-cn-guangzhou.cr.volces.com/studio/runtime_light:online
- 若您自定义镜像的文件中有需加密的文件,希望该镜像文件只允许被固定任务使用,则您可以创建私有镜像类型,并将镜像仓库地址、用户名及密码等私有镜像配置信息,添加至独享计算资源组中,通过独享计算资源组来访问镜像文件。修改资源组镜像配置操作详见资源组管理。
- 私有镜像地址需要您手动填写 OCI 制品仓库中,具体镜像版本对应的网络地址信息,以实际填写的镜像地址为准。若遗漏填写的情况下,会访问到默认的基础镜像地址。
- 资源配置:资源可根据实际需求进行配置,以 CU 为单位,默认配置 1CU(1CU = 1Core 4GB),下拉可选择更多规格的资源配置。
说明
其中 0.25CU、0.5CU 规格,仅独享计算资源组支持选择。
- 资源选择:
Python 任务支持在任务编辑中使用通用资源,通过访问 Jar、File、Zip 等资源类型,来提升数据开发效率。
在资源选择下拉框中,选取任务中所需使用到的资源,若还未创建资源,您也可单击新建资源按钮,前往资源库进行新建。新建资源操作详见资源库。
3.2.6 调度设置
进入右侧边栏调度设置,配置节点调度相关属性。设置操作详见:调度设置。
注意
Python 任务上游依赖设置,不支持依赖推荐功能,只能通过手动添加的方式,添加上游依赖关系。
3.3 保存任务
配置完成后,单击上方操作栏中保存图标按钮,保存节点至服务器。
3.4 调试任务
单击操作栏中调试图标按钮,执行编辑的 Python 命令,执行成功后,可在界面下方查看运行日志和结果。
注意
- 调试操作,直接使用线上数据进行调试,需谨慎操作。
- 本任务类型支持调试执行成功或失败后发送消息通知,您可根据业务情况,前往项目控制台 > 配置信息 > 消息通知设置中,选择是否开启任务调试运行成功或失败通知。
- 默认通知方式为邮箱,您需在“账号管理”中,提前绑定相应的安全邮箱信息;
- 您也可根据业务需要,自行配置飞书应用机器人,通过飞书的方式发送消息通知,飞书消息通知前置操作详见1.1 飞书应用机器人创建。
3.5 提交发布任务
任务所需参数配置和调试任务成功后,将任务提交发布到运维中心离线任务运维中执行。
单击上方操作栏中的保存和提交上线按钮,在提交上线对话框中,选择回溯数据、监控设置、提交设置等参数,最后单击确认按钮,完成作业提交。 提交上线说明详见:数据开发概述---离线任务提交。
后续任务运维操作详见:离线任务运维。