ODS、DWD、DWS、DIM、ADS 数据仓库分层

x33g5p2x  于2020-08-11 发布在 Hadoop  
字(0.9k)|赞(0)|评价(0)|浏览(24116)

1.ODS:操作数据层 Operation Data Store

ODS层属于操作数据层,是直接从业务系统采集过来的最原始的数据,包含了所有业务的变更过程,数据粒度也是最细的。
eg:创建启动日志表ods_start_log

2.DWD: 明细数据层 Data Warehouse Detail

数据明细详情,去除空值,脏数据,超过极限范围的明细解析。
是在ODS层基础上,根据业务过程建模出来的实时事实明细层,对于访问日志这种数据,会回流到离线系统供下游使用,最大程度地保证实时和离线数据ODS层和DWD层一致。
对ODS层数据进行清洗(去除空值,脏数据,超过极限范围的数据,行式存储改为列存储,改压缩格式)
eg:

两个临时表: dwd_base_event_log、dwd_base_start_log
建多张表外部表: 以日期分区,dwd_base_event_log在这张表中根据event_name将event_json中的字段通过get_json_object函数一个个解析开来;
DWD层创建基础明细表

明细表用于存储ODS层原始表转换过来的明细数据。

3.DWS:汇总数据层 data warehouse service

服务层--留存-转化-GMV-复购率-日活 、点赞、评论、收藏;
轻度聚合对DWD
订阅明细层数据后,会在实时计算任务中计算各个维度的汇总指标。如果维度是各个垂直业务线通用的,则会放在实时通用汇总层,作为通用的数据模型使用。
目标:统计当日、当周、当月活动的每个设备明细

eg:建表dws_uv_detail_day

4.DIM 公共维度层

实时维表层的数据基本上都是从离线维表层导出来的,抽取到在线系统中供实时应用调用。

5.ADS:应用数据层 Application Data Store

做分析处理同步到RDS数据库里边
个性化维度汇总层,对于不是特别通用的统计维度数据会放在这一层中,这里计算只有自身业务才会关注的维度和指标。
目标:当日、当周、当月活跃设备数 使用 day_count表 join wk_count join mn_count , 把3张表连接一起

eg:建表ads_uv_count表

相关文章