介绍DataWorks快速构建数仓并应用到业务上的实例

本文涉及的产品
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
DataWorks Serverless资源组免费试用套餐,300CU*H 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 用实例介绍使用dataworks快速创建数仓

/09/05﷽﷽﷽﷽﷽﷽﷽署析电影题材,故事,工任联表,电影与工示例说明

实验背景:

本实验基于五年好莱坞电影数据,了解通过 DataWorks 操作 MaxCompute 来构建数据仓库,ETL清洗数据,并同步数据给应用数据库,完成从数据到线上应用的过程。

使用工具:

大数据计算服务(MaxCompute)+ 大数据开发(DataWorks)

 

实验数据:

基于2007-2011年五年间的好莱坞电影数据,分析电影题材,故事,工作室与电影之间的关系

 

数据准备:

样例数据:

使用2007-2012年5年的好莱坞电影数据

字段名称            

字段说明

film                   

电影名称

major_studio         

主要工作室

rotten_tomatoes       

 烂蕃茄评分

audience_score

观众评分

story

故事

genre

体裁

week_theatres_num    

上映场数

week_boxOffice_avf  

 每周平均票房

domestic_gross_m

国内票房

foreign_gross_m

国外票房

worldwide_gross_m

世界票房

budget

预算

market_profitability

市场占有率

opening_weekend

上映周数

oscar

奥斯卡

bafta

英国电影学院奖

sourec 

来源,全是 the_numbs.com

domestic_gross

国内票房

foreign_gross

国外票房

worldwide_gross

世界票房

budget

预算

 

实验步骤:

前期准备

创建项目

进入项目列表,点击创建项目,选择服务项目,配置基本信息

21eb820481caf02ef99b905ba894e0dfa8aa0f27

79f80bf040685a7a238d3a540386deb91922ab3030e092ef81ca579565aa876e3a4fa3fb08f8f58b


进入工作区

在任务列表或DataWorks控制台首页点击进入工作区

 56ad5fffccfb2fb2227c1a8c44829b911b5e4834

 

 818568fa34f8b4ed8c513ff13275dda42a78e476

数据ETL

建表

     按年分区建一张原始数据表,用于存储已准备好的好莱坞电影数据

1. 可以在数据管理的数据表管理里面新建(可视化建表)

a54ba496c51f8094abadad99e3fecfb7fd7c7dcc

2.可以在数据开发区使用建表语句建表

3c5e01bbd769fcab1a3e5b6bae435ef49987498d

 

建表语句:

CREATE TABLE ods_hollywood_movie_data_dd (

film STRING COMMENT '电影名称',

major_studio STRING COMMENT '主要工作室',

rotten_tomatoes STRING COMMENT '烂蕃茄网',

audience_score STRING COMMENT '观众评分',

story STRING COMMENT '故事',

genre STRING COMMENT '体裁',

week_theatres_num STRING COMMENT '周上印场数',

week_boxoffice_avf STRING COMMENT '周平均票房',

domestic_gross_m STRING COMMENT '国内总票房',

foreign_gross_m STRING COMMENT '国外总票房',

worldwide_gross_m STRING COMMENT '世界总票房',

budget_m STRING COMMENT '预算',

market_profitability STRING COMMENT '市场盈利能力',

opening_weekend STRING COMMENT '上印周数',

oscar STRING COMMENT '奥斯卡',

bafta STRING COMMENT '英国电影学院奖',

source STRING COMMENT '来源',

domestic_gross STRING COMMENT '国内总票房',

foreign_gross STRING COMMENT '外票总票房',

worldwide_gross STRING COMMENT '世界总票房',

budget STRING COMMENT '预算'

)

COMMENT '电影初始采集数据'

PARTITIONED BY (

yy BIGINT COMMENT '年份'

)

LIFECYCLE 100000;

 

导入本地数据

按分区将准备好的2007-2011年5年的数据分别导入对应的分区

1.         在数据开发区域-点击导入-选择导入本地数据

211b4cf64e6778b3b9cbc8bc61aff8bb55575a3c

2.         选择本地文件-配置文件格式等信息

bbea6bb98cd969c9e7233924fc7e5760ad9a2380

3.         选择建好的表-指定分区,并做好数据内容与字段的映射

分区检测是否已有数据,如果已有,先把分区删除,导入自动追加而不是覆盖

8abf22b59bbcf387975b39d7fdff224cc1d42739

4.         导入数据,导入成功右上角提示导入成功

 

创建脚本清洗数据

1.     创建脚本

新建一张dwd表用于存储处理特殊格式后的数据

数据开发区-新建脚本文件-输入文件名-确定

a180d24be0766b80e7ef157cde264a232c816a77

2.     编写脚本

主要处理部分金额数值为?/??的数据,都清洗成0,部分金额数值中带了$符号,统一去除。

 

3.     运行脚本

脚本中带有分区参数,运行时需要填上参数,点脚本上方运行

24668838e4a31e99a07fd647a61cc32ffd2364f1

按业务需求处理数据

多原始表中清洗出 电影信息表,电影与体裁的关联表,电影与获奖奖项的关联表,电影与故事情节的关联表,电影与工作室的关联表

新建任务-因为数据是预先获取,所以选择手动任务,如果是周期数据可以选择周期高度,按流程依赖执行

 f1a0664e4b70d4fbd4ab204b934790e34410bfab

