文档

创建并使用MaxCompute资源

更新时间:

如果您的代码或函数中需使用MaxCompute资源文件,则需先创建或上传资源至目标工作空间后再引用。您可通过MaxCompute的SQL命令上传与管理资源,也可使用DataWorks的可视化方式创建。本文为您介绍如何使用DataWorks可视化方式创建资源并在节点中使用,以及基于资源注册函数。

前提条件

  • 工作空间已绑定引擎。在工作空间配置页面绑定MaxCompute引擎后,数据开发(DataStudio)页面才会显示MaxCompute目录。详情请参见创建并管理工作空间

  • 已创建业务流程。DataWorks使用业务流程存放创建的资源。因此,创建资源前需先创建业务流程。详情请参见创建业务流程

  • 已创建相应节点。创建的资源需被相应的节点引用。引用前您需根据业务需求创建合适的节点,详情请参见开发ODPS SQL任务

背景信息

资源(Resource)是MaxCompute的特有概念,如果您想使用MaxCompute的自定义函数(UDF)MapReduce功能,需要依赖资源来完成。在DataWorks中,您可通过可视化方式将本地开发的资源包通过本地上传的方式上传至DataWorks,或直接在DataWorks新建资源。

DataWorks支持将文本文件、Python代码以及.zip.tgz.tar.gz.tar.jar等压缩包,作为不同类型的资源上传至MaxCompute,在用户自定义函数UDF及MapReduce的运行过程中读取、使用。

各类型资源介绍如下:

  • Python:您编写的Python代码,用于注册Python UDF函数。

  • JAR:编译好的Java JAR包,用于运行Java程序。

  • Archive:通过资源名称中的后缀识别该资源为哪种压缩类型。目前支持的压缩文件类型包括.zip.tgz.tar.gz.tar.jar

  • File:File资源仅支持.zip.so.jar类型。

    说明

    新建File类型资源时,若选择在线编辑方式创建,则File文件的内容不能超过500KB。

    更多资源介绍,详情请参见资源

使用限制

  • 资源大小

    • 目前最大可通过DataWorks直接上传200MB的资源。详情请参见MaxCompute资源管理

    • 新建File类型资源时,若选择在线编辑方式创建,则File文件的内容不能超过500KB。

  • 资源发布

    若您使用的是标准模式的工作空间,则需将资源发布至生产环境,发布后生产环境的项目才会存在该资源。

    说明

    不同环境的引擎信息存在差异。请先明确相应环境的引擎信息,该操作将影响您查询对应环境的表、资源等。查看不同环境对应的MaxCompute引擎信息,详情请参见绑定MaxCompute引擎

  • 资源管理

    DataWorks仅支持使用可视化方式,查看与管理通过DataWorks可视化方式上传的资源。若通过其他工具(例如,MaxCompute Studio)添加至MaxCompute引擎的资源,需通过DataWorks的MaxCompute资源功能手动加载至DataWorks,加载后才可在DataWorks查看并进行相关管理操作。详情请参见MaxCompute资源管理

进入资源创建入口

  1. 进入数据开发

  2. 登录DataWorks控制台,单击左侧导航栏的数据建模与开发 > 数据开发,在下拉框中选择对应工作空间后单击进入数据开发

  3. 进入资源新建入口。

    在数据开发页面的具体业务流程,DataWorks支持通过新建资源或上传已有本地资源两种方式,生成DataWorks中需使用的资源,使用哪种方式请以各类型资源的实际创建界面为准。生成DataWorks资源的入口及步骤如下图。

    说明

    若未新建业务流程,请参考创建业务流程新建。

    创建资源

创建或上传资源

DataWorks支持您将本地开发的资源包通过本地上传的方式上传至DataWorks,例如,本地开发的UDF函数,需将其打包上传至DataWorks后再进行函数注册;同时,部分资源类型也支持您直接在DataWorks新建,例如,Python、不超过一定大小的File资源类型。

