使用云命令行(odpscmd)连接

MaxCompute基于阿里云云命令行,为您提供云上客户端环境,您无需手动安装即可通过云命令行工具使用客户端(odpscmd)。本文为您介绍MaxCompute的云命令行(odpscmd)的使用注意事项和简单示例。

前提条件

若通过RAM用户登录MaxCompute的云命令行(odpscmd),请确认RAM用户已具备AliyunCloudShellFullAccess权限。具体授权操作,请参见访问控制RAM

使用限制

说明

云命令行(Cloud Shell)是阿里云提供的网页版命令行工具,MaxCompute基于阿里云云命令行,提供了云上客户端环境,您无需手动安装即可通过云命令行工具使用客户端(odpscmd)。关于云命令行的详情请参见什么是云命令行?

  • 云命令行限制

    限制项

    限制说明

    虚拟机数量

    无论打开多少会话窗口,云命令行在同一时刻只会创建一台虚拟机。所有会话窗口都会自动连接到此虚拟机上。

    会话窗口

    最多可以打开5个会话窗口。

    无操作销毁

    无交互式操作30分钟或者关闭所有会话窗口将视为终止操作,在终止操作后15分钟云命令行将销毁此台虚拟机。再次启动云命令行时,会为您创建一台全新的虚拟机。

    到期销毁

    云命令行创建的虚拟机只有1小时使用期限,到期后云命令行将会立即销毁此台虚拟机。再次启动云命令行时,会为您创建一台全新的虚拟机。

    文件存储

    云命令行为您挂载 10 GB的临时存储空间,您可以将您的文件存放在/home/shell目录,但会随着虚拟机的销毁而被重置。您可以选择挂载存储空间来实现存储,每次云命令行启动时会为您自动加载。

    禁止使用

    长时间使用以及计算或网络密集型等恶意进程将不受支持,并可能会导致会话在没有任何警告的情况下被终止甚至被禁用。

  • 地域限制

    目前仅华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、西南1(成都)、华南1(深圳)地域支持使用云命令行连接MaxCompute。

注意事项

在任意区域启动MaxCompute的云命令行(odpscmd),云命令行的服务和临时存储服务默认都部署在上海区域,若您的项目在其他区域,使用此功能会存在数据安全风险,请谨慎使用。

进入云命令行(odpscmd)环境

  1. 登录MaxCompute控制台,在左上角选择地域。

  2. 单击右上角的命令行

  3. 项目选择对话框中选择要管理的项目,单击确认

    说明

    如果界面弹出挂载NAS相关提示,您可以根据需要进行挂载。具体操作,请参见(可选)挂载NAS

    云命令行(odpscmd)加载完成后,如下图所示。image.png

(可选)挂载NAS

云命令行为您挂载10 GB的临时存储空间,但会随着虚拟机的销毁而被重置,您可以选择挂载存储空间来实现存储,每次云命令行启动时,为您自动加载。挂载NAS的操作如下。

MaxCompute Cloud CMD窗口,单击image.png选择挂载存储空间,绑定NAS存储空间。

说明

挂载NAS会产生对应的NAS存储费用,使用完成后,可及时解绑存储空间。关于NAS存储费用详情,请参见计费概述

使用云命令行(odpscmd)

MaxCompute的云命令行(odpscmd)支持所有本地客户端可执行的SQL命令。本文通过运行SQL命令和数据传输为例,展示云命令行(odpscmd)的使用。

运行SQL命令

创建表result_table1,命令示例如下。

create table if not exists result_table1
(
 education STRING comment '教育程度',
 num BIGINT comment '人数');

创建完成后您可以查看已创建的表,命令示例如下。

show tables;

数据传输

  • 文件上传

    1. 单击image.png,选择上传,将本地文件上传,本文以result.txt文件为例。

      上传完成后,Ctrl+c退出云命令行(odpscmd)环境,执行ll查看是否上传成功和文件路径。

      image.png

      确认完成后,返回云命令行(odpscmd)环境,命令如下。

      cloudshell-odpscmd -p <project.name>
    2. 将上传的文件result.txt上传至MaxCompute,命令示例如下。

      tunnel upload result.txt result_table1;
  • 文件下载

    1. 将MaxCompute的表result_table1下载至云命令行(odpscmd),命令示例如下。

      Tunnel download result_table1 result_table1.txt;
    2. 单击image.png,选择下载result_table1.txt文件下载至本地。

      下载完成后,如下图所示。

      image.png