使用SQL分析连接

MaxCompute控制台提供SQL分析,方便您快速执行SQL语句操作。本文为您介绍如何通过SQL分析使用MaxCompute服务。

概述

您开通MaxCompute后,在控制台创建项目后即可直接通过SQL分析快速编辑并执行SQL。您可以通过SQL分析快捷使用MaxCompute服务的相关功能:

  • 支持编辑及运行SQL命令,并对执行结果简单的图表分析。

  • 内置公共数据集Demo,您可以直接打开公共数据集Demo的SQL文件,直接执行代码,基于公开数据集体验及测试MaxCompute。

使用场景

SQL分析的使用场景如下:

  • 初次体验及测试MaxCompute的使用者:可以通过SQL分析,使用公开数据集快速体验MaxCompute的核心功能。

  • 临时运行一些SQL命令,如临时查看一些表的数据。

注意事项

  • 开通MaxCompute服务后,就可以进入MaxCompute访问SQL分析,但是需要先创建一个项目,执行SQL作业需要在项目里发起。

  • SQL分析公测(Beta)版本暂时不支持云上文件系统,支持连接您本地文件目录,您可以打开并编辑本地的.sql文件和新建.sql文件后保存到本地。

SQL分析界面

SQL分析界面如下图所示:

image

  • 序号1:编辑区。

    模块

    说明

    标签栏

    文件标签,可以同时打开多个文件。

    • 鼠标左键双击标签空白处可以快速新建.sql文件。

    • 标签栏空白处右键后选择新建文本文件,可选择非.sql文件,例如JSON等类型。

      说明

      新建后选择文本文件非.sql文件,需要保存为.sql文件才可正常使用工具栏。

    工具栏

    • 运行:执行SQL脚本,您可以选中当前文件中的某段SQL脚本运行,如果不选择,默认执行当前文件内所有SQL脚本。

    • 停止:单击运行后,出现停止按钮。

      该版本暂时不支持停止执行,如需停止作业,请在作业运维页面进行,详情请参见作业运维(新版)

    • 保存:当前公测版本暂时无云上文件存储能力,仅支持保存到本地。请保存为.sql文件。

    • 格式化:对当前文件内的SQL代码进行格式化。

    • 运行结果:如果当前文件执行过,结果区隐藏后,可以通过此按钮呼出。

    • SQL扫描预估:执行COST SQL语句进行计量预估,结果返回SQL语句的扫描量和复杂度。COST SQL详细介绍请参见COST SQL

    编辑器

    SQL代码编辑框,需要注意的是:

    • 脚本首行需要是正常参与运行的脚本。

    • 一个文件多个SQL脚本的情况下,如果有Flag(set语句)需要统一放在头部,且Flag会作用于该文件下所有SQL。

    • 支持全屏模式打开输入、执行并查看结果。

  • 序号2:运行参数配置区。

    模块

    说明

    项目

    选择需要运行SQL代码的项目,必选项。

    需要选择当前账号有create instance权限的项目。

    首次运行需要选择,之后缓存会记录上一次选择的项目,可以随时自定义更换。选择之后对所有文件标签页生效。

    计算配额

    选择需要使用的计算配额(Quota),非必选。

    如要选择,需要选择当前账号有usage权限的Quota;如果不选择,那么使用的是所选项目默认计算Quota。选择之后对所有文件标签页生效。

  • 序号3:结果区。

    模块

    说明

    问题

    脚本执行前自动对编辑区所有打开的文件脚本进行语法、规范等校验,一定程度上可以帮助您在脚本执行前发现更多的脚本规范性问题。

    元数据

    选中表数据公共数据集中的对象(表、资源或自定义函数),展示相应的元数据详情,包括但不限于对象的基础信息、列信息、生成DDL、数据预览等。注意需要对应对象的相关数据权限

    结果

    执行脚本的结果,详细如下:

    • 运行列表:当前文件每个SQL执行一次就会有一个开始时间记录。可以通过此处单击选择查看每次运行的相关信息。

    • 日志:每次执行的日志内容。

    • SQL:每次运行的具体SQL代码。

    • 结果列表:如果有展示的结果会在此展示。

    • 分析:如果有结果,可以在此进行简单的图表分析。

    SQL扫描预估

    对SQL操作“SQL扫描预估”中执行的COST SQL语句进行结果展示,包含执行日志和结果。

  • 序号4:资源管理器区。

    模块

    说明

    工作区

    文件列表,公测(Beta)版本的工作区文件列表支持连通本地文件。

    首次访问时显示无打开的文件夹,您可以单击打开文件夹按钮,选择打开本地文件夹,首次打开会有弹框让您确认查看文件夹权限。

    重要

    我们一贯重视您的系统数据安全,每次打开页面,系统尝试读取您本地文件夹的时候,需要您进行手动授权,让我们有权限访问您指定文件夹下的所有文件。同时我们不会在服务器中保存您文件夹下的内容。

    公共数据集DEMO

    • MaxCompute SQL分析内置的公共数据集Demo Query文件,您可以直接打开运行,也可以临时编辑并运行,但不支持保存您编辑的内容,即使保存刷新页面也会回到原始内容,请自行保存修改后的文件内容。

    • 内置的Demo主要基于公共数据集编辑的SQL,公共数据集都是采用Schema存储,因此脚本会默认加上set odps.namespace.schema=true; 打开Schema语法开关。

    • 内置的Demo文件,每个文件都有多个SQL脚本,脚本名中-query前的数字即为Query个数,特别是TPC-DS数据集的Demo每个会有99个Query,分几个不同数据量的规格,执行会消耗计算资源产生计算消费,请您谨慎操作。

    时间线

    记录展示编辑区打开的每个文件的操作日志,信息存储在缓存中,因此如果清理过缓存后日志会被清理。

    右键功能

    鼠标在资源管理器空白处右键,可以对资源管理器进行一个配置,比如隐藏公共数据集DEMO模块,那么去勾选掉此模块即可。

  • 序号5:搜索区。

    模块

    说明

    搜索

    • 资源管理器中所有文件内容的全局搜索,如您可以搜索哪些文件含有from table1语句。

      单击搜索结果即可将对应文件在右侧编辑区打开并直接定位到此关键字位置。

    • 工作区支持文件搜索。

    替换

    替换功能,即对搜索的关键字结果替换成其他语句。

    如需要将所有文件中from table1语句替换为from table2,则可以在搜索框里输入from table1进行搜索,替换框里输入from table2,单击image按钮进行替换。

    表数据

    展示当前租户在Region下所有Project的对象列表,包括Schema、Tables、Views、Resources、Functions等。

    • 所有Project内的对象列表查看都需要有对应的List权限,同时对于Table对象,如果当前登录账户有Select权限,则对应Table列表的图标为绿色的表格图标image,以此快速分辨有权限的表。

    • 列表中的SYSTEM_CATALOG项目目前主要为租户级别Information Schema所属的系统项目,由系统默认创建,INFORMATION SCHEMA通过View形式置于该项目的“INFORMATION_SCHEMA”Schema下,可直接查看。

    • 阿里云账号可以查看所有项目列表,RAM用户需要被添加至项目中,才可在项目列表中查看对应项目。

    • 点击项目展开,如果您项目有Schema层级,将会先展示Schema列表,若没有,则直接展示数据对象分类,点击各项分类展开对应类型下的对象列表。

    • 点击某个对象,会在右侧结果区的元数据页签展示该对象的元数据详情。

    公开数据集

    展示系统提供的公开数据集的表元数据信息。

使用SQL分析

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

  2. 在左侧导航栏选择工作区 > SQL分析

  3. SQL分析页面,新建SQL文件。

    首次访问SQL分析,默认会打开一个untitled_x的文件您可直接编辑SQL。您也可以直接在编辑区文件标签栏空白处双击新建SQL文件。

  4. 在SQL代码编辑框输入SQL后,单击运行参数配置,配置如下参数。

    • 项目:必选项,指定该SQL在哪个项目内执行,因此需要选择当前账号有create instance权限的项目。

    • 计算配额:非必选,即实现作业级别指定Quota。如果要选择,则需要选择当前账号有对应usage权限的Quota;如果不选择,则SQL会在项目配置的默认计算Quota里执行。

  5. 单击运行,在结果页签查看执行结果。

    您可以单击运行结果的image图标,进行简单的可视化分析。

  6. 单击保存,您可以保存您的SQL文件在您的本地机器上。