SQL数据分析查询

更新时间:2025-03-18 10:10:19

如果需要快速地对数据进行查询与分析,您可以使用SQL语句查询MaxCompute、EMR Hive、Hologres等数据源。本文为您介绍如何通过SQL语句查询数据源。

前提条件

  • 工作空间已创建数据源,详情请参见创建并管理数据源

  • 已拥有某数据源在数据分析模块的查询权限:详情请参见数据查询与分析管控

  • 操作账号已被添加为工作空间的以下角色之一:数据分析师、模型设计师、开发、运维角色、空间管理员或项目所有者,详情请参见为工作空间添加空间成员

    说明

    使用SQL查询功能时,仅支持查询有权限的工作空间内的数据源数据,因此您需要先联系管理员将您添加为工作空间的数据分析师、模型设计师、开发、运维、空间管理员或项目所有者。

注意事项

SQL查询支持的数据源

SQL查询支持的数据源包含MaxComputeHologresEMR HiveEMR Spark SQLEMR ImpalaEMR PrestoEMR TrinoCDH HiveStarRocksClickHouseAnalyticDB for MySQL3.0AnalyticDB for PostgreSQLMySQLPostgreSQLTablestoreOracleSQL Server

说明

MaxComputeHologres数据源支持使用执行者身份访问。

权限控制

  • 数据源权限。

    • 标准模式工作空间:拥有生产与开发环境,无论想要查询开发还是生产环境数据,均需租户管理员或组户级安全管理员手动在数据查询与分析管控进行设置。

    • 简单模式工作空间:分析师在SQL查询页面无权查看任何数据,需租户管理员或组户级安全管理员手动在数据查询与分析管控进行设置。

      说明

      标准模式工作空间与简单模式工作空间的区别可参见必读:简单模式和标准模式的区别

  • 白名单访问控制。

    当使用数据分析操作MaxCompute表数据时,如果MaxCompute项目空间开启了白名单访问控制,数据分析的相关服务(例如,费用计算、数据下载、维表使用、数据上传等)可能会出现报错。为保证DataWorks数据分析服务能顺利访问MaxCompute的项目空间,则需提前配置好MaxCompute数据分析白名单权限。

步骤一:添加目录

支持您将系统推荐目录及已授权的数据源下的数据表添加至目录,添加为目录后您可快速查看相应目录下数据表,支持查看表结构并快速生成查询SQL。

  1. 进入SQL查询页面。

    登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据分析与服务 > 数据分析,单击进入数据分析页面,单击左侧导航栏的SQL查询进入SQL查询页面。

  2. 添加目录。

    SQL查询页面默认仅展示我的文件他人文件,其他文件目录需要通过单击搜索框右侧的image按钮。添加支持下面几类文件目录添加至文件目录,添加为目录后您可快速查看相应目录下的数据表,支持查看表结构并快速生成查询SQL。

    说明
    • 他人文件:展示当前租户下其他用户公开到工作空间的文件。

    • 目前最大支持添加8个数据集。

步骤二:创建SQL查询

您可新建SQL查询文件并手动编辑SQL查询命令,还支持将SQL提交到指定数据源执行。

  1. 新建SQL查询文件。

    • 手动创建SQL查询文件。

      1. 单击我的文件后的image按钮,选择新建文件,进入新建文件弹窗页面

      2. 在弹窗页面按界面要求配置文件名,下拉选择文件存储的目标文件夹

      3. 单击确定创建SQL查询文件。

    • 创建临时SQL查询文件。

      • 欢迎页点击上方image添加临时SQL文件。

      • 首次进入SQL查询页面或当前窗口没有打开SQL文件时,单击右侧页面中的新建SQL查询窗口。

  2. 配置SQL执行数据源。

    新建完成SQL查询文件后,单击页面右上方的image按钮,配置SQL执行数据源,可参考以下表格:

    配置项

    说明

    配置项

    说明

    工作空间

    单击image按钮选择需要查询的数据源所在的工作空间。

    数据源类型

    单击image按钮选择需要查询的数据源类型。

    数据源名称

    单击image按钮选择需要查询的数据源。

    • 开发环境数据源。

    • 生产环境数据源。

    访问身份模式

    选择查询数据时采用哪种访问模式进行SQL查询,拥有以下两种访问身份模式:

    • 执行者身份:选择执行者身份,代表使用登录DataWorks的当前云账号身份在数据源中执行SQL。如果当前云账号在目标数据源中具备数据访问权限,则数据源将会正常返回数据结果。

      说明

      执行者身份仅支持MaxComputeHologres数据源使用。

    • 数据源默认访问身份

      • 当前登录账号与默认访问身份一致

        身份一致时,无需额外授权,可直接使用当前数据源的默认访问身份来执行SQL。

      • 当前登录账号与默认访问身份不同

        • 当前登录账号拥有所选数据源权限时,能够直接执行SQL。

        • 当前登录账号未拥有所选数据源权限时,需让拥有工作空间管理员权限的用户为您当前登录的云账号授予目标数据源及默认访问身份的使用权限,才可以开始执行SQL,详情可参见:数据查询与分析管控

    配置完成后单击确定保存SQL执行的数据源信息。

    说明

    您可在系统管理中修改SQL查询任务运行时的资源组。

  3. 编辑SQL代码。

