本文为您介绍如何基于Dataphin构建Shell类型的离线计算任务。
前提条件
完成上传JSON资源包,详情请参见
新建资源。
背景信息
Shell任务中引用到的JSON资源包需提前创建,因此需要您在资源管理中上传JSON资源包,然后在Shell任务中引用。本文以MySQL数据库为例为您介绍,请您下载JSON文件。
新建Shell任务的权限限制,详情请参见数据开发权限列表。
操作步骤
- 登录Dataphin控制台。
- 在Dataphin控制台页面,选择工作区地域后,单击进入Dataphin>>。
您可以通过以下方式,快速进入数据开发模块:
- 单击快速开始相关工作区域的数据研发。
- 单击快速进入研发项目区域的Dev或Basic项目,选择开发数据的项目空间。
说明- 如果您通过快速开始相关工作进入数据开发模块,则跳过步骤3。
- 如果您通过快速进入研发项目进入数据开发模块,则跳过步骤3和4。
- 在Dataphin首页,单击顶部菜单栏的研发。
- 在数据开发页面,单击项目名称后的
图标后,单击Dev或Basic页签,选择数据开发的项目空间(Dev或Basic项目)。
如果您当前访问的是
Dev或
Basic项目,且项目空间为您的数据开发空间,则不需要选择项目空间。 - 进入计算任务页面。
- 在数据开发页面,单击数据处理页签。
如果进入数据
开发页面后,系统默认进入
数据处理页签,则无需再次单击
数据处理页签。 - 在数据处理页签,单击左侧导航栏
计算任务图标。
- 在数据开发页面,单击数据处理页签。
- 在计算任务页面,进入新建文件对话框。
- 单击计算任务后的
图标,选择通用脚本 > SHELL。
- 单击项目名称后的
图标,选择数据处理 > 计算任务 > SHELL。
- 在开发首页,单击SHELL后的
图标。
- 单击计算任务后的
- 编写并运行代码。
- 在新建文件对话框,配置参数。
参数 描述 名称 填写离线计算任务的名称,例如DataX。 调度类型 选择任务的调度类型。调度类型包括: - 周期性节点:自动参与系统的周期性调度。
- 手动节点:需要手动触发任务的运行。
描述 填写对任务的简单描述。 选择目录 选择离线计算任务的目录。 - 单击确定。
- 在代码编写页面,编写Shell离线计算任务的代码。
代码示例如下。
@required_resource{required_memory=2Gb;required_cpus=1.0} @resource_reference{"datax.json"} python $DATA_HOME/bin/datax.py --jvm '-Xms2g -Xmx2g' datax.json
其中,
- required_resource{},自定义配置所需的资源大小。
- 系统已内置DataX_Home为DataX的安装目录,DataX入口在DataX安装的bin文件下。
--jvm '-Xms2g -Xmx2g'
指定DataX实际运行时的JVM内存,建议您将内存的大小设置成与required_resource中的required_memory一致。
对于所需资源较小的DataX任务,您可以使用如下代码示例。@resource_reference{"datax.json"} python $DATA_HOME/bin/datax.py datax.json
- 检查代码。
代码编写完成后,单击
预编译,系统帮助您检查编写的SQL代码的语法。如果预编译失败,您可以单击页面上方的格式化,系统自动帮助您调整语法格式。调整完格式,您可以单击刷新,刷新页面上的代码。
- 单击页面右上角的执行,运行代码。
- 在新建文件对话框,配置参数。
- 配置调度参数。
- 如果离线计算任务的调度类型为周期性节点,则需要配置调度参数,详情请参见调度配置。
- 如果离线计算任务的调度类型为手动节点,需要手动触发任务的调度。
- 在代码编写页面,保存、提交和发布Shell任务。
- 单击页面右上方的
图标,保存代码。
- 单击页面右上方的
图标,提交代码。
- 在提交备注对话框,填写备注信息。
- 单击确定并提交。
- 发布Shell任务至生产环境。
- 如果您的开发模式是Dev-Prod模式,则需要发布Shell任务,详情请参见管理发布任务。
- 如果您的开发模式是Basic模式,则提交成功的Shell任务,即可参与生产环境的调度。
- 单击页面右上方的