1:dwd的核心来源表怎么选出来的?

根据用户主题域的核心业务流程,可知该流程数据主要来自于 1:用户登录表 , 2,用户行为日志表 , 3.商品表
2:dwd表的字段怎么选出来的?

根据选择的最细粒度,建设不同的dwd表。对应粒度的dwd表,筛选过滤掉ods表中无实际业务含义的字段。做数据清洗和数据处理。

分多种情况。

事务事实表:最原子的事实表。只需要筛选过滤掉无实际业务含义的ods表字段,做数据清洗和格式处理。

周期快照表:需要对ods表的数据按照周期进行数据聚合,按周期进行分区存储数据

累计快照表:需要对ods表的数据按照累计字段进行数据聚合。数据全量存储,或者每天保存一个分区,记录当日最全累计快照数据


3:dim的维度表,一张维度表只能是一个维度方向的数据构成的吗?比如时间维度,地域维度,会员维度 等。 时间、地域、会员 三种维度能否放在一起设计成一张维度表呢?


4:dws表的字段构成,1:使用dwd事实表,把各种上卷汇聚的情况考虑全,生成dws表吗?多张dwd关联的情况如何思考? 2:根据ads表的指标需求拆分出dws层的表字段,然后把各种拆出的字段归纳汇总成相同维度汇聚程度的dws表吗? 如果归纳后的结果是高度汇聚的dws表,即重度汇聚表,是否需要再下钻出来轻度dws汇聚表。比如根据用户、时间的重度汇聚dws表,拆出来根据 用户、时间、地区的轻度汇聚表

在无明确ads表指标需求时,根据dwd事实表的可用维度,考虑各种上卷情况,设计不同的dws汇聚表

然后根据ads层表的实际需求。筛选出能实现需求的dws维度聚合表。根据相应维度上卷,计算出可以得到的所有指标,以防后续新增ads层指标,导致重新修改dws表结构

dws设计时是不是应该先直接把所有维度全部group by 一下拿到最轻汇总表。之后在这张表的基础上做重度汇聚?


5:是否应该在拿到dws表维度汇聚程度的第一时间,考虑到该维度汇聚程度下的所有可汇聚dws汇聚值?以防后续ads新增需求,需要重新修改dws表的结构

是的

6:维度表的字段,如果ods层无相应数据,应该自己生成吗?比如时间维度表,是否需要自行加上节日,工作日,第几周等信息。业务系统中明显是无该数据的。

作者 张, 宴银

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注