编写脚本

编写业务逻辑sql,创建业务表并从原始表中提取相关的数据

30f153f513c5ef00eb468090fe69594624b5b3a9

运行任务

脚本上方有测试运行

切换到运维页面-手动任务-运行

 ca88075c5f657067c108f3874465596caaf7c35f

 4f339c930c908fc87a5739267f80adf7f8c921e3

 

执行完成后,数据处理完成,可以将数据同步到业务平台进行分析。

数据同步

新建数据源

数据集成-数据源-新建数据源

按提示输入数据源信息,注意添加白名单


 c5605220b42ff3499e337ca4c859b1dbed75aa3f

同步任务创建

数据集成-同步任务-选择向导模式-按流程步骤填写

选择源数据-odps及表名

d5bc81f1b0d5d1ec3fc2d9bafe177f459cde83fa

 

 

 1530c8ff239db13f3e64c0421785083aeec6b1d3

 

选择目标数据源-表名

 b3ddda0ab9bc0cfa00f0777ac2d875851b05f7bc

字段映射

d962c70662f2ab7c98a7395fae101e46bc5bba44

 

配置资源并发数等

cf27c61e46392a9b3405dd7a64127b20b98bebdb

保存同步任务

c1377aabe0bdb843a5f6c8bd3da8c04a97343d46

938efadc902e0f11061eb13c79645f232e6c692d

运行同步任务

df4a35838a36c36789493e24c014eae8b458decd

 

查看日志-同步完成

aa8b72f3d898c130b1b0f391d7b5c57debe7c91c

 

业务效果

数据同步到业务数据库后,配置相应信息,业务的展示效果如下

27c1801c44e44ae9736e3835ed607666fbc7b1d5

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
28天前
|
存储 运维 搜索推荐
实时数仓Hologres发展问题之Hologres在无人车送货场景中的应用如何解决
实时数仓Hologres发展问题之Hologres在无人车送货场景中的应用如何解决
33 2
|
25天前
|
数据采集 DataWorks 数据挖掘
提升数据分析效率:DataWorks在企业级数据治理中的应用
【8月更文第25天】本文将探讨阿里巴巴云的DataWorks平台如何通过建立统一的数据标准、规范以及实现数据质量监控和元数据管理来提高企业的数据分析效率。我们将通过具体的案例研究和技术实践来展示DataWorks如何简化数据处理流程,减少成本,并加速业务决策。
148 54
|
25天前
|
SQL 分布式计算 DataWorks
利用DataWorks构建高效数据管道
【8月更文第25天】本文将详细介绍如何使用阿里云 DataWorks 的数据集成服务来高效地收集、清洗、转换和加载数据。我们将通过实际的代码示例和最佳实践来展示如何快速构建 ETL 流程,并确保数据管道的稳定性和可靠性。
142 56
|
25天前
|
数据采集 存储 分布式计算
构建智能数据湖:DataWorks助力企业实现数据驱动转型
【8月更文第25天】本文将详细介绍如何利用阿里巴巴云的DataWorks平台构建一个智能、灵活、可扩展的数据湖存储体系,以帮助企业实现数据驱动的业务转型。我们将通过具体的案例和技术实践来展示DataWorks如何集成各种数据源,并通过数据湖进行高级分析和挖掘,最终基于数据洞察驱动业务增长和创新。
156 53
|
2月前
|
SQL 关系型数据库 MySQL
如何在Dataphin中构建Flink+Paimon流式湖仓方案
当前大数据处理工业界非常重要的一个大趋势是一体化,尤其是湖仓一体架构。与过去分散的数据仓库和数据湖不同,湖仓一体架构通过将数据存储和处理融为一体,不仅提升了数据访问速度和处理效率,还简化了数据管理流程,降低了资源成本。企业可以更轻松地实现数据治理和分析,从而快速决策。paimon是国内开源的,也是最年轻的成员。 本文主要演示如何在 Dataphin 产品中构建 Flink+Paimon 的流式湖仓方案。
7476 8
如何在Dataphin中构建Flink+Paimon流式湖仓方案
|
1月前
|
SQL DataWorks 安全
DataWorks产品使用合集之调度资源组与集成资源内部的实例如何进行共用
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
1月前
|
DataWorks 安全 定位技术
DataWorks产品使用合集之怎么批量获取数据地图的实例id
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
24天前
|
SQL 监控 大数据
Serverless 应用的监控与调试问题之Flink流式数仓对于工商银行的数据链路要如何简化
Serverless 应用的监控与调试问题之Flink流式数仓对于工商银行的数据链路要如何简化
|
24天前
|
消息中间件 监控 关系型数据库
Serverless 应用的监控与调试问题之实时离线数仓一体化常用的解决方案有什么问题
Serverless 应用的监控与调试问题之实时离线数仓一体化常用的解决方案有什么问题
|
30天前
|
存储 缓存 容器
实时数仓Hologres构建效率问题之瘦身如何解决
提升构建效率的原则首重准确性,在确保无误的基础上优化流程。应用瘦身通过精简依赖减轻构建负担。分层构建利用底层共享减少重复工作。构建缓存存储以往结果,避免重复工序,显著提速。这些策略共同作用,有效提高构建效率与质量。
28 0

热门文章

最新文章