00:00
接下来我们正式开始搭建DW层啊,那我们先看一下DWS层一共有哪些表啊,来一起看一下。这里边呢,包括访客主题款表啊,用户主题款表,商品主题款表,优惠券主题表啊,还有活动主题款表,还有地区主题宽表啊,那其实这里边儿呢,诶,这几个主题宽表呢,是比较常规的啊,那他们正好对应于我们的维度模型当中的一个维度表,对吧?啊而这个访客主题呢,来略显特殊啊,在这儿呢,先简单说明一下啊,这个用户和访客的区别啊,然后有关访客主题表的详细内容呢?诶我们后续再说啊,一般情况下呢,用户啊,特指注册用户啊,那一般是由一个user ID去唯一标识的啊,而访客一般情况下呢,是由设备ID去标识的啊OK,那咱现在呢,就先简单了解这么多就可以了啊,然后剩余的内容我们后续再详细的去说啊啊,那接下来呢,我们先看这个用户主题啊,因为它呢相对来说比较典型。
01:09
啊,访客主题呢,咱们后续再说啊好,我们先看用户主题。老规矩,我们还是先来看一下它的表结构啊,那表结构呢,是不是还是行列分区啊,对吧,那现在我们先看行啊,那这张表它的每行数据指代的是什么呢。大家要注意了,它的每行数据指代的是一个用户啊在某天的汇总行为啊,注意是一个用户在某天的汇总行为啊,OK,这是它的行,那接下来呢,我们再来看它的列,也也就是他的字段对吧。由于这一层呢,咱们都是大宽表,所以字段呢会比较多啊,所以大家看的时候呢,要仔细一点啊,现在我们把这个键盘鱼拿出来。C我们呃放到当中,那接下来们一起来看一下这张表当中的字啊,那我们回忆一下D宽表的字段是如何确定的。
02:02
咱就提到过对吧,那首先这张宽表呢,它的主键是不是就是对应维度的ID啊,对吧,你看啊用户主题,它的主键是不是就有点ID,没错吧?那OK,那接下来我们再继续往下进行啊,那它的其余字段有哪些呢?其余字段咱们前面也说过对吧?啊是什么呀?是维度模型当中啊,与该维度相关的事实表的度量值的聚合值啊OK,那当然聚合值呢,那我们是把一天的记录聚合到一起了。没错吧,OK,那这就是这张表字段确定的逻辑啊好,那现在我们来看一下它具体的字段啊来我们一起看一下啊,那首先主见就是UID哎,这个不用多说啊,那接下来往下看,那第二个字段呢,是login count登录次数啊,虽然我们没有一个呃登录实时表对吧?呃,但是呢,实际上登录也是用户的一个业务行为,那所以在这儿呢,我们也统计了一下啊啊然后大家要注意的是啊,这个登录次数指的是什么?指的是每个用户在某一天总的登录次数。
03:03
没错吧,那其实我们下边的所有的字段呢,都是某个用户在某一天的汇总的统计值,这个一定要注意啊,好,接着往下走,我们看第三一个字段,第三一个呢是card count加入购物车次数,这个当然指的就是诶,某个用户在某一天总的加购物车次数,没错吧?OK,那继续往下进行啊,那下面呢是favor count啊收藏次数啊,再往下呢,是older count下单次数。啊,来,继续往下走,下边儿呢,还有一个older activity count,什么呀,叫做订单参与活动的次数。那什么叫做订单参与活动次数呢?那其实说白了就是啊,参与活动的订单有多少个?好,那我们看下一个啊,下一个呢,是older activity reduce amount,对吧?这个指的是什么呀?指的是订单减免金额啊,当然呢,是参与活动的减免金额,OK,那下一个啊,那下一个是什么呢?是order coupon count,这什么呢?是订单用券次数,那什么叫做订单用券次数呢?那其实说白了就是用券下的订单一共有多少个?OK,那接下来往下走啊,那下边呢,是order coupon reduce amount啊,其实就是订单减免金额,当然指的是使用优惠券减免的金额。
04:20
啊,好,那继续往下进行,那一个是older amount指的什么?指的是订单始金额啊,那最后一个是older amount的统计,对吧?OK,那继续往下走,那下边我们来看两个字段吧,这两个呢,实际上都是与支付相关的计啊,这什么?这是payment,这是payment amount,一个是支付次数,一个是支付金额啊,那我们再继续往下进行,再来看这。这三个字段呢,实际上都是跟refund order相关,也就是跟退单相关的,对吧?那分别是退单次数,退单件数,退单金额啊好,那再继续往下进行啊,我们看这三个字段,Refund payment,这是不是都是与退款相关的呀?对吧?啊,那一个是退款次数,一个是退款件数,一个是退款金额啊好,那再继续往下进行,那下边都是跟谁相关的呢?这其实都是跟优惠券领用相关的,对吧?那这里边儿有优惠券领取次数,有优惠券使用下单次数,那还有优惠券使用支付次数。
05:37
啊,OK,那这就是与优惠券相关的几个统计值啊,然后呢,我们再往下啊,那还有一个与呃P相关的统计对吧?那这都是啥?是不是都是跟评价相关的呀,对吧?那这里边有好评数,中评数,差评数以及默认评价数啊OK,那最后我们还有一个字段啊,最后这个字段是什么呢?是older detail,是不是订单明细统计啊对吧?大家注意观察一下啊,它后边的这个字段类型是什么?
06:04
是不是又是一个复杂的数据类型对吧?在这儿是什么呀?仍然是结构体数组啊,没错吧,那接下来我们就来分析一下啊,这个字段类型为什么是一个结构体数组啊,我们首先先明确一下啊,这个所谓的订单明细统计,你说他统计的应该是什么呀?啊,无非统的就是那这一个人在这一天里边,他一共购买了哪些SKU,对吧?那每个SKU购买了多少次,购买了多少件,哎,花了多少钱,是不是就是这些统计内容啊,对吧?啊OK,那你大家想一想啊,那一个人在一天当中是不是可能会购买多个SKU。没错吧,那所以说在这儿呢,我需要给它来一个数组,那数组当中的每一个元素就是一个结构体,那为什么这个元素要用一个结构体呢?啊,因为你想啊,一个SKU我们是不是有多个统计值啊,对吧?啊,包括购买的次数,包括购买的件数,包括花费的金额啊,没错吧?所以说需要用一个结构体去保存一个SKU的统计值啊好,那接下来我们看一下这里边具体的统计值都有哪些啊,我们看一下这个结构体的字就可以了,首先第一个字段是SD,那下来呢,S一个coupon reduce amount,这是啥呀?这肯定就是用券优惠的金额,没错吧,继续往下进行,那这儿还有一个original amount,这个指的是原价,对吧?那这个呢是。
07:43
Final当是字吧啊,而且大部分的字段呢,都是统计日啊好,那现在我们把字段看完了之后呢,我们再看最后一点,也就是这个表的分区规划啊,实际上它的分区规划相对来说比较简单,那就是按天分区啊,一天一个分区啊,关键是每天的分区里存放的是什么数据啊,它的每天的分区当中呢,存放的是当天的活跃用户的汇总行为。
08:18
啊,注意啊,只包含当天的活跃用户啊,如果这个人他今天没有登录,没有做任何的操作,OK,那当天的分区里边是不会包含他的行为的,OK,那这就是用户主体表的分区规划,那最后呢,我们再来看一下它的存储吧,来往檄翻啊,那它的数据存储格式呢,与我们前面讲到的D层DWD层都都是一样的啊,那也是什么,也是盘列存储加上拉压缩啊,包括我们后边要讲的DWT层,它的存储格式也是这样的啊好,那这张表的表结构我们就讲完了。
我来说两句