00:00
好,呃,那我们到现在的话,我们的这个数据的采集和分流工作啊,就是我们的第一个文档啊,里面的这个东西呢,就给大家这个说完了啊呃,最后一张是一个总结,这个总结的话呢,我原本是希望大家下去以后呢,自己去总结的。就是把我们整个这个文档中,我们所有掌握的东西啊,我们整个的什么分流对吧?哎,架构是怎么设计的,我们解决了什么什么问题啊,希望大家能够什么给大家去做一个总结的。啊,当然啊,下去以后你们必须得去做这个事情啊,因为你只有通过整体的一个梳理。然后呢,才能够把这个流程呢,给它搞得更明白啊,把每个环节做什么事,才能把它想得更清楚。好吧啊,下去以后一定要去做啊呃,然后现在的话呢,我带着你呢,简单把这个流程呢做一个梳理啊,我就不再跟你说的那么细了啊,我就把这个整个流程给你做一个梳理啊,你就知道一下我们这几天都干了点啥事儿。好吧,行,呃,那这个我们通过画图来去说吧啊。
01:01
画个图吧。好就放到这儿啊嗯,诶这个我看看啊。这好像有点放不下了是不是?还能。来放到这儿啊,这是呃,总结一下啊,我们的ods啊,这样叫OS到什么到这个DWD啊DWD,然后呢,这个总结啊行。首先啊,这里面我们做了一个采集工作,就是你先把这个采集工作给他搞明白了啊,那我们这个采集的话呢,也是两部分的数据啊,我再把这个数据表示一下啊呃,两种类型的数据,一种是我们的业务数据。好一种是我们的这个,呃,先说日志数据吧。啊,一种是日志数据,然后呢,一种是我们的业务数据啊放到这。
02:06
业务数据啊数据OK,呃,我们先做的是这个采集工作啊,先做了采集工作,然后呢,我们先把这个数据呢,发送到了一个就是ods层啊,那就OS层的话,我们再来就拿它吧。对吧,这是那个ods层啊,我放到这,嗯,这样啊。把它干掉啊,我再小一点吧,这画的太大了,一会儿就画不下了。好,呃,这是我们的ods啊ods啊,那么它其实这个还是在我们这个卡不卡的啊,就你要明白我的每一层呢,呃是在用什么去做的啊,我的ods层我用的卡夫卡去做的,好,那我们先做了这个数据的一个采集,采集的话呢,我们就先把你的日志数据呢,呃,采到了我的卡卡中,然后呢,放到了一个统一的一个topic中,对吧?那个topic叫什么呀?叫就叫什么ods,然后呢,贝斯啊base。
03:09
对吧,就叫这个名字啊,那个班级名我就不加了哈,大家知道这个意思就行了啊行,那同样道理,呃,它呢也是一样的啊,我们把它这个先采过来,采过来以后呢,放到什么地方呢?放到了这个地方叫ods的一个base DB对吧,这是一个采集过程啊,然后这个采集的话呢,我们用的技术是什么样子的啊,说一下这个日志数据,我们是通过直发的方式来去做的啊,就直接就把它发过来。对吧,诶直接发过去的啊,当然呢,呃,你也可以什么使用这个嘛,啊,比如说我们是这个直发的。对吧,直发啊,当然你也可以什么这个芙蓉采集我觉得也可以啊,这个就。呃,不对啊。对吧,直发啊,哎哟,这个算了,我就写个直发得了啊好吧,就你也可以这么通过这个form去做采集啊,就看你怎么去搭建这个架构啊呃,然后这个业务数据的话呢,我们是通过这个Maxwell来去做的啊。
04:04
对吧,我们通过这个max呢,做了一个采集工作,然后把数据呢,从你的业务数据库里面,然后采到了这个呃,Ods层,好,那接下来的话,我们做的工作就是呃,分流处理了呗,采集工作啊这就结束了,对吧,下面就是我们这个分流的处理啊呃,那我们这个分流处理的话呢,是这样子的啊,最后的话,我们把数据呢是分流到了。哪里啊,分流到这个DWD啊DWD呢,其实也是一个卡不卡啊,当然呢,除了这个DWD的话呢,我们还有一部分数据呢,是去往了这个地方啊,我把它小一点吧。就是叫dim吧,对吧,Dim啊好dim,然后这是我们的RA对吧。这个是能理解的哈,就一部分数据呢,去往卡不卡,一部分数据呢,去往这个red好呃,那我们整个这个分流工作啊,来说一下,呃,基本上啊都差不多,这个整个流程是什么样子的呢?我们把这个拿过来啊拿拿一个箭头过来。
05:04
这是那个分流啊。好,分流啊,行,那我们来分析一下我们做了什么事啊,呃,对于我们的这个日志数据来讲啊,我们做的事情无无非就还是那几样呗,对吧,我把这个大概去罗列一下吧,啊,我们把这个嗯,拿一个。拿一个text啊,我来写一下啊,好大概的步骤啊,给大家来写一下,就是我就写核心的了啊,写核心的步骤我们做了什么操作呀,同学们啊。做了什么操作呀,是不是从你的中读取偏移量对吧,然后第二步呢,就是什么呀。这个消费卡不卡数据啊,从不卡消费数据是不是啊,从卡卡消费数据,然后呢,第三步呢,就是提取偏移量,偏移量啊。
06:02
OK,然后呢,第四个呢,就是呃,那你提到偏移量以后呢,接下来干嘛呀,第四个就是什么处理数据对吧?然后第五个的话就是这个提交偏移量啊啊,当然还有一个什么这个刷新啊,刷新这个卡不卡这个缓存啊好,然后第六个是这个提交偏移量,提交偏移量对吧,这是我们这个整体要去做的事啊,就是它整个流程是什么样的,就是这个流程,那我这个再来写一下啊,这是我的。分流的流程啊,分流的流程。对吧,我就是这样的一个什么流程啊,我就把这个数据呢,给他这个分流开了。能听懂吧,啊,那么当然呢,我们在这个分流的过程中呢,呃,我们还这个解决了一些问题啊。写到下面。好,我们解决了问题,解决哪些问题呢?首先第一个。就是这个精确一次啊,语音问题啊,精确一次诶消费啊精确一次消费问题。
07:08
对不对啊,这是我们解决的一个问题啊,然后呢,还解决了一个就是什么卡不卡缓冲区的这个问题。是吧,啊,这两个的话是我们,呃,这个就是分流这个日志数据,我们所遇到的事情啊,然后呢,我们在这个分流这个业务数据的时候,也遇到了几个问题,首先第一个呢,就是。什么问题啊,嗯。就是这个red啊,就是连接啊,开关问题对吧,开关的一个位置问题吧,好开关位置对吧,再一个就是这个动态的,诶配置什么配置这个表清单啊,这也是我们解决的一个问题啊好还有什么呢?就是呃,那当然这里面还涉及到一个什么,就是我们的广播变量对吧?嗯,啊这就不说了吧,啊这就不说了表清单啊好。
08:00
呃,然后呢,还有就是我们刚刚这个聊到的啊,嗯。我想想啊,呃,还有一个啊,是那个叫做历史维度数据的引导啊,历史维度数据对吧,维度数据这个同步问题啊,就是这个同步问题,好,然后最后一个就是我们刚刚提到的这个数据处理一个顺序性问题啊,对吧,那这应该就是我们在这个整个A。过程中,我们解决了一些问题。好吧,这个大家应该都是能够理解的啊行呃,那最后经过我们这个分流,经过这个问题的这个解决啊,最后我们达成的一个效果就是。我们在这个DWD中啊,我们存下来的结果是什么呀,首先你的呃日志数据啊,我们存成了什么DWD,比如说像什么什么配置log,对吧,配置log,然后呢,这个topic。对不对啊,那就这样吧,我把它画个颜色吧,啊,日志数据日志数据,来这个统一给个颜色啊。改成这个绿的。对吧,然后呢,业务数据,业务数据业务数据啊,这个不要啊。
09:05
好来这个这个啊,我们给上一个粉的吧,对吧,然后这个的话呢,最后我们也是,呃,这里面也有一份啊,就是我们叫什么呀,叫DWD,然后呢,假设啊叫什么叫order info。对吧,这是你的订单啊,当然还我们还跟了一个什么,跟了一个什么I呀,什么什么U啊,对吧,这个就看你想有没有吧,我就不写了吧,好吧,不写了啊啊,如果你有就可以有,如果没有的话也就无所谓啊。诶,放放不下了,快一点啊。好,就这样。能理解吧啊,当然呢,呃,我们的这个业务数据的话呢,有一部分还去往我们的这个red中了啊,所以说把这里面写一下啊好,Red里面放了什么东西呢?就是放到我们的这个dim啊,比如说这个dim,然后呢叫呃这个user info,然后呢,ID后面就是你的ID啊。是吧,把这个所有的什么这个用户维度给他放进来了啊,当然还有别的啊,像这个什么,呃,这个地址的什么维度数据啊,或者什么这个商品维度数据啊,就你要什么东西你都可以往往后去拿。
10:07
能理解吧,同学们好,那你看看吧,这个题就是我们。这两天啊,所做的这个事情。明白了吧,啊,这两天所做的这个事情啊,OK,行,呃,那这个总结的话,我就把这个大概的一个流程给你说一下就行了啊,至于这个每一个问题我们是怎么解决的啊,我们都用了什么手段是吧?这个我就希望大家下去以后能够自己去把它补充一下了啊,把它补充的更加的这个呃完整一点啊,这样的话你就什么把项目的就什么学成你自己的了,将来你想怎么去说,就按照你自己的理解的去说。OK吧,行停了啊。
我来说两句