DataWorks为您提供在线数据分析能力,以下通过对MaxCompute的公共数据集进行分析为例,为您介绍如何端到端操作实践在线数据分析。

实践背景与目的

本实践的操作流程与目的:
  1. 环境准备:进行实践操作前所需的环境,便于了解数据查询分析所需的环境要求。
  2. 数据查询:以查询MaxCompute的公共数据集的两张表的数据为例,示例数据查询的操作入口和流程。
  3. 数据分析与分享:以典型的排序分析和透视分析为例,示例web excel的线上数据分析能力与操作入口。

环境准备

本实践以使用同一地域的MaxCompute和DataWorks进行数据查询与分析为例,在进行实践操作前,您需提前通同一地域的MaxCompute与DataWorks,并创建好用于实践操作的DataWorks项目空间与MaxCompute项目,做好数据查询分析前的环境准备。如果您已有符合要求的环境,可跳过此步骤。

  1. 开通MaxCompute与DataWorks。
    1. 登录并进入阿里云MaxCompute产品首页,单击立即开通
    2. 选择开通地域等开通产品的信息,勾选服务协议,根据界面引导完成付款开通。
  2. 创建并关联DataWorks项目空间与MaxCompute项目
    1. 登录进入MaxCompute控制台,单击创建项目
    2. 创建dataWorks空间。
      配置DataWorks空间参数,完成后单击创建项目创建项目其中:
      • 模式:本实践用于操作示例,配置为简单模式。实际使用时可根据情况选择使用简单模式或标准模式。
      • 高级设置:为增强数据安全,如无特别下载数据至本地的需求,建议关闭能下载Select结果,避免数据被下载后转发造成数据安全风险。
    3. 创建MaxCompute项目。
      配置DataWorks空间参数,完成后单击确认创建创建项目-maxcompute其中:
      • 付费模式:可使用默认选择的按量计费模式,若有开通其他模式可按业务需求选择。
      • 访问身份:作为数据分析项目,建议选择任务负责人,即所有成员提交任务都校验成员当前登录的账号权限。
    4. 界面提示创建成功后,单击去列表查看,查看已创建完成的空间。

数据查询

此部分实践操作会以使用MaxCompute公共数据集为例,示例如何通过DataWorks的在线分析服务进行数据查询操作。

MaxCompute的公共数据集中提供了多种公共数据用于验证功能操作,本实践使用2017年电影票房相关信息表(maxcompute_public_data.dwd_product_movie_basic_info和maxcompute_public_data.ods_product_movie_box),统计当年春节档期每日票房排行榜。公开数据集
  • maxcompute_public_data.dwd_product_movie_basic_info:电影基本信息,包含影片名、导演、编剧、主演、影片类型等基础信息。
  • maxcompute_public_data.ods_product_movie_box:电影票房基本信息,包含影片名、当日票房、累计票房等信息。
统计当年春节档期每日票房排行榜时,需关联上述两张表获取信息。操作步骤与示例代码如下。
  1. MaxCompute控制台单击查询编辑,进入DataWorks的数据分析的查询模式页面。
  2. 选择数据源。
    选择MaxCompute数据源类型,工作空间选择环境准备中创建的空间。
  3. 找到公共数据集里的表maxcompute_public_data.dwd_product_movie_basic_info和maxcompute_public_data.ods_product_movie_box,了解数据表的基本内容。
    1. 展开数据集后,鼠标悬浮在字段名称上即可了解各个字段的描述。
    2. 右键数据表,单击数据预览,会随机显示20条数据进行预览。
  4. 在右侧代码编辑框中编辑代码,进行数据查询。
    本实践取2017年1月28日至2月3日作为春节假日档期,查询这期间每日上映的影片票房以及影片关键信息,并将查询结果保存为查询结果表,用于后续在线分析。
    1. 在右侧代码编辑框中编辑查询代码。
      示例代码如下。
      WITH 
          a as(select ds,moviename,sumboxoffice,DENSE_RANK() OVER (PARTITION BY ds ORDER BY CAST(sumboxoffice AS DOUBLE) DESC) AS srank,boxoffice,irank from maxcompute_public_data.ods_product_movie_box WHERE ds>='20170128' and ds<='20170203' ),
          b as (select   movie_name,dirctor,type ,area, actors,movie_language ,ROW_NUMBER() OVER (PARTITION BY movie_name ORDER BY type DESC) AS nums from maxcompute_public_data.dwd_product_movie_basic_info where ds>='20170128' and ds<='20170203' ),
          c as (select b.movie_name,b.dirctor,b.type ,b.area, b.actors,b.movie_language from b where b.nums=1)
          select a.ds as 放映日期,a.moviename as 影片名,a.irank as 当日票房排名,a.boxoffice as 当日票房_万 ,a.srank as 总票房排名,a.sumboxoffice as 总票房_万,c.dirctor as 导演,c.type as 电影类型,c.area as 制片地区,c.actors as 主演,c.movie_language as 影片时长 from a LEFT join c on a.moviename=c.movie_name;
    2. 单击运行图标运行查询代码。
    3. 运行成功后,单击保存查询图标,保存查询代码。
      查询
    4. 单击左上角的模式切换按钮,切换到分析模式后,单击右上角的保存按钮,保存结果表,便于后续分析和分享。
      数据表保存

数据分析与分享

可以通过数据分析的分析模式使用Web Excel进行一些简单的二次分析统计,并直接分享。

  1. 数据分析
    • 查看每日放映的电影当日票房排行榜排行榜
      1. 随机选择结果集中某个单元格,单击筛选和排序功能。
      2. 选择当日票房排名列,右键选择将该列转成数值型以便对排名进行排序。
      3. 先对当日票房排名列进行升序,再对放映日期列进行降序,既可直观查看每日放映的电影当日票房排行榜。
    • 统计整个春节档期放映的影片票房分布,此操作主要用到透视功能。选择需要透视的结果列,单击透视透视
      1. 行维度选择“影片名”,指标选择“当日票房(万)”,并对指标编辑将汇总方式改成 sum。
      2. 选择列表使用饼图进行透视。
    您还可以根据业务需求,对数据进行更多样化的分析统计,所有统计分析结果不要忘记进行保存。
  2. 数据分享。
    保存好的图表可以通过分享功能将分析结果共享给主账号下其他子账号,被分享的子账号可以通过url或提取码访问到该结果表。您可以根据需求指定对方是否可编辑或仅可以查看。分享