步骤三:执行查询语句

SQL编辑框内编辑对应数据源的查询代码,完成后执行对应命令即可获取查询结果,以下内容为

image

序号

功能

操作说明

序号

功能

操作说明

1

全文运行

单击运行按钮可全文运行SQL代码或运行选中状态的SQL。

2

快捷运行

单击SQL代码前的image运行按钮,仅快捷运行按钮对应的代码。

3

停止

停止正在运行的SQL代码。

4

保存

保存当前SQL查询文件。

5

格式化

您也可以通过格式化将自行排版的代码一键规范化处理。

6

版本

您也可以单击更多 > 版本来查看自动保存的代码和手动保存代码间差异,并选择需要的版本保存。

7

成本预估

单句运行时界面会提示您此次调试运行可能需要的费用,运行完整代码前,您也可以单击更多 > 成本预估来对全量代码运行可能需要的费用进行预估。

说明

目前仅MaxCompute可以使用该功能。

更多操作

查询结果操作

SQL执行完成后,您可在查询结果页面查看运行日志、查看运行结果、查看查询结果对应的SQL内容等,还支持您使用折线图、柱状图、条形图、饼图、交叉表等对查询结果进行可视化展示。

功能

图示

操作说明

功能

图示

操作说明

查看运行结果中表格数据

image.png

您可单击导出,对查询结果表进行如下操作:

  • 本地文件:将查询结果下载至本地。当前下载操作无需执行审批流程。

    说明
    • DataWorks增值版本支持使用导出至本地文件。

    • 不同增值版本支持导出到本地的最大数据条数不同。分别为:标准版20万,专业版200万,企业版500万。文件大小最大不超过1G。租户管理员、租户安全管理员、授权空间管理员角色的RAM用户可以进入数据查询与分析管控对查询结果的展示条数、下载条数、是否允许下载等进行管控。

    • 当前仅MaxCompute、EMR引擎数据支持导出本地文件。若MaxCompute项目开启了项目保护(即禁止下载数据),则通过数据分析下载数据会失败。关于MaxCompute项目保护机制,详情请参见数据保护机制

  • MaxCompute表:将查询结果保存为一张线上的MaxCompute表。无需将数据下载至本地再传至线上。您可根据需要设置表的生命周期。

  • 电子表格:用于同步查询结果至电子表格,对查询结果进行更大区域的查看等操作。详情请参见:分析数据

  • 电子表格并分享:用于同步查询结果至电子表格,并通过电子表格的数据分享功能,分享该表数据至指定用户。详情请参见:分享电子表格

查询结果可视化图表展示

image.png

支持查询结果通过折线图、柱状图、条形图、饼图等图表进行可视化展现。还支持您将查询结果保存为数据卡片,构建您专属的可视化知识库,同时,您还可以从卡片中挑选合适卡片,快速创建数据报告,轻松打造个性化作品。详情请参见增强分析(卡片和报告)

查看查询结果对应的SQL语句

sql

为您展示当前查询结果对应的SQL内容,支持对该查询结果对应的SQL语句进行快速复制和快速插入到代码编辑区的操作。

管理SQL查询目录

SQL查询页面,您可以统一管理SQL查询文件。

SQL查询

功能

描述

