00:00
啊,这个东西呢,只是我们单纯的写了一个south的一个类,对吧,那你要想它能正常工作的话,是不是应该还有China,还有think呀,所以说我们要扔到集群上去运行嘛,Channel跟think呢,Channel我们用memory channel think呢就用log,因为打印到控制台,我们可以直接看到数据打印到控制台,这种方式就方便一点,OK啊,接下来我们就对这个工程进行打包,那ideal怎么打包呢?说一下啊,这块点到这个main project。啊,点到这个project点出来,OK,对这个,这是我们刚才写的那个工程吧。对吧,OK,把它点开,点开之后这有一个life circle啊,它的一个生命周期,这里面有它的相应的。打包的那些没的那些东西吧,Clean啊,然后什么编译啊,Test测试啊,打包啊,Install啊,就是将将你的这个东西打成包之后放到你的没仓库里了吧,供其他的一个模块去调用的O这种方式没问的时候将这些命令应该都讲过这个OK,嗯,这个地方呢,我们一般是不是打包的时候会跳过测试啊。
01:02
你在打包的时候是不是加一个参数杠SK test直接手动加一个参数吧,对吧,在ideal当中呢,你把这个小闪件勾上他就会了吧,杠掉了小闪电勾掉这个就不用啊,就不用加什么参数了啊,他自带的这个打包插件呢,还比较好用的,不要你手动说命令了,然后你可以在这双击拍给或者说点那个运行啊都可以,你走一下。当前我们打包这种方式是不带任何依赖的,如果想打依赖的包,你们是不是有一个插件啊?哎,你们应该没讲ID,应该不知道,当时你们之前打那个,嗯,那六包的时候有打全量包吗?有讲过打依赖的包吗?带依赖的包。你们不是那不是没有那个,呃,这些包吗?当然这些包我们可以不需要,因为我们集群上有对吧?啊集上有像的那买的没有,那我们把麦那个驱动包给他放到那个下就够了,它就能找到了,它能找到了,那你要知道,如果打全量包,就是说我想把依赖打进去呢,有一个插件,然后三包三宝,嗯,到时候给大家吧,今天的那个跟视频一块,到时给大家三把插件。
02:28
然后到后面再讲一下怎么用啊,现在这块就打包就完了,打包完了之后呢,在这个target里边吧,就这个东西啊,在这个包CTRLC,嗯,不用CTRLC了吧,我们直接给他拿过来。直接拖里边打开一个102就够了,CD到。或者直接我在这拖进来的话,我直接out加P,你们是有什么各种工具对吧,我就习惯用out加P了,直接拖啊这个东西拖进来对吧。
03:02
我不,我不要拖到这,我应该是拖到那个。From Li下,注意这个包要放到from Li下啊,OBD model from,然后Li啊,到这LS看一下这里边,这就是或者你在这PWD,好,这这里边也可以敲相应的一个命令,就是说你要找到哪个目录,直接可以敲一下,然后我想把这个投到这里边,到这来OK,你进来了,呃,这些东西就不用改名字了,就是它,因为我们到时候写的肯定是写一个全类名对吧,通过反射的方式来找到这个包的啊,就是你不用担心这个包叫什么名字啊,因为它不管它叫什么名字,只要你这个里边没有重复的一些东西就行了,没有重复的两个包叫一样的名字,然后CD OB model from。好好,我们刚才放的就是这个立下啊,接下来我还要考一个那个。买四个一个驱动包,驱动包拷过来,然后我这地方应该是考过了,我看一下啊。买so的一个驱动包,我有吧,我就不考了,你们自己考一下,这个一定要有,不考肯定启动不了了,那启动任务之前是不是还有一个什么配置文件啊。
04:11
对吧,就是关于这个A的这个配置文件要有吧,啊同样的,我之前也是放在这个立项,我把这个删掉,那点com RM-FMY s.com删掉,删掉之后呢,我重新touch一个。MY circle.com my.com OK,这是一个空的对吧,点。com空的,那我们要写自己的,嗯,我还是习惯,我不喜欢在这写,我通通过这个连接,你们烂或者说爱这个爱这个plus加加这种东西能连续吧,就是这个地方直接连进来进行一个修改啊,就这个地方买搜里康艾D的编辑,从这编辑了就不我不喜欢用那个VM。因为用的不熟,还是Windows操作比较熟一点,我们直接在Windows上操作了,OK,这个地方就写它相应的一个配置啊,写相应一个配置来把这个拿过来大家看一下。
05:07
就是说这个东西大家已经配过很多遍了,对吧,配过很多遍了,来CTRLSL直接保存一下,直接保存一下,这个地方保存一下,你看啊,这块就有东西了吧,就同步过来了,同步过来了大家看一下,首先是还是分成五块,第一块定义对吧,最后是绑定他们之间的一个绑定,那中间三块就是各自south think China China think这两个东西我们都用过了,Memory China think用logo是不是加一个什么杠d from,打印到控制台那个参数啊,然后呢,打印到控制台啊,打印到控制台我们可以更直观的啊,看到这个数据,看到这个数据OK,然后接下来就是我们自定义的这个东西到底应该怎么配。这个地方就配一个全类名,它的一个类型就是全类名。全名,然后这个东西你看table columns to select这个东西熟吗?
06:06
这个地方不是默认值啊,这个地方是我们的代码里面写的那个contact.get那些东西吧,对吧?哎,Get那些东西OK,那个有,如果有默认值的话,你这里边可以不传吧,它就用默认值,但是table这个东西我们是不是没有啊。没有吧,啊,这些东西OK好呃,这两个东西我没用,没用呢,我注我已经注掉了,对吧,注掉了它这个columns to select呢啊是锌你不传也行吧,它里面也是新是不是啊,默认的就是新啊,默认的人也是新,OK这块啊可以修改它连的一个库,那个我就用那个MYS,然后主类我应该改一下,现在主类应该不叫这个名字了,就是拿这个my source还是同样的,拿主类还是右键copy reference啊这个跟一个词是一样的。粘过来放到这CTRLB保存一下,保存一下,那我们这个关于这个定义就完了,最最最主要就是核心的就是这块,如果大家自己写的啊,是自己写的source或者sing China,你要知道怎么配,首先它一个类型是你的主类,然后下面需要配的一些东西呢,就是你代码写的那些参数,刚才不带大家看过,它里边有很多很多的一个参数嘛,这块。
07:18
对吧,Columns to insect select run every delay,还有table等等这些内容吧,啊,它当然当然都有,你看table在这啊,这个地方呢,我写一个无默认参数的,这个是有默认参数的,有两种,就你们看到的在配置文件里边,就是说官方文档里边有画斜杠的,有值的两种,分为两种,这是画斜杠的,这是有值的,你把默认值在文档里面给它写清楚啊,写清楚是这样的啊,那配置文件搞定了,考RS保存一下,那接下来我们启动这个任务吧。启动那个任务应该怎么起并?From NG,然后A着呢对吧,然后后面呢,杠NA1-C对吧,杠F跟着自己的配置文件嘛,Job那个MY搜狗点com。
08:11
三个点看我OK,然后呢,后面那个参数我记不住,我拿一下。就这个参数吧。Ctrl c OK,你们应该用的是杠杠name,杠杠杠杠come fair这种方式吧,来看一下你为什么不用简单的呢?来,这是官方文档啊,这块人家。四大的A的,这不写了杠N-C-F吗?人家官方的就是说启动一个A电脑就就让你用简单的啊。但是海哥应该用的是这种是吧。杠刚康复杠刚康杠杠那对吧,还用该这样的,有简单的接下杠N-C-F多简单还杠杠有人少敲了一个杠对吧?来启动一下,还不知道代码有没有问题。
09:09
好,第一次来看一下啊,他是不是将我们的数据。为什么第一次就要大于五啊?我之前是有数据的,对不对啊,来把这个干掉,然后我们把这个直接改一下,嗯,输入没代表对吧,这个地方。有这张表是五吧啊有五呃,我把这个地方呢,把这条数据删了可不以啊。删除一条记录,OK,保存一下是吧,嗯,这个地方刷新一下,然后重新启动一下这个任务,重新启动一下走。读一下数据这个地方,张三李四王五赵六,什么东军这个是是上一个班有个同学叫东军啊,然后你看一下这个student表里边是五张数据吧,好我在干什么呢。添加一条数据来个六,你看一下它是五秒钟执行一次,五秒钟执行一次,然后打印出来的select都是大于五嘛,因为他获取的是没有的没有的值嘛,对吧,没有没有新数据,那我们干什么呢?动态的来改一下这个表六咱们班。
10:15
有谁啊,有天一是吧。天意。好来这个时候肯定还不会平移,还不会出来对吧,那我一保存呢。应用改变对吧,哎。填一就有了吧,啊,填一就有了,那下一次它保存的应该是ID大于六了啊,它每次执行的搜狗语句呢,它要隔五秒就会执行一次,因为我们这个地方delay啊写的是。五秒一次吧,哎,五秒执行一次,五秒执行一次,就是说这些日志呢,你会看到,如果说你那个地方不写那个D类,或者说你那个D类自间题的,就是你写在哪了。你写在那个if判断里边了,你想想看这块的日志。
11:02
能想象它的一个速度吗?就是你没做那个现成的一个延时,他就一直狂刷。啊,所以说我们要把延时拿出来,拿出来,无论他有没有数据,我们都让现场停一下啊,都让线程试一下,试一下OK,然后这张表是我们的那个数据表,然后你看下这个面料表就变成了插入一条数据,然后变成六了吧,啊变成六了啊是这样的,这个就是我们每一次他去读一下这个表里边数据,然后干什么呢?然后拼接这个,拼接到这个位置。啊,就ID大于六的,然后把数据全部打印过来啊,同样的,你这个表里边如果说有动有动态的一个增量数据的话,第七条应该是一个随便吧。还有还有谁啊,我看到了一个小风是吧,还有静静还是静静,静静是吧,你是不是想静静了,班长想静静,我感觉班长比较冷静啊,小风就是出来了吧,啊第七条对吧,那这次那个C,那就是ID大于七了,ID大于七了是这样的一个数据,就说监控这个,呃,MYS里边数据,然后不断的去做更新,但这一块呢,有一个功能我干掉了,注意一下什么功能呢?大家有愿意去做的可以做一做,我给大家提一下什么功能,就这里边有一个属性我没用,但是公司当中,我当时给他们提供的代码是用了就这个。
12:25
每次最大的条数,那这是什么意思呢?你买搜个你第一次监控的时候那张表,可能之前提过有一百万五百万条数据吧,你不做这个东西一下子爆了,能理解这个事情吗?所以说你在工作当中,你一次读个1000条啊,内存,因为它内存比较大嘛,读个1000条5000条啊,哎,你怎么做这个事,那其实比较简单,就是说那个拼接缩,主要是改拼接缩那一块,对吧,第一次如果是零,就是说它它怎么写VID。大于大于我们传进来的第一次是不是start from,应该还要加一个什么。
13:06
And ID小于谁小于获取出来的就是那个index,那个值加上谁啊,最大值吧。那这个地方是2000,那你这个地方写的是零到2000嘛。大于零小于2000,那第二次你里边存的值应该小于2000的话,应该是读到1999行,对吧。是这个值吧,那你拿着这个值去干什么,再加上2000对吧,就是一次读个,那就是一次读1999条了,对吧?啊,就是你先定一个值,就最大值,有兴趣的可以去改一下,也说了,主要是build query那个方法。就是说要加加一个什么,加后面加个字段了吧,这个字段就是按照ID小于一个值,这个值怎么来的,就是咱们这个最大的一个行数。
14:01
加上什么拼接上上一次的。查询的值对不对,加起来两个累加的一个值啊,累加的一个值啊,也就是说你每次查询的呢,就是ID大于X小于X加。Ma啊,这个工作干掉了,大家有兴趣可以自己看一看去去做一做啊,看一看做一做啊,核心的就是他的一个build快这个方法啊,这里边啊,如果你不想做也就算了,因为我们测试的数据量呢,你也没有什么几百万条去测啊,没有几百万条去测,不会把你的内存撑爆了啊,你就是三五条数据,十几条几百条也无所谓啊,一次过来了他也能接受。机百点也能也能扛得住,所以说呢,这块有兴趣的看一看,然后这里边这个代码啊,嗯,有兴趣的就看一看吧,我感觉你们应该也不会看对吧,没有兴趣是吧?啊但是没有兴趣可以,但是这块东西逻辑要理清楚。
15:00
因为我们是从my sol读数去,所以它要专门写一个类来读数去。你们可以干什么呢?从一个简单的开始写,就像我们所说的,这里面写一个负循环。对吧,你写个负循环,然后负循环呢,就一次发送五条数据,对吧?For循环用那个12345来封装这个even,来感受一下这个source到底它在里边干什么事啊,我们这个地方是从MYSO读出去啊,比较复杂,逻辑相对来说复杂,复杂一点是这一块。
我来说两句