1.DMP数据基本流程
2.数据仓库的ODS、DW和DM概念
3.DW层次划分
- ODS层:把来源于其他系统的数据几乎无处理地存放在数据仓库中。主要功能:
数据同步:结构化数据增量或全量同步到数据计算平台;
结构化:非结构化(日志)结构化处理并存储到数据计算平台;
累积历史、清洗:根据数据业务需求及稽核和审计要求保存历史数据、数据清洗;
- DWS:轻度汇总层,从ODS层中对用户的行为做一个初步的汇总,抽象出来一些通用的维度:时间、ip、id,并根据这些维度做一些统计值,比如用户每个时间段在不同登录ip购买的商品数等。这里做一层轻度的汇总会让计算更加的高效,在此基础上如果计算仅7天、30天、90天的行为的话会快很多。
- DWD:这一层主要解决一些数据质量问题和数据的完整度问题。比如用户的资料信息来自于很多不同表,而且经常出现延迟丢数据等问题,为了方便各个使用方更好的使用数据,我们可以在这一层做一个屏蔽。(dwd 主要是对 ods 层做一些数据清洗和规范化的操作,站在一个理想的角度来讲,如果 ods 层的数据就非常规整,基本能满足我们绝大部分的需求,这当然是好的,这时候 dwd 层其实也没太大必要。 但是现实中接触的情况是 ods 层的数据很难保证质量,毕竟数据的来源多种多样,推送方也会有自己的推送逻辑,在这种情况下,我们就需要通过额外的一层 dwd 来屏蔽一些底层的差异。)
- DIM:这一层比较单纯,举个例子就明白,比如国家代码和国家名、地理位置、中文名、国旗图片等信息就存在DIM层中。
4.创建维度表和事实表
创建维度表主要步骤
- 确认粒度
维度表的粒度就是表的业务主键,根据业务主键来判断记录的唯一性。
- 选择代理键生成器
ETL工具和数据库都有设置字段自增长的功能。
- 选择维度表类型
根据业务系统的实际情况选择合适的维度表类型,一般采用缓慢变化维类型1和类型2。
- 增量加载维度数据