00:00
呃,来吧各位同学,那下边我们看流量域的第二张实时表,它叫什么呢?叫做启动事务实时表,OK啊好,那启动事务表事务表事时表它所对应的业务过程应该是什么呢?是不就是启动应用的那个操作呀,对吧?然后大家稍微注意一下啊,对于启动而言,只有谁会有。只有移动端的应用会有启动应用的这个操作,我们PC端的页面呢,是没有相应的白点的,就是PC端咱们没有启动这个行为,这一点大家稍微理解一下,也就是这里边咱们存储的数据呢,都是一个一个的移动端的这个应用的启动记录,这个理解一下啊好了,那接下来呢,我们就继续往下进行,下面呢,咱们就来分析分析,就是这张表咱们的设计灵感,包括将来他的数据都是来自于什么呢?也是来自于日志的,对吧?只不过他来自的这个日志应该是一个什么类型的日志,是启动日志了对吧?OK,好,那接下来呢,我们就不再去走它的那个设计步骤了啊,直接看一下最终的建表语句,咱还是把它跟那个日志进行一个对照,然后呢,咱们就知道这个字段啥的都是怎么来的了啊来,那现在我拿上来,那之后呢,我们先看一下它的表名,呃,表名呢,它叫做地给这个诸多了啊把这个再取消来看一下,表明呢,叫做dwd traffic,是不是流量域啊,对吧?然后star的IC,这个很简单,不多说,然后往下走,那这张表刚才已经说过了,它每行数据指代的就应该是什么。
01:19
一行数据指代的是不是就应该是一次启动记录啊,对吧?这个就不多说了,好,那接下来呢,我们把它的字段跟启动日志做一个简单的对照,来咱还是先去找一个这个完整的启动日志在这个位置啊,来CTRLC咱们拿下来,嗯,呃,然后呢,我们找到这个呃,Li,然后呢,给它打开啊呃,这个是不是就是一个标准的启动日志,OK,直接拿就行了,OK啊拿过来之后呢,我们还是给它格式化一下啊CRCR好了,那这就是一个完整的启动日志,那接下来呢,我们把它跟我们刚刚拿到的是这个这个这个启动日志表,咱们做一个简单的对比,来咱们左右还是左右对照来看一下啊,那实际上呢,这一堆字段从pro ID开始到这个version code,其实他们应该就是来自于哪的common,这个没什么悬念,对吧,很简单,好,继续往下看。
02:06
咱看这这个什么entry open aid等等这些东西,大家说应该是来自于哪,应该是来自于这个star等,对吧?好,那现在咱们逐个的来看一下啊,首先我们先看,诶这个又不好使了,来我们首先呢,先看一下这个,呃,N垂这个字段,N垂这个来自于哪?是不是应该是来自于star里边N这个还记得是啥吧?呃,这个应该指的是那个启动的入口,对不对?好,那现在问一下大家,你说这个字段在咱这张表当中,它应该是一个什么,是一个度量还是一个维度?显然是一个维度嘛,没问题吧,OK,你启动的方式,这不应该是一个维度嘛,对不对,很简单啊,当然上面这些字段肯定也都是维度,我就不多说了啊,继续往下走,那下边呢,这儿还有一个open a open ad,大家还记得是啥吧?开屏广告对不对?OK,那你说这个open a dad,它应该算作一个什么信息?维度还是度量,也是维度吧,没问题吧,也是一个维度啊,OK,那接下来我们继续往下进行,下面呢,有一个data ID,有一个third time,这个显然是时间,时间也是维度,对吧?那它来自于哪呢?咱们得知道它来自于哪,是不是也是应该来自于这个TS对吧?这个TS在启动日志当中的含义是什么?
03:16
是启动的时间对不对?那所以说那这个所谓的data台ID,还有third time肯定都是来自于TS的,这个大家搞清楚就行了,那接下来我们继续往下看,那这呢有一个loading time loading time在这儿指的是什么?是加载时间对吧?是什么的加载时间呢?是我本次启动对吧?从开始到结束对吧?那它所经历的时间,这是下载时间,那问一下大家,你说这个loading time它指代的应该是什么?是度量还是维度?应该是一个度量吧,对不对?是我每次启动所经历的时间嘛,对吧?比如说我想统计一下对吧,我各个品牌的手机对吧?或者说我各个版本的应用,我这个启动的平均时长对不对?OK,那是不是这相当于应该会做一个度量值去使用啊,对吧?诶,这是一个度量值,这个理解一下啊,好,那接着继续往下走,下边呢,我们还有一个open ADS,什么open ad SK Ms这俩字段大家还记得是什么意思?呃,Open ADS指的是我这个一个广告的播放时长吧,对不对?那这个skip Ms指的是什么?是跳过的时间没问题吧?OK,那这俩字段它们的含义到底是怎么一回事呢?
04:22
那你说open ADS ADS ad open adms这个东西,我们应该算的一个度量还是一个维度?啊,注意啊,这是广告的总时长对吧?啊,OK,那这个是度量还是维度呢?其实这个在某种意义上应该更更多的情况应该会算作一个什么呀,一个维度啊,为什么呢?很简单,这个是一个广告的总时长,对不对?它是我们本次浏览的真正时长吗?不一定对不对,OK,它只是一个总时长,它相当于是一个广告的属性嘛,对不对啊,是这样的,就好比比如说一个人我的体重是多少对不对?那这个东西你这个体重是不是应该算作你这个人的一个属性啊,对吧?它是一个维度啊在这儿了,诶这个大家要理解一下,那当然下边这个所谓的open ad,然后skip Ms,这个是不是应该是咱们跳过广告的时间,那这个其实就应该是我们真正浏览广告的市场吧,对不对,那这个是不是应该是算应该算做一个度量指场对吧,它是用来量化我们浏览广告或浏览我们启动这个操作的,是这样的,所以它也应当是算作一个诶度量的,那这个理解一下就行了啊好了,那截止到现在呢,我们这张表当中的所有字段咱们就都看了。
05:31
里边了,那你会发现这里边儿所有的字段都是呃取自于这个日志里边的,对吧?只有一个特殊一点,就是pro ID咱们需要去照一下,所以这张表是不是整体上来说是比较简单的呀,对不对?OK,那这个完成之后我们继续往下看,那它的这个呃,行和列咱都说完了,最后明确一下分区就是增量分区吧,这个就不解释了啊好了,行列分区都完事了,最后咱来看一下它的这个装载语句,呃,大家可以想一下,你说这张表的装载语句我们可以怎么做呀。大致的思路应该是什么样的,首先先明确它的数据的流向啊,流向肯定是这张表对不对,那完之后呢,这张表我们是不是还是没有历史数据啊,对吧?那所以是只不是,是不是也是只需要写一个circle啊对不对,那完了之后,我们具体的这个这个这个实验思路应该是什么样的呢?我需要用到什么样的日志,需要用到star的日志对不对?那star的日志咱们怎么拿出来,是不是就是start不为空的,咱就给他拿到就行了,对吧?OK,那就这样拿到之后呢,我们是不是只需要按照咱们这个最终的字段的要求,去逐个获取我们所需的每个字段,对不对,你需要谁,那我就拿谁对不对?那完成之后呢?呃,最终需要把pro ID去照一下,然后拿到就完事了,对吧?诶这个相对来说是比较简单,所以这个三克咱就不写了啊,直接看一下最终的结果就行了,哎,咱给他拿过来。
06:45
哎,CTRLC,诶之后呢,放在这个位置来,各位同学我们一起来看一下啊呃,那首先呢,我们看一下这个里边的子查询,第一个子查询就是哪呢?就是这个地方。这地方来大家看一下这个三高啊,是不是就是select,然后让ods lock IC这张表啊,对不对,之后拿到哪个分区,14号分居,那14号分区这个不是全量,只有14号新增的日志啊,之后我们正常是不是得过滤一个袋的一次not no啊对吧?诶大家注意观察一下,咱这有什么有票号对吧?我这为什么有票号呢?我把票号去了,大家就知道为啥了,因为你去了之后它会怎么样了,它会报错,为什么呢?因为start这个这个字眼呢,这个单词呢,在have当中是一个保留字,是一个关键字啊,是这样的,那所以说在这儿呢,我们加票号的作用是啥呢?是不是就是相当于声明一下,我这儿并不是把start作为关键字去使用的,就是一个普通的字段,对吧?所以在这儿呢,需要加标号,诶,然后呃,既然提到这个标号了,那这儿呢,我们还得再多引申一下啊,就是将来咱这个circle写完之后,最终肯定是要放到shel脚本里边的,对吧?在上L脚本当中,票号是不是也有特殊的含义?
07:52
还记得票号的作用是什么,在12脚本里边,它是不是会把是这个票号当中的这个这个内容当做一个效命令去执行啊,对不对,完了之后呢,把结果是不是返回出来对不对?OK,那也就是说我们将来呢,呃,还得考虑到这样的一个问题,那所以说大家想一想,你把这个circle放在十原版之后,咱们需要做什么操作。
08:09
得做转移吧,对不对,我们不能让SHLL把这个start当命令去执行啊,这个就是我们一个真正的一个字段嘛,对吧?那所以得怎么办呢?转移,那在SHLL里边怎么转移,反斜杠是不是它的转移字符,所以说药脚本里边咱这个start你就得这么写了啊,可能看起来有点奇怪,但是到时候必须得这么写才行啊,这个一定得注意,包括我上边的每个字段,咱是不是都得这样去处理啊,对不对,那当然在这儿呢,我们不用加这个反引号,这个一定要理解一下,好了多同学,那截止到现在呢,呃,我们这个start这个子大学就算是高定了,搞定之后呢,我们需要去跟是不是这个省份表做一个关联,拿到province ID亚对吧?好,那关联上之后,那我们最终的结果就算是啊得到了对吧,把里边所需的字段逐个的选出来,当然这里边需要注意的还是这俩时间,哎,我们需要用from u TC去处理一下,好处理完之后把数据写到这张表十四二分区,诶那就搞定了,好了,那这就是咱们这张表的数据状态,先完成之后视频我。
我来说两句