助力工业物联网,工业大数据之数仓维度层DWS层构建【十二】

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 助力工业物联网,工业大数据之数仓维度层DWS层构建【十二】

数仓维度层DWS层构建

01:项目回顾

  1. ODS层与DWD层的功能与区别是什么?
  • ODS:原始数据层
  • 存储格式:AVRO
  • 数据内容:基本与原始数据是一致的
  • DWD:明细数据层
  • 存储格式:Orc
  • 数据内容:基于与ODS层是一致的
  1. ODS层的需求是什么?
  • 自动化建库建表
  • 建表
create table one_make_ods.表名
tableproperties(schema文件)
  • 表名
  • 表的注释
  • 表对应的HDFS地址
  • Schema文件的地址
  1. DWD层的需求是什么?
  • 自动化建库建表
  • 建表
create table one_make_dwd.表名(
  字段信息
)
location
  • 表名
  • 表的注释
  • 表对应的HDFS地址
  • 字段信息
  1. 怎么获取表的Schema信息?
  • 表的注释、Schema信息
  • ODS:Oracle中获取表的注释、Schema文件从Sqoop生成的
  • DWD:Oracle中获取表的信息
  • TableMeta:表名,表的注释,列的信息:List
  • ColumnMeta:列名、列的注释、列的类型、长度、精度
  1. 如何使用Python构建Oracle和Hive的连接?
  • Oracle:cx_Oracle
  • conn(host,port,user,passwd,sid)
  • Hive/SparkSQL:pyHive
  • SparkSQL用法
  • 编程方式:python文件 | jar包
  • 流程
  • step1:SparkSession
  • step2:读取数据源
  • step3:处理
  • 注册视图
  • spark.sql(“”)
  • spark-submit
  • 优点:灵活
  • 场景:DSL
  • 提交SQL:ThriftServer
  • 场景:SQL,调度开发
  • 流程
  • JDBC | PyHive | Beeline:代码中开发
  • spark-sql -f xxxx.sql:SQL文件的运行
  1. 如果实现SQL语句的执行?
  • 服务端地址:主机名 + 端口
  • 用户名和密码
  • step2:基于这个连接构建一个游标
  • step3:通过游标来执行SQL语句:execute(String:SQL)
  • step4:释放资源
  1. 集中问题
  • 连接构建不上
  • 映射不对:spark.bigdata.cn:Can not Connect[46.xxx.xxxx.xx,10001]
  • 修改host文件
  • 修改config.txt:node1
  • 服务端问题:spark.bigdata.cn:Can not Connect[192.168.88.100,10001]
  • Spark的TriftServer没有启动
  • 启动完成先用dg或者beeline先测试一下
  • ThriftServer:依赖于MetaStore + YARN
  • 检查YARN:本质就是一个Spark程序:实时程序,不停止的
  • Oracle:cx_Oracle + 本地客户端:D:\instantclient_12_2
  • 安装
  • Python版本:Python 3.7.4
  • 命令sasl

02:项目目标

  1. 回顾维度建模
  • 建模流程:划分主题域和主题
  • 维度设计:构建维度矩阵
  • 维度模型:雪花模型、星型模式
  1. 项目中的建模流程和维度设计
  • 划分了哪些主题域,每个主题域有哪些主题?
  • 每个主题基于哪些维度进行分析?
  1. 维度层构建
  • 时间维度
  • 地区维度
  • 油站维度
  • 服务网点维度
  • 组织机构维度
  • 仓库维度
  • 物流维度

03:维度建模回顾:建模流程

  • 目标掌握维度建模的建模流程
  • 实施
  • step1-需求调研:业务调研和数据调研
  • 了解整个业务实现的过程
  • 收集所有数据使用人员对于数据的需求
  • 整理所有数据来源
  • step2-划分主题域:面向业务将业务划分主题域及主题
  • 用户域、店铺域
  • 商品域、交易域、
  • 客服域、信用风控域、采购分销域
  • step3-构建维度总线矩阵:明确每个业务主题对应的维度关系
  • step4-明确指标统计:明确所有原生指标与衍生指标
  • 原生指标:基于某一业务事件行为下的度量,是业务定义中不可再拆分的指标,如支付总金额
  • 衍生指标:基于原子指标添加了维度:近7天的支付总金额等
  • step5-定义事实与维度规范
  • 命名规范、类型规范、设计规范等
  • step6-代码开发
  • 实现具体的代码开发
  • 只要知道指标的计算方式,基于维度分组计算指标
  • 小结
  • 掌握维度建模的建模流程

04:维度建模回顾:维度设计

  • 目标掌握维度建模中维度的设计
  • 实施
  • 功能:基于组合维度来更加细化我们的指标,来更加精确的发现问题
  • 指标如果不基于组合维度进行分析得到,指标的结果是没有意义的
  • 实现:开发中维度就是指标聚合时的分组字段
  • 特点
  • 数据量小
  • 很少发生变化
  • 采集方式:全量
  • 常见维度
  • 时间维度:年、季度、月、周、天、小时
  • 地区维度:国家、省份、城市
  • 平台维度:网站、APP、小程序、H5
  • 操作系统维度:Windows、Mac OS、Android、Linux、IOS
  • ……
  • 小结
  • 掌握维度建模中维度的设计

