温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
刚刚咱们把那个word count已经写完了啊,你会发现呢,里面的很多方法呢,跟咱们之前的RDD的方法非常的类似,对吧?所以我相信这个理解起来并不困难啊,并不困难,只是有一个采集的这个概念在里面啊,这个稍微的理解一下其实就可以了,然后呢,我们这里呢,还是把它简单的解析一下吧,咱们的dream呢,其实就是一种抽象,把咱们之前的RDD呢做了一套封装,是这样的啊,那么在内部实现上,我们的dream呢,其实是一系列连续的RDD的这种表示,每个RDD含有一段时间间隔内的数据,所以呢,大家会发现,比方说第一个采集周期它会形成我们的RDD,第二个采集周期会形成一个RDD,三个采集周期会形成RDD,就意味着每个采集周期都形成了一个RDD啊,RDD在源源不断的通过这个传到咱们的driver手里,那么driver拿到了RDD之后,就分解成一个一个的touch开始执行,对不对?但是我们的呀。
01:00
它如果有多个的情况下,它会把那个RDD呢,通过我们的方法在不断的做转换,这就好比什么呢,像咱们之前给大家讲那个呃,RDD的时候,我们说了像水管一样,那咱们的数据呢,就像我们的什么,哎,我们的水流一样,所以源源不断的经过咱们的水管,对不对,诶就是经过我们的那个RTD的方法呀,但现在呢,咱们包装了以后啊,就这个感觉,什么感觉呢?就是我们的Dis stream呢,是个管道。然后呢,我们RDD在源源不断的生成过来,像个水流一样,对不对,哎,通过这个管道就这个意思啊,所以啊,它这边就跟管道一样,不断的往下执行啊啊,那么整个计算过程呢,它是由Spark引擎来完成的啊,所以大家可以看到我们输入的数据,然后呢,通过sparks追命在做一些微量那个嗯,V批次的数据操作,那通过18引擎来做计算就可以了,所以这些东西啊,只要能够明白一个我们的基本原理,而且这个图形能搞明白的话,基本上写起来代码倒不是很困难,好吧,同学们,嗯,把咱们前面的这个代码啊,咱们停一下啊来。
02:04
把咱们这个代码呢,基本步骤呢,给它记清楚,其实就够了啊,你看这个基本都是一样的嘛,对不对,只不过咱们这里多了一个socket test stream对不对?诶通过一个特定的方法来得到咱们的Dis stream,还有一个就是我们最后的这个print呀,这个打印大家看一下,我点点完以后再点,点完之后你会发现它里面就会打印咱们的这个横线和时间戳,这个正好呢,是我们刚才在控制台上看到的那个计算的时间点,对不对,就是每个时间点它会进行操作,所以呢,这就意味着我们调这个方法才会有打印,那如果你不调这个方法的话,那个时间戳是不出来的啊,有的同学老师你看我怎么没有实验戳啊,有可能就是你没调用这个print的方法,你调的是别的方法,那当然就有区别了,对不对,诶就是这个问题啊,还有呢,就是我们两个这个方法的调用了,一个是我们的start启动采集器,第二个awayit termination,这是我们等待它的关闭,哎,这两个方法你别。
03:05
忘了就可以了啊好,这个word count呢,我们就简单的解析到这里了啊。
我来说两句