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