功能

描述

SQL查询目录树搜索功能

在区域①,您可以通过搜索搜索功能定位目标表。

代码搜索

在区域①,单击image.png,您可以输入关键字进行代码搜索。

运行历史

在区域①,您可以单击历史查看SQL查询历史执行记录,此记录不包括计划任务执行日志。

添加目录

在区域①,您可以单击image添加目录,支持您将系统推荐目录及已授权的数据源下的数据表添加至目录,添加为目录后您可快速查看相应目录下的SQL文件或者数据表,对于数据表支持您快速查看表结构并快速生成查询SQL。

我的文件

在区域②,我的文件为您展示您保存的SQL查询文件,您可以右键单击指定文件,将文件分享至指定工作空间。分享表示该文件正在分享中,被分享的工作空间下的所有空间成员均可以在他人文件目录下看到您分享的文件。

他人文件

在区域②,他人文件为您展示当前租户下其他用户公开到工作空间的文件。

我的MaxCompute

在区域②,我的MaxCompute目录需要通过单击image图标进行添加。我的MaxCompute表为您展示您个人名下的MaxCompute表。包括开发表与生产表。

我的收藏

在区域②,我的收藏目录需要通过单击image图标进行添加。我的收藏为展示您个人收藏的表,您在数据集下,右键单击目标表选择收藏,收藏后文件将展示在该目录下。

公共数据

在区域②,公共数据目录需要通过单击image图标进行添加。公共数据为您展示数据分析默认提供且不需要申请权限的表,您可使用该表快速体验SQL查询产品功能。

个性化设置

支持您单击左下角的设置图标进入设置页面,进行一些个性化设置:

  • 主题设置:您可以设置SQL查询的主题风格。

  • 编辑器设置:您可以设置SQL查询编辑器窗口的代码风格、代码提示、回车输入提示建议等。

  • SQL操作设置:您可以设置每次SQL执行时的默认执行模式。

常见问题说明

SQL查询可选数据源与当前空间绑定的数据源数量不符

可查询的数据源,需要经过租户管理员或者租户级安全管理员在安全中心进行授权。如有需要使用的数据源未经授权,可以联系管理员在安全中心对需要查询的数据源进行授权。

  • 标准模式工作空间。

    在标准模式下,无论是查询开发还是生产环境数据,均需租户管理员或组户级安全管理员手动在数据查询与分析管控进行设置。

  • 简单模式工作空间。

    默认分析师在SQL查询页面无权查看任何数据,需租户管理员或组户级安全管理员手动在数据查询与分析管控进行设置。

如何在目录树中直接查看表?

您可以在添加目录中按需添加可查询数据源下的数据表,添加对应的数据表目录后,如果表数量过多,可通过搜索的方式查找目标表。

  1. SQL查询页面,单击搜索框右侧的image按钮,将数据地图-元数据中添加据源至目录。

  2. 在目录树上单击添加的数据源,即可展示该数据源下的数据表。

    1. 单击数据表名即可查看数据表的基础信息以及明细信息。

    2. 鼠标选中数据表后,右键可对数据表进行生成SQL语句查看详情以及收藏操作。

      image

      说明

      对于经常使用的表,可以将其添加到收藏,后续可在我的收藏中进行查看。

如何配置SQL查询与下载的开关以及最大数量?

您可在安全中心 > 安全策略 > 数据查询与分析管控 > 查询结果管控页面对查询和下载结果的上限进行配置。

  1. 进入安全中心页面。

    登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据治理 > 安全中心,在右侧页面中单击进入安全中心

  2. 在安全中心页面左侧导航栏单击进入安全策略 > 数据查询与分析管控页面,在查询结果管控页签内即可配置数据分析的查询结果策略。

    image

  • 本页导读 (1)
  • 前提条件
  • 注意事项
  • SQL查询支持的数据源
  • 权限控制
  • 步骤一:添加目录
  • 步骤二:创建SQL查询
  • 步骤三:执行查询语句
  • 更多操作
  • 查询结果操作
  • 管理SQL查询目录
  • 个性化设置
  • 常见问题说明
  • SQL查询可选数据源与当前空间绑定的数据源数量不符
  • 如何在目录树中直接查看表?
  • 如何配置SQL查询与下载的开关以及最大数量?