数据仓库模型
星型和雪花,基于多张实体表,共享维度信息、星型效率高有冗余、企业倾向于使用星型模型。
雪花模型(遵循3NF,灵活):事实表+维度表。星座由星型扩展而来。
数据仓库分层
ODS(原始),DWD(明细,清洗),DWS(服务,轻度汇总),DWM(中间层),ADS(应用,报表)
为什么要分层?
1.问题简单化,每一层处理单一的步骤
2.通过中间层可以提高结果的复用性
3.真实数据和统计数据做到解耦
常用自定义函数
UDF(1对1)、 UDTF(1对多)、 UDAF(多对1)
collect_set()把多行聚合成一个集合,带去重功能
常见的表类型
实体表:业务 对象,如:用户 商品
维度表:业务,如商品分类
事务型事实表:如 交易流水日志,一旦发生不会变化
周期型事实表:如:订单,请假,随着业务的发生不断变化(新增、变化、拉链表)
拉链表:对新增和变化做定期合并,拉链表记录每条信息的生命周期,使用拉链表解决hive不能更新的问题
术语解释
GMV 一定时间内的交易总额