详情页标题前

阿里云云原生大数据计算服务 MaxCompute资源操作-云淘科技

详情页1

资源(Resource)是MaxCompute的特有概念,如果您想使用MaxCompute的自定义函数(UDF)或MapReduce功能,需要依赖资源来完成。本文为您介绍添加、查看、下载及删除资源等常用资源操作。

资源操作常用命令如下。

类型

功能

角色

操作入口

添加资源

添加资源至MaxCompute项目中。

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

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

  • MaxCompute客户端

  • 使用SQL分析连接

  • 使用云命令行(odpscmd)连接

  • 使用DataWorks连接

  • MaxCompute Studio

查看资源信息

查看资源的详细信息。

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

查看资源列表

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

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

为资源创建别名

为资源创建别名。

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

下载资源

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

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

删除资源

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

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

添加资源

添加资源至MaxCompute项目中。

  • 使用限制

    • MaxCompute不支持添加外部表为资源。

    • 每个资源文件的大小不能超过2048 MB。单个SQL、MapReduce作业所引用的资源总大小不能超过2048 MB。

  • 命令格式

    add file  [as ] [comment ''][-f];
    add archive  [as ] [comment ''][-f];
    add table  [partition ()] [as ] [comment ''][-f];
    add py|jar  [comment ''][-f];
  • 参数说明

    • file|archive|table|py|jar:必填。资源类型。资源类型详情请参见资源。

    • local_file:必填。表示本地文件所在路径。并以文件名作为资源名,资源名是资源的唯一标识。

    • table_name:必填。表示MaxCompute中的表名。

    • spec:必填。当添加的资源为分区表时,MaxCompute仅支持将某个分区作为资源,不支持将整张分区表作为资源。

    • alias:可选。指定资源名,不加该参数时默认文件名为资源名。JAR及PYTHON类型资源不支持此参数。

    • comment:可选。为资源添加注释。

    • -f:可选。当存在同名的资源时,此操作会覆盖原有资源。如果不指定此选项,存在同名资源时,操作将失败。

  • 使用示例

    • 示例1:添加一个FILE类型文件资源到MaxCompute。

      add file banking.txt;

      返回结果如下。

      OK: Resource 'banking.txt' have been created.
    • 示例2:添加一个别名为sale.res的分区表资源到MaxCompute。

      add table sale_detail partition (ds='20150602') as sale.res comment 'sale detail on 20150602' -f;

      返回结果如下。

      OK: Resource 'sale.res' have been updated.
    • 示例3:添加Python资源到MaxCompute。

      add py python.py [comment ''][-f];

      返回结果如下。

      OK: Resource 'python.py' have been created.
  • 查看资源信息

    查看当前项目下指定资源的信息,包含资源名、所有者、资源类型、资源大小、创建时间、上一次修改时间、资源文件的MD5值等信息。

    • 命令格式

      desc resource ;
    • 参数说明

      resource_name:必填。已存在的资源名称。

    • 返回值说明

      • Name:资源的名称。

      • Owner:资源所有者账号。

      • Type:资源类型。

      • Comment:资源注释信息。

      • CreatedTime:资源创建时间。

      • LastModifiedTime:资源最近一次的更新时间。

      • LastUpdator:执行最近一次更新操作的账号。

      • Size:资源文件大小,单位为MB。

      • Md5sum:资源文件的MD5值。

      说明

      MaxCompute的资源名大小写不敏感,resource_A和 resource_a指代同一资源。

    • 使用示例

      --查看资源topn_new.jar的信息。
      desc resource topn_new.jar;

      返回结果如下。

      Name                                    topn_new.jar
      Owner                                   ALIYUN$****@test.aliyunid.com
      Type                                    JAR
      Comment                                 cloudopenapi
      CreatedTime                             2020-12-29 13:55:11
      LastModifiedTime                        2020-12-29 13:55:11
      LastUpdator
      Size                                    11438795
      Md5sum                                  8bcf6aabf****56c0

    查看资源列表

    查看当前项目下所有的资源,包含资源名、所有者、创建时间、最近一次更新时间、资源类型等信息。

    • 命令格式

      list resources;
    • 使用示例

      list resources;

      返回结果如下。

      Resource Name         Owner                 Creation Time         Last Modified Time    Type          Last Updator Resource Size  Source         comment
      getaddr.jar           ALIYUN$****           2020-06-18 15:47:28   2020-06-18 15:47:28   jar           1353716                                    cloudopenapi
      ip.dat                ALIYUN$****           2020-06-18 15:49:46   2020-06-18 15:49:46   file          8525962                                    cloudopenapi
      2 resources

    为资源创建别名

    为资源创建别名。alias命令可以在不修改代码的前提下,在MapReduce或自定义函数(UDF)代码中,通过某个固定的资源名读取不同资源(数据)。

    • 命令格式

      alias =;
    • 参数说明

      • alias:命名后的资源别名。

      • real:资源的原名。

    • 使用示例

      --新增资源res_20121208和res_20121209。
      add table sale_detail partition (ds='20121208') as res_20121208;
      add table sale_detail partition (ds='20121209') as res_20121209;
      --命名资源res_20121208的别名为resName,并调用它。
      alias resName=res_20121208;
      jar -resources resName -libjars work.jar  -classpath ./work.jar com.company.MainClass args ...;  
      --命名资源res_20121209的别名为resName,并调用它。
      alias resName=res_20121209;
      jar -resources resName -libjars work.jar  -classpath ./work.jar com.company.MainClass args ...; 

    上例中的资源别名resName在两个作业里引用了不同的资源表,您无需修改代码便可读取到不同的数据。

    下载资源

    下载MaxCompute项目中的资源到本地。资源类型必须为FILE、JAR、ARCHIVE或PY,不支持Table类型。

    • 命令格式

      get resource  ;
    • 参数说明

      • resource_name:必填。要下载的资源名称。

      • path:必填。资源保存到本地的路径。

    • 使用示例

      get resource getaddr.jar D:\;

    删除资源

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

    • 命令格式

      drop resource ;
    • 参数说明

      resource_name:待删除资源的名称。

    • 使用示例

      drop resource getaddr.jar;

      返回结果如下。

      Confirm to "drop resource getaddr.jar" (yes/no)? y
      OK

    内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

    阿里云企业补贴进行中: 马上申请

    腾讯云限时活动1折起,即将结束: 马上收藏

    同尘科技为腾讯云授权服务中心。

    购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

    转转请注明出处:https://www.yunxiaoer.com/158355.html

    (0)
    上一篇 2023年12月10日
    下一篇 2023年12月10日
    详情页2

    相关推荐

    联系我们

    400-800-8888

    在线咨询: QQ交谈

    邮件:admin@example.com

    工作时间:周一至周五,9:30-18:30,节假日休息

    关注微信
    本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。