说明
  • 新创建的资源如果未在MaxCompute(ODPS)客户端上传过,则需勾选上传为ODPS资源,如果该资源已上传至MaxCompute(ODPS)客户端,则需取消勾选上传为ODPS资源,否则上传均会报错。

  • 通过DataWorks可视化方式创建或上传的资源,若上传时勾选了上传为ODPS资源,则上传后在DataWorks和MaxCompute中均会存储该资源。后续若通过命令行删除MaxCompute上的资源,DataWorks上的资源仍然存在且正常显示。

  • 资源名称无需与上传的文件名称保持一致。

方式一:可视化创建资源

使用DataWorks可视化新建资源的配置如下。您需根据业务需求配置不同类型资源的相关信息。关于DataWorks可视化创建Python资源并注册函数,您可参考使用MaxCompute分析IP来源最佳实践

说明

超过500KB的File文件,请通过方式二:可视化上传本地资源上传至DataWorks并使用。

可视化新建资源

方式二:可视化上传本地资源

使用DataWorks可视化方式上传本地资源的配置如下。您需根据业务需求配置不同类型资源的相关信息。

说明

通过该方式,可上传不超过200M的资源。

上传本地资源

提交并发布资源

资源创建完成后,您需在资源编辑页面,单击工具栏中的提交图标,提交资源至调度开发服务器端。

说明

若生产任务需使用该资源,则还需将该资源发布至生产环境。详情请参见发布任务

查看资源版本并下载

在业务流程下的资源目录,鼠标右键单击目标资源,选择历史版本,即可查看、下载已保存或已提交的资源版本,并对比不同版本的资源变更情况。

说明

版本对比时,至少需选择两个版本进行比对。

您也可根据需要执行克隆、删除等更多资源相关操作。其中,删除操作仅是删除开发环境对应引擎项目中的该资源。若需删除生产环境下该资源,则需进行任务发布,将资源删除操作发布至生产环境,发布成功后,生产环境该资源才会同步删除。详情请参见发布任务

场景一:节点使用资源

DataWorks资源创建后,需被相应节点引用。节点成功引用资源后会显示@resource_reference{"资源名称"}格式代码。各类型节点显示格式存在差异,请以实际界面为准。例如,PyODPS 2节点显示的样式为##@resource_reference{"资源名称"}

说明

若还未创建节点,请参考开发ODPS SQL任务新建。

引用步骤如下图。资源加载

场景二:使用资源注册函数

使用资源注册函数前,需先参考创建并使用自定义函数新建函数。在函数配置界面,输入已创建的资源名称,如下图所示。

说明

使用资源注册函数前,请确保资源已提交。提交资源,详情请参见提交并发布资源

使用资源注册函数

查看MaxCompute系统自带的函数,详情请参见使用内建函数

查看在MaxCompute计算引擎中存在的函数、函数的变更历史等操作,详情请参见MaxCompute函数管理

附录一:通过命令操作擎项目中的资源

常用资源相关操作命令如下。

类型

功能

角色

操作入口

添加资源

添加资源至MaxCompute项目中。

具备更新资源权限(Write)的用户。

本文中的命令您可以在如下工具平台执行:

查看资源信息

查看资源的详细信息。

具备读取资源权限(Read)的用户。

查看资源列表

查看当前项目下所有的资源。

具备项目查看对象列表权限(List)的用户。

为资源创建别名

为资源创建别名。

具备更新资源权限(Write)的用户。

下载资源

下载MaxCompute项目中的资源到本地。

具备更新资源权限(Write)的用户。

删除资源

删除MaxCompute项目中已经存在的资源。

具备删除资源权限(Delete)的用户。

在DataWorks查看资源时,若不添加项目名称,默认查看的是开发项目中的资源。具体如下:

  • 查看当前项目下的所有资源。在DataStudio执行该命令时,默认访问开发环境绑定的MaxCompute项目。

    list resources;
  • 查看指定项目下的所有资源。

    use MaxCompute项目名称;
    list resources;

更多命令操作,详情请参见资源操作

附录二:添加引擎资源至DataWorks进行管理

可通过MaxCompute资源功能,将不超过200MB的MaxCompute引擎资源加载至DataWorks进行可视化管理,详情请参见MaxCompute资源管理。添加后,您可通过DataWorks在线编写Python资源,并使用资源注册函数的方式实现IP来源分析最佳实践,详情请参见使用MaxCompute分析IP来源最佳实践

  • 本页导读 (1)
文档反馈