05:维度建模回顾:维度模型

  • 目标掌握维度设计的常用模型
  • 路径
  • step1:雪花模型
  • step2:星型模型
  • step3:星座模型
  • 实施
  • 雪花模型
  • 设计:部分维度通过其他维度间接关联事实表
  • 优点:避免数据的冗余
  • 缺点:关联层次比较多,数据大的情况下,底层层层Join,查询数据性能降低

  • 星型模型
  • 设计:所有维度表直接关联事实表
  • 优点:每次查询时候,直接获取对应的数据结果,不用关联其他的维度子表,可以提高性能
  • 缺点:数据冗余度相比雪花模型较高

  • 星座模型
  • 星座模型:基于星型模型的演变,多个事实共同使用一个维度表

  • 小结
  • 掌握维度设计的常用模型


相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
2月前
|
机器学习/深度学习 算法 大数据
构建数据中台,为什么“湖仓一体”成了大厂标配?
在大数据时代,数据湖与数据仓库各具优势,但单一架构难以应对复杂业务需求。湖仓一体通过融合数据湖的灵活性与数据仓的规范性,实现数据分层治理、统一调度,既能承载海量多源数据,又能支撑高效分析决策,成为企业构建数据中台、推动智能化转型的关键路径。
|
6月前
|
人工智能 关系型数据库 OLAP
光云科技 X AnalyticDB:构建 AI 时代下的云原生企业级数仓
AnalyticDB承载了光云海量数据的实时在线分析,为各个业务线的商家提供了丝滑的数据服务,实时物化视图、租户资源隔离、冷热分离等企业级特性,很好的解决了SaaS场景下的业务痛点,也平衡了成本。同时也基于通义+AnalyticDB研发了企业级智能客服、智能导购等行业解决方案,借助大模型和云计算为商家赋能。
436 17
|
3月前
|
分布式计算 Serverless OLAP
实时数仓Hologres V3.1版本发布,Serverless型实例从零开始构建OLAP系统
Hologres推出Serverless型实例,支持按需计费、无需独享资源,适合新业务探索分析。高性能查询内表及MaxCompute/OSS外表,弹性扩展至512CU,性能媲美主流开源产品。新增Dynamic Table升级、直读架构优化及ChatBI解决方案,助力高效数据分析。
实时数仓Hologres V3.1版本发布,Serverless型实例从零开始构建OLAP系统
|
3月前
|
存储 SQL 分布式计算
MaxCompute x 聚水潭:基于近实时数仓解决方案构建统一增全量一体化数据链路
聚水潭作为中国领先的电商SaaS ERP服务商,致力于为88,400+客户提供全链路数字化解决方案。其核心ERP产品助力企业实现数据驱动的智能决策。为应对业务扩展带来的数据处理挑战,聚水潭采用MaxCompute近实时数仓Delta Table方案,有效提升数据新鲜度和计算效率,提效比例超200%,资源消耗显著降低。未来,聚水潭将进一步优化数据链路,结合MaxQA实现实时分析,赋能商家快速响应市场变化。
143 0
|
8月前
|
存储 分布式计算 物联网
美的楼宇科技基于阿里云 EMR Serverless Spark 构建 LakeHouse 湖仓数据平台
美的楼宇科技基于阿里云 EMR Serverless Spark 建设 IoT 数据平台,实现了数据与 AI 技术的有效融合,解决了美的楼宇科技设备数据量庞大且持续增长、数据半结构化、数据价值缺乏深度挖掘的痛点问题。并结合 EMR Serverless StarRocks 搭建了 Lakehouse 平台,最终实现不同场景下整体性能提升50%以上,同时综合成本下降30%。
616 58
|
8月前
|
SQL 存储 HIVE
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
本文整理自鹰角网络大数据开发工程师朱正军在Flink Forward Asia 2024上的分享,主要涵盖四个方面:鹰角数据平台架构、数据湖选型、湖仓一体建设及未来展望。文章详细介绍了鹰角如何构建基于Paimon的数据湖,解决了Hudi入湖的痛点,并通过Trino引擎和Ranger权限管理实现高效的数据查询与管控。此外,还探讨了湖仓一体平台的落地效果及未来技术发展方向,包括Trino与Paimon的集成增强、StarRocks的应用以及Paimon全面替换Hive的计划。
719 1
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
|
9月前
|
SQL 监控 关系型数据库
用友畅捷通在Flink上构建实时数仓、挑战与最佳实践
本文整理自用友畅捷通数据架构师王龙强在FFA2024上的分享,介绍了公司在Flink上构建实时数仓的经验。内容涵盖业务背景、数仓建设、当前挑战、最佳实践和未来展望。随着数据量增长,公司面临数据库性能瓶颈及实时数据处理需求,通过引入Flink技术逐步解决了数据同步、链路稳定性和表结构差异等问题,并计划在未来进一步优化链路稳定性、探索湖仓一体架构以及结合AI技术推进数据资源高效利用。
656 25
用友畅捷通在Flink上构建实时数仓、挑战与最佳实践
|
9月前
|
存储 人工智能 分布式计算
湖仓实时化升级 :Uniflow 构建流批一体实时湖仓
本文整理自阿里云产品经理李昊哲在Flink Forward Asia 2024流批一体专场的分享,涵盖实时湖仓发展趋势、基于Flink搭建流批一体实时湖仓及Materialized Table优化三方面。首先探讨了实时湖仓的发展趋势和背景,特别是阿里云在该领域的领导地位。接着介绍了Uniflow解决方案,通过Flink CDC、Paimon存储等技术实现低成本、高性能的流批一体处理。最后,重点讲解了Materialized Table如何简化用户操作,提升数据查询和补数体验,助力企业高效应对不同业务需求。
806 18
湖仓实时化升级 :Uniflow 构建流批一体实时湖仓
|
7月前
|
SQL 存储 HIVE
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
406 2

热门文章

最新文章