当前位置: 首页 > article >正文

Hadoop实战-电商离线数仓学习笔记4.0

数据仓库建模方法
1-ER模型
根据实体关系建模,满足三范式规范
2-维度建模
区分事实表和维度表,事实对应业务过程,维度对应业务过程发生时所处的环境,事实是不可拆分的
对于缓慢变化的维度可以用拉链表存储
通过对开始日期和结束日期做约束,可以得到某时间点的全部数据切片
在这里插入图片描述
构建业务总线矩阵
在这里插入图片描述
在这里插入图片描述
ODS层建的表-业务表
日志表,活动信息表(全量),活动规则表(全量),品类表(全量),省份表(全量),品牌表(全量),优惠券表(全量)
购物车表(增量),评论表(增量),收藏表(增量),订单明细表(增量),支付表(增量),退款表(增量),用户表(增量)
PARTITIONED BY (dt STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’
DIM层建的表-维度表
商品维度表,优惠券维度表,活动维度表,地区维度表,日期维度表,用户维度表
DWD层建的表-事实表
交易域加购事实表,交易域下单事务事实表,交易域支付成功事实表,
DWS层建的表-汇总表
用户粒度最近n日订单汇总表, 访客页面粒度浏览量n日汇总表

ADS层

流量主题-最近1-3-7天访客数表
在这里插入图片描述

补充知识-侧写➕炸裂
EXPLODE 函数 是Hive 中的一种用户定义的表函数(UDTF),用于将数组或映射结构中的复杂的数据结构每个元素拆分为单独的行。这在处理复杂数据时非常有用,尤其是在需要将嵌套数据“打散”以便更好地分析时。
在这里插入图片描述

SELECT user_id, preference
FROM users
LATERAL VIEW explode(preferences) exploded_table AS preference;

在这里插入图片描述
LATERAL VIEW 允许我们将 UDTF 的输出与原始表中每一行的数据连接在一起,这样就可以在查询中灵活地处理嵌套数据。
在这里插入图片描述

SELECT word, COUNT(*) AS frequency
FROM comments
LATERAL VIEW explode(split(comment, ' ')) exploded_words AS word
GROUP BY word;

在这里插入图片描述
用户留存率
在这里插入图片描述
用户7日内连续三天下单用户
在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/520000.html

相关文章:

  • PyTorch中的movedim、transpose与permute
  • .NET Core跨域
  • STM32完全学习——RT-thread在STM32F407上移植
  • 99.17 金融难点通俗解释:归母净利润
  • 2.1.3 第一个工程,点灯!
  • 虚拟头节点和双指针解决链表问题(合并,与分解操作,力扣题目为例)
  • 基于马尔可夫链和多属性决策方法的物联网生态系统信任评分预测与管理
  • 【Git版本控制器--3】Git的远程操作
  • 【Linux】OS、进程PCB、状态、进程的切换和调度,深入理解虚拟地址空间
  • 《P1208 [USACO1.3] 混合牛奶 Mixing Milk》
  • ADC和DMA原理
  • 如何优化深度学习模型来提高错别字检测准确率?
  • 如何在Python中进行数据分析?
  • JavaSE【学习笔记】
  • linux日志排查相关命令
  • 转换算术表达式
  • 2025年01月24日Github流行趋势
  • 为AI聊天工具添加一个知识系统 之63 详细设计 之4:AI操作系统 之2 智能合约
  • CLion开发Qt桌面
  • MySQL 基础学习(1):数据类型与操作数据库和数据表
  • Matlab实现TCN-LSTM时间卷积神经网络结合长短期记忆神经网络多特征分类预测(附模型研究报告)
  • gradle创建springboot单项目和多模块项目
  • C++实现设计模式---命令模式 (Command)
  • 系统架构设计中的性能优化策略
  • Python3 正则表达式:文本处理的魔法工具
  • 【2024年华为OD机试】(C卷,100分)- 最大矩阵和 (JavaScriptJava PythonC/C++)