00:00
好,接下来呢,我们来到了这个4.3dWD乘事件表的一个解析啊,真正的解析上面呢,属于这块呢,属于初步的一个解析,把ODI数据解析到对应的中间表啊,然后通过把中间表的数据再解析成具体的表值段,那什么叫具体的表值段呢?哎,就简析成这种。比如说我的是商品点击表。好看,那么三倍点击表里面分两块,一部分呢是公共字段,一部分是事间字段,那这个时间之段我就要把它解析成这个,这就是三面点击表未来的前面这一块是我们上上节课做的中间表吧,啊中间表啊,中间表当中有事件名称,事件阶,然后S,那我就把它给它解压成啊不是解压,是这个解析成。
01:01
对应的这个,比如说把这两个字段其实是翻译成它。那这两个字段怎么用呢?啊,其实我是根据这个表名字,它是什么表明判断,我用什么去解析,那一看它目前假如说它是点击表,那它的字段就对应的这里面是五个字段。那具体的解析过程就用到了get。那我们来搞定。这么简单是吧。那下面我们再来看,我们这边是商品点击表。比如说左侧我们的目标是向这张表里面去插入数据,那我们现在有的就是这张表。中间点有中间点。那就通过这中间表里面获取数据,那中间表里面的两个字段分别是意的,这是和月的内容啊,那他们起的作用也不一样啊,首先呢,这个应的内容肯定是作为这个过滤条件啊,找到对应的是哪张表,然后通过这个get杰森object传进去对应的杰森。
02:20
再把对应的这里面的K传进去,就得到了对应的Y值啊,那这里面这有个KVKV还记得是啥吗。黑V,这是KV,黑V里面包含了。说具体的事件内容啊啊,我给你找一个吧。找一个KV啊啊这个聊这那这个KV呢,其实是它这这啊,那就是具体的里面的字段啊,它倒入的时候点上一个KV,你说先点这个K值,然后又点的下面这个K值,就把对应的Y流值拿出来了啊好,那我们回来啊继回到这。
03:15
那现在呢,我们就开始创建商品点击表,然后通过这个中间表向这里面去导入数据啊,导入数据。那行,先把它拿回来。这表你可以看一下啊,没啥东西这表啊,然后呢,这来一个移动过来。有了这个表之后,下面呢,我们是要向这张表里面插入数据,那像这张表里面插入去我们已有的表是。DWD乘base啊,然后e even love知道咋吗?啊,对,好,那就下面这张表里面插入数据,不是向这张表里插入,是向这张表吧表啊,N ser in的allright用allright啊这个。
04:17
像这张表里面插入数据好,然后插入到这张表的哪一个分区里面呢?PR,因为这是。分区表,所以这块就要给它设置一个分区行,那DT等于。2019杠。杠零二杠1022,然后查询Li的数据。哪张表的中间表?下这张表里面去导入数据。那导入数据,首先上面这部分是。
05:02
公共字段对吧,一直到到这到这公共字段,公共字段好获取吧,这里面是不就有公共字段啊,有那我们拿过来哈,有这个公共字段,那你说从这。到这儿。啊,别打了。啊。公共资出来了,那其实那后面这些我们是不是也是需要的,那你把这也能拿出来呗,这些都是我们要的。这个真不对啊。这是创建表啊这块啊这块直接拿这个啊拿这个。那个就是定义类型的。把这个拿不来。那剩下的下面这个值,我说得获取啊,那获取简单的get杰和B。这的传进去这个里面它有的值是。
06:03
正式啊,同时那我要获取对应的这里面的值,那怎么获取呢。到符点先点KV啊,因为然后再点对应的Y6值啊K值好。是不是就取出一个值了,那剩下的那这些一个去。这个二还差一个好,那接下来看。啊。扩展。分类。然后time。是。就是这样啊。
07:00
Time time不需要是吧,Time不需要啊,注意啊。动画。逗号逗号逗号逗号是这样吗?啊,这要注意啊,因为它是直接就在这里面就能取出它的值哈,取的值啊。那就是获取这字段,但是你会这一时段不行啊,你得有个判断条件呢,你是所有的表都这解析吗?不能因为把这11张表的字段结构不一样啊,那加一条件2DT首先啊得等于2019杠零二杠幺零,然后二啊even呢啊一。等于我们这里面这个表明的是名第三个第四,就是那个第四。
08:00
好,闭嘴,OK,那我们试一下呗,啊,向这里面去插入对应的值。这张表没创了吗?好,下完表之后,下这张表里面去插入值。插入完之后,我们就可以查这张表了。ET,那个不要。嗯。这事件发生时间了,知道吗?事件发生时间指的没用。哪没有?是不是这个。就是婴儿K同级的那一款。你们先看看结果吧。好查好的时候我们查一下啊from啊from这张表讲。
09:08
给他送。那这样你看是不是所有的值就写出来了,哎,那这个呢,就是一个一个字段全部给它拆解开来啊,这就是我们最终想要的。啊,你说DWD层要把所有的准备工作做好啊,为下一层统计分析做准备啊,啊,那这个呢,就是那个,呃,第一张啊,商品点击,那商品点击表完事之后,那下面剩下的这十张表是不是全是这种方式啊,全种方式,那我们就快速的来处理了哈,快速的建表啊,你看建表这上面是公制段,下面是四线制段。然后呢?嗯。内环。加上。
10:01
是建完表之后,下面往里面导数据,那所有导呢,这个你可以不用导了哈,这个就行,从这就行,然后呢,就是用这个盖的阶层啊,核心的东西,那也说在面试过程当中,人家会问你这些东西怎么解析的。那这里面的一个点就是。Get就是这个函数,你要知道啊,一定要知道哈。Get,就这带啊,自动去解析,相当于是系统的函数自带。当然我们还有其他的一些自带的函数吗?嗯,导一个查一个啊,导一个查一个。给打到最后了,你发现突然间诶。导错了啊,然后不知道从哪开始重新导了,那就麻烦了哈,你要仔细。那这个要是做完之后,剩下的事就要把它生成为脚本,对吧,小本。
11:06
那这个脚本。有点大是吧,但是你想没想过,哎,以前呢,呃,老学员出去面试总被问到一个什么呢?你每天你写过最长的顺口多长?几百行。啊,这那想写几百行,写百行,基本上都上千行。那就问你写个最长的牲口。其实里面就是各种就表多呗,对吧,嗯,你想想现在这个东西对你来说就没有什么难度了吧,啊没有难度了,因为它的点就是一个函数get的定,不干别的意义不大。好搞定。后面呢,我会带大家去看一下这个企业当中的circle怎么写的啊,它那个1000行circle怎么拼来的。
12:03
我这都有企业的这个源码是吧,你看一下感受一下。它里面是有几十张表啊,几张表。啥商业机密?透明word还是商业机密?核心字段,钱呐,电话号啊,什么都已经干掉了啊,你看到的都是些普通字段。总觉得自己自己的地位很牛是吗?想多了。天天这么写代码不爽是吧,那现在你说下你去写这东西能不能搞定啊,这不一样吗?就是一个干身那问大家问题,面试官会问,哎,你平时每天都干什么事?
13:01
分析业务对吧,那就问你平均每天写多少个指标,写多少个。大家想想,猜一猜,平均一天能写多少啊?小一个小时啊,你太高估你自己了,如果你一个小时能写一个生口,那你绝对是高级工程师中的高级工程师,你们现在是不想的,写完就完事了,你有没有想过一个问题,你写的这时候对不对?是一个问题,写完这时候你要不要测试对吧?首先,而且写完之后你要不要在测试集群上跑一跑?跑完之后,你要不要在生产集群上再跑一个来回?那你想想得多少天?对吧,啊,平均一个这个比较牛的公司,或者真的干个三五年的公程司,一天的时间能写一个SQL就已经很了不起了。
14:04
那如果是那个刚去一个新公司的话,平均时间是七天能写一个赛。对,今天首先你要熟悉这个业务,熟悉这种表,上来给你200个表,让你实现一个顺口,你觉得七天时间长吗?200个表,咱们这个项目当中就涉及到将近80多张表。你还觉得两秒的还播吗?啊,熟悉业务啊,肯定要熟悉业务啊,那就是说你要分析这指标需要涉及到哪些表,那我肯定就要先去直奔那几张表啊。那你现在你感受一下,我见了这么大点。好像没有要求,你说有资料都记住吧。啊,因为真正分析指标的时候,他不会要求你所有的指标,而且每个字段它是不是得有一个含义给你标示出来啊,哎,这些字段是干嘛的得给你,要不然你没法分析。
15:12
那再一问大家个问题,咱们正好把前一文档这个做完了,前业文档咱们花了两天时间重出完了大个集群,环静那天那个企业老板会问,哎,我给你让让你搭一个整个集群出藏集群,你需要多久,两个小时,两个小时,当然你可以说两个小时啊,你像我的话,我我半半个小时不呛,一个小时之内应该差不多,那你那你在跟老板申请时间的时候,申请多少合适呢?你们拍下来,拍一下来。就在服务器已经到位的情况下啊,前提是服务器已经到位了,那至少你也得一周以上搭这个集群,为什么对你搭完这个集训,你是不是有各种设施啊,而且在这个过程当中,你敢保证一点问题不出吗?那是不可能的,对吧?就以你们的手法不出bug才怪呢,是吧?
16:27
加,所以至少是一周以上啊,一周以上公司给的加,公司给你加包,你看你想多了吧,公司就是一个从零到一,搭一个数,搭一个这个大数据平台集群,他要如果他有的话,还还说啥了,还要你干嘛,那肯定都是你来搞啊,所有东西都是你来说了算啊,而且这种公司不在少数,在深圳的话,至少有1/3的公司是这样,就是从零到一的,你敢不敢当?那必须得干对吧,那有啥不敢当的对吧?啊,拿出来就该干,所以说这个项目结束的最后一天,一天的时间就是让你们去搭这个平台,能不能扛下来,里边一定有人能扛下来,有人扛下来。
17:14
你像上一班刚毕业班,一个班当中只有一个同学打起来了。其他同学不是电脑原因呢,就是那个搭建过程当中啊,遇到一些bug啊,放弃了啊很正常啊,那如果你能搭起来的话,那你去企业,那你的自信心会爆棚的,对吧?啊那很有底气,拿过来我就一个人就能干了,不需要别人把那工资给我就行是吧?行,那这个呢是你看11张表,我已经导完了,那下面呢,还要对这11张表形成对应的脚本,那脚本分几步。五步分别是减号三号B开头,然后变量日期circle执行circle,那circleq当中需要注意的是遇到表就在前面加上Dollar,遇到时间换成Dollar不date啊,那这个我就不给大家写了啊,就是它表比较多,体积多少表。
18:12
啊,那创建一下这个脚本,所以啊,去一个企业的时候不要怂干就完了,对吧,这么咱这么多人呢,还扛不过他吗?忽悠像想那好多人他重名大一不就搭好好的吗?你要是其他机构的话,我跟你说好多年在扛住啊,为什么他扛住好多他都是一些专科啊,还有一些初中的在学大数据,我简直就搞笑啊,我初中生都能学大数据。那就太不值钱了,大数据还是有门槛,不是所有人想学就能学的,对吧?首先能进入到这个班级,只能说也已经很优秀了是吧?虽然说自己感觉自己很挫是吧,确实很挫,行,那你就琢吧,不拦着你2019杠零二杠幺幺吧,幺幺十一号出去走。
19:23
而且包括你们最后的最后一个阶段项目实战,嗯,那个时候老师就只给你需求,剩下的事自己来敲,遇到bug老师不会给你去敲任何一行代码啊,只是给你个思路,剩下的事你来敲,你来做,这个有锻炼你这个独立思考,解决问题的能力,就相当于把你扔到一家。真正的公司里面,这就是第一个需求啊,那那时候老师你就不要老师了,就是项目经理或者你的CP对吧,金总监了啊,他不会给你自己问题,那这时候你要问你你自己能不能搞定。而且包括现在这个项目的时候,你看我很少去帮你们解决问题,因为我能让你们自己解决的,我绝对是让你们自己解决,因为有些问题你们自己一定能搞得定的,那这时候呢,就是对你的一个成长啊,最大的一个提升。
20:12
这个是你真正的真本事,因为你想想这个文档,大家遇到这个bug,老师看到你按照这个顺序捋一下,其实你获取不到什么东西啊,只是为了这一个bug而已,但是真正为了解决bug这个思路啊,你完全没掌握到,那你实在没掌握到,那未来痛苦的就是你对吧,那时候是叫天听命,叫天地不灵啊,老师不在,然后同学关系又不好啊,然后傻傻的对着电脑啊,只能等到晚上是吧?啊,没人的时候啊,悄悄的啊把老师的微信打开了是吧,这时候老师太你干啥都行了,什么大保健啊是吧,干啥都OK了。然后今天有个学生,那是07年0705的分解下来,感谢我和王老师,你们看一下来找个托啊。
21:07
情况。请吃饭。
我来说两句