自下而上、自上而下
ods>>>dwd:自下而上,以业务过程为驱动
app>>>dwt>>>dws:自上而下,以需求为驱动
ods(operation data store 原始数据层)
- 存储格式:LZOP
- 作用:保存原始业务数据
- ETL过程:
- 按照各种算法(全量覆盖保存、全量分区保存(快照)、增量分区保存)抽取。
- 直接加载原始数据。不做清洗转换与业务系统数据模型保持一致、按主题逻辑划分
- 命名规则:
详见【规范一文】
dwd(data warehouse detail 数据明细层)
- 存储格式:parquet + LZOP
- 作用:提供最小粒度数据
- ETL过程:
- 分主题解析json成多表
- 维度表处理
- 事实表处理
- 清洗转换
- 字段命名规范:字段的同名异义或异名同义
- 维度转代理键 就是维度表必须有主键的意思
- 维度退化
- 隐私数据加密
- 字段合并
- 空值处理:0或其他填充
- 脏数据超极限范围数据处理
- IP清洗转换
- 单位统一
- 枚举值统一
- 命名规则:
详见【规范一文】
dws(data warehouse service 数据服务层)
- 存储格式:parquet + LZOP
- 作用:提供按天汇总数据
- ETL过程:汇总处理
- 命名规则:
详见【规范一文
dwt(data warehouse topic 数据主题层)
- 存储格式:parquet + LZOP
- 作用:
- 提供主题汇总数据,一行数据代表累计的行为
- 进一步维度退化,尽可能多的维度group by
- ETL过程:宽表处理
- 命名规则:
详见【规范一文】
app(application data store 数据展示层)
- 存储格式:parquet + LZOP
- 作用:报表展现
- ETL过程:根据业务需求处理
- 命名规则:
详见【规范一文】
buffer
- 作用:存储中间表,数据能删-表结构不能删
- 命名规则:
详见【规范一文】
tmp
- 作用:存储临时表,数据和表结构都能删
- 命名规则:
详见【规范一文】
主题域
层次调用规范
- 层次调用规范
- 禁止反向调用
- ODS 只能被 DWD 调用。
- DWD 可以被 DWS 和 ADS 调用。
- DWS 只能被 ADS 调用。
- 数据应用可以调用 DWD、DWS、ADS,但建议优先考虑使用汇总度高的数据。
- ODS->DWD->DWS>ADS
- ODS->DWD->ADS
