00:00
来,那咱们现在呢,就进入到了这个呃,DWD啊这一层了啊呃,那前面咱们已经这个逐层分析过了啊DWD我们主要干什么。啊,咱们分两部分去说啊,两部分那一部分呢,是对我们的日志进行解析啊,进行解析,那还有一部分呢,是对我们的业务数据进行维度建模啊,维度建模啊,其实啊,虽然我们并没有对日志数据进行所谓的维度建模。对不对,但其实我们一会儿把这个日志解析出来之后呢。我们也可以给他啊,给他往那个维度模型上面靠一靠,就是咱们可以去讨论讨论啊,那我这个日志表解析完之后,它应该是属于一张事实表还是属于一张维度表啊,一会儿咱们可以把这个问题去考虑考虑,去探讨探讨啊啊那咱们现在呢,先做我们的第一部分,就是对日志进行解析啊,至于维度建模呢,咱们,哎,后边再说啊,先解析日志,OK,那咱们现在要解析日志了,所以说在解释日志前呢,我们还是需要先对日志的结构是不是进行一个简单的回顾啊,当然这个咱们已经带着大家过一遍了啊,那这块呢,我们再快速的过一下啊,再快速过一下。
01:14
因为你要想解析日志,那必须对日志的结构非常熟悉才行啊,要不然解析不明白啊啊,那接下来我们回顾一下这个日志啊呃,那前面咱们都讲过啊,我们日志如果说按照内容去划分的话,我们可以有五类日志对吧?五类哪哪五类啊,一类是页面数据,一类是什么数据来着啊,操作或者叫做事件日志对吧?还有一类叫做这个曝光日志,还有一类叫做启动日志,还有一个错误日志,这是按内容划分,可以分为这样的五类,那如果说我们按照日志结构去划分呢。二结构。啊,咱们可以分为几类啊啊可以分为这样的两类啊,一类是在页面买点生成的日志,一类呢是在启动时生成的日志啊主要是这两类从结构上划分啊好,那我们现在先看啊第一类啊,这个页面买点日志啊,给它打开来我们看一下啊,那这个页面买点日志呢。
02:11
诶,这块呢,有点那个卡顿啊,来我们看一下那整个页面日志,我们里边呢,分成了几个字段呀,啊首先大家可以看到这是一个标准的一个完整的阶分,对吧?啊,它里边有几个字段呀。Common字段,Action display pages error,还有TS,是不是一共有这个六大字段,对不对,然后common后边它是一个什么,是一个子杰森嘛,对不对,Common后边是也也是一个杰森,然后这个common后边里边的所有字段,这都是什么,都是所谓的公共信息,但这里边呃大致可以分为这样几类啊,地理位置信息啊,地那个用户信息,设备信息,还有咱们那个应用信息啊等等等等啊这这一些主要是啊,那大家也能看到这些东西全是啥呀。是不是全是一些描述性的信息啊,描述性的信息啊,OK,那咱们接下来往下看,那这个呢,第二一个段是actions,注意actions后边是一个啥,是一个数组啊数组,为什么一个数组啊,因为咱们这个页面买点日,它是不是叫做页面买点日志对不对?那它是不是我们浏览一个页面会生成一条页面埋点日志啊,对不对?那所以说你在浏览一个页面的时候呢,你可能会有多个动作,多个动作呢,那我这个动作就得用一个数组去装啊,OK,这是关于它,那下面的display也是一样,它后面也是一个数组,因为我在一个页面上可以曝光很多对象,所以说也要一个数组啊,这个大家得搞清楚,那下面呢是配置,配置呢是不是就是页面信息啊,那刚才也说了,咱们是页面日志嘛,浏览一个页面生成一条日志,那所以说那这个配置字段当中呢,就是你浏览的当前页面的页面信息,包括什么页面ID,浏览时间等等啊好,那往下走,下边是error error呢是啊,错误信息就是你浏览。
03:59
界面的时候,你假如说这个报错了,那会把这个信息记录下来,那TS呢,就是一个时间戳在这儿呢,指的是跳入该页面的时间,就是你从哪一刻开始浏览这个页面的。
04:10
就是这个时间啊好,那咱把这个搞清楚就行了啊,那后边呢,实际上有这个标注啊,这个标注呢,咱们就呃不再多多看了,刚才已经给大家看过了。然后呢,再强调一点,呃,就是我们这个页面日志呢,并不是说每条日志都是这样的结构,对吧,不一定都是一模一样的对吧?那有些日志呢,可能没有action,没有display,没有error,是不是有可能啊啊这个大家应该都能理解,行,那咱们把这搞定啊,这是页面上的日志,那来看下一个,下一个呢,我们是这个启动日志啊,启动日志。来看一看这个启动日志。好,那打开启动日志,呃,这个启动日志呢,其实大家应该,呃,看起来就比较容易了,这个比较简单嘛,这个结构对吧?它里边呢,一共有四个字段,Common start error和TS,那common字段呢,跟刚才一样,还是公共字段,设备信息和应用信息等等这些描述性的信息,对吧?啊,那它这里边的字段呢,和刚才我们在页面日志里边看到的字段是一模一样的啊,一模一样啊啊那就往下走,下面呢是磁带,磁带那是启动信息啊,启动信息,启动信息呢包括什么启动的方式啊,启动的时间啊,就是那个加载时间,还有页面的就是启动的时候那个开屏广告的相关信息啊,是这个这些东西,那下边error error也是启动的时候可能会报的一些错误啊来下边是TS,启动的时实间OK,那就是这么,当然这个呢,也不是说所有的启动日志都是这么完整的结构,可能是没有艾瑞的对吧?啊啊,这是两类日志的结构啊,那两类。
05:48
质结构呢,我们给大家介绍完了啊,介绍完了,那介绍完了之后呢,那咱们接下来呢,就考虑一下啊,咱这儿呢,怎么去解析它比较合适嘛,啊按照什么解析比较合适。
06:01
呃,咱们这个其实已经提到过了啊,咱们按照内容去解析是比较合适的啊,那其实咱们这解析的时候无非就是这样的两种思路呗,两种思路,哪两种思路,要么你是按照这个结构去解析对不对,要不呢,按照这个哎内容去解析啊,那如果说咱们现在按照结构去解析,你说这个好解析吗?不好解析,虽然咱们结构在这非常明确的划分了两类,对不对,但是我在这个所谓的同一个结构的日志里边,诶,这红笔又又抽风了啊,来咱们重新看一下,那我在这个同一个结构里边啊,我是不是不同的日志,它的具体的字段其实也是不太可能一样的呀,对不?因为咱们有一些不确定性的一些字段,比如说actions displays啊,什么这个error,这是不是都是有可能有,有可能没有的呀,而且呢,这个数组的长度是不是也是不一定的呀,那这个按照日志,按照结构解析呢,可能不大合适,那我们还是按照什么解析最好呢?按照内容去解析是最好的。
07:01
啊,因为什么,因为同一个内容,比如说这个配置,那我是不是配置字段都是一样的呀,那既然字段一样,那我放在一张表里,那就比较合适,是这样的啊,就是所有的配置信息放到一个表里,所有的动作信息放到一张表里,所有的display信息放到一张表里,诶这是比较不错的啊,因为它字段都是一样的。啊,然后再一个呢,从我们使用的角度上啊去考虑,我按照内容解析也是最合适的,因为咱们去使用和使用是不是就使用它去统计啊,那比如说我统计的时候肯定看按照什么呀,肯定按照内容统计啊,比如说统计页面的浏览情况啊,就是页面的浏览次数啊,去统计咱们这个曝光次数等等等等,那你肯定是按照不同的内容去统计啊,那所以说按照内容去统计去解析的话,从哪个角度考虑,咱们都是比较合适的啊,所以咱们定下来最终按照内容去解析,那内容去解析的话呢,我就得解析成几张表,是不是就得解析成这样的五张表啊,启动页面动作曝光和错误表啊,一共五张表啊好,那咱们把这呢先哎先搞清楚行,那我把视频先录一下啊。
我来说两句