一、数仓的意义
- 为什么要有数据仓库
说起数据仓库存在的意义就必须得说企业面临的数据问题。
结构复杂
数据脏乱
理解困难
缺少历史
总结一句话就是:多源异构、脏乱差的数据现象。
- 数据仓库的价值体现
效果
诊断
预警
二、数据体系
- 数据体系构成
- 常见技术架构
偏离线:适用于业务初期,迅速形成数仓雏形,快速交付满足业务
离线+实时:适合业务中后期,形成扩展性极强的技术架构
偏实时:适合特殊业务,例如:广告、风控
三、数仓分层
- 数仓分层&主题
数据缓冲层:数据暂存区,只保留每天的增量数据
数据明细层:全量数据区,采用全量表、快照表、拉链表等保存全量数据,并做基础数据的归一化处理和模型的拆解、合并,多采用ER建模
数据衍生层:数据聚合区,多用于轻度汇总以及衍生计算,产出标准化数据,屏蔽上游业务变更对下游的影响。
数据集市层:数据集成区,基于角色+场景构建场景化数据模型。
数据应用层:数据交付区,提供数据服务以及数据产品的数据。 - 建模流派的对比
ER模型
规范性较好,冗余小,数据集成和数据一致性方面得到重视,适用于较为大型的企业级数据规划,但缺点是业务形态需要较为稳定,且需要全面了解企业业务、数据和关系,对于建模人员要求很高,实施周期非常长。具有代表性的就是TD的FS-LDM模型。
维度建模
相对能快速上手,快速交付,但缺点是冗余会较多。具有普适性,适合业务形态不太稳定的阶段。 - 数据管理的挑战
命名规范&口径管理
命名规范
词根的设计,主谓宾、定状补
表命名
字段命名
3.1口径管理
新客数:交易新客、流量新客
规范口径定义流程
记录常规口径
口径增删改的检测机制(语义分析)
推广口径
3.2 数据质量
质量监控大盘
事前
规范
测试
事后
数据监控
异常值
指标
同环比
方差、标准差
时间序列