00:00
同学们,接下来我们给大家讲解一下Spark streaming框架和ES软件的集成,如果你们没有听说过Spark的话,这个你们不用看,可以跳过去,好吧,那如果你们知道这个败的话,你们就应该知道它是基于GALA语言开发的,所以我们后续的开发环境是需要把GALA准备好的,那之前呢,我们将这个ES软件跟s spring date的框架做集成,目的很简单,为了简化咱们的数据操作。你的索引呢,你的数据啊,我们可以转换成对象的操作,这样的话有了一个映射关联之后,操作起来方便。可是呢,我们接下来讲的SPA dreaming的这个操作呢,这个集成是什么呢?它的主要目的是将我计算的结果保存到ES当中,这个纯粹就是两个框架的相结合啊,代码当中的一种结合,好吧,同学们,来咱们开始看一看,咱们看下怎么做啊,首先第一个先创建明文项来。点击new,创建module,然后选择下一步,这边我们选择一个now,然后写上ES,我们叫做Spark,咱们叫stream好了。
01:03
改完之后把这个去掉。然后下面这个地方呢,改一改叫com.at归苦点我们的ES,然后这边把这个去掉。好了,退掉完成以后点击它,那接下来呢,我们要添加咱们的依赖关系了,依赖关系当中啊,我们这里是需要我们的Spark呀,包括ES都是需要的啊来拷贝。好,那我现在呢,给它刷新一下啊,给它刷新啊,当我们拷贝依赖关系之后呢,我们给它刷新,刷新完成以后,我们在这里面来添加我们对应的程序即可,首先我们这里呢,用的是18STREAMING,所以我们把基本的代码给它写出来,来在这里面我们来啊,点击它new,我们这里呢,要创建skyla程序的话,那首先点击我们的增加框架的支持。来把这个给它勾上,勾上以后点击OK,嗯。好了,那我们点击new创建skyla程序,我们就写上,嗯,咱们叫Spark steming啊,咱们叫ess来做一个测试啊,然后我们选择object。
02:11
选择完成以后,我这里忘了写包名了,那么这里呢,我们来点击new创建个package,我们叫com.at硅谷点ES。好,把它拖进去。拖进去以后就可以了啊。再来写上一个main方法,Mainin方法当中啊,首先我们来写上,咱们叫做嗯,Spark com。New叫Spark com OK,点一下我们叫做set,嗯。倒一下,然后呢,这边我们叫setmaster,给他一个我们用来做本地包装啊,咱们叫做local,嗯的星。揉口星好。接下来我们再来点,我们叫set APP内我们就叫ES好了。点完之后来吧,我们叫SSC,我们等于new streaming contest还记得吗?嗯,好,然后把我们前面的配置信息呢给他拿过来。
03:06
但是由于啊,咱们的这个Spark streaming啊,它其实是什么呢?它是一种我们处理流式数据的框架,所以呢,我们还需要加一个采集周期的概念,我们给他一个second。好了啊,把这个呢,我们来咱们的second。嗯,好,我们写上一个三,嗯。好了啊,来。跑一下。那完了以后,那我现在呢,我就可以通过我们的socket来获取网络数据流了,以点我们叫做socket,诶tax stream,然后呢,在这里面呢,我们就给大家写上了,我们叫做local host积,然后呢,四个九的端口可以了,写完之后来我们VR回车,那你拿到的其实就是我们的什么a data,那个stream叫离散化硫对不对。那么你拿到以后我都不用管别的,你只要拿到我往ES里面插入不就完事了吗?对不对,所以我们往ES里面插入的话,我们点我们叫做for it r DD,然后呢,把每个RDD给它拿到,拿到以后我挨个遍历其中的数据,所以RDD点我们叫for it。
04:14
啊,咱们叫for it,你这个for each呢,你就把每条数据就拿到了,拿到了以后我说过了,你要往里面放啊,那这个时候我们需要用到什么呢?那个高级的什么客户端,所以我们写上new,我们叫做rest,还记得吗?Hi啊,记住啊,我们这个SC里面是可以用那些Java代码的,得把那个plant构建出来。然后呢,它里面呢,需要什么呢?叫rest我们的client,大家有没有印象咱们叫client啊,然后点我们叫做build,嗯。把这个拿过来,我们叫做builder,然后呢,写个new,嗯,咱们叫做HTTP,咱们的host,嗯,然后呢,里面写上咱们叫做local host,然后呢,9200还记得吗?然后后面我们写上叫HTTP。
05:02
好了,点完以后你的客户端不就有了吗?对不对,好拿过来发过来,我们叫做嗯,Client OK。改完之后,那你后面的代码是不是就感觉很熟悉了,同学们他们的这个client是不是来我们的client点我们叫index呀。这个index是不是应该有一个请求叫做index request,还记得吗?诶,我们叫index,我们的request,把这个拿过来给它一个new。好,那我们放到这,我们叫request,嗯,这个啊,都基本大同小异了啊,把它拿到这儿来,嗯。然后呢,我们的request request我们的,嗯,咱们open点,我们叫default对不对,哎,咱们这么写啊,写完之后,那你现在的这个我们的request呢,我们来写上,咱们叫DR,我们现在呢,得往里面添加东西吧,对不对,那么你添加东西的话,我们首先我们得知道你添加什么样的内容,比方说你的索引是什么呀,你的数据是什么呀,这些我们不都得知道吗?对不对,所以来咱们写上啊,咱们第二。
06:08
咱们叫source source呢,我们首先这个点我们给它准备好啊,然后呢,我们还有来拷贝,拷贝以后呢,点我们叫index。这个index呢,我就写上,咱们叫,嗯,我们就随便写一个吧,或者说咱们就叫product行不行,就是我们之前不有个product吗?好,那我们再来,我们再给它写上一个点ID的ID我就写上了,哎,我想想咱们能不能够把你传进来的数据分解一下,分解成两部分,一个是ID,一个是数据呢,所以来咱们给它放过来,咱们点split。我们用一个空格啊,把数据给它分开。给咱们这么写,写完以后呢,把分解之后的这个数据的第一个呀,咱们认为是个ID好不好,所以呢,我们写个SS啊,写上一个我们的这个零啊,写个零好了,那这样的话呢,我们的这个组件就有了,然后呢,我们的source里面放什么呢?我们的source里面就放我们的Jason字符串了,所以来我们写上叫Jason。
07:08
它等于什么呢?它等于咱们有一个叫多行字符串里面我写上一个发括号,然后呢,我写上咱们叫做。然后再来这个呢,我们就写上了Dollar符,我们叫SS括号一就行了,比较简单了啊。好,那我把这个Jason我放到这边,到这边以后呢,接下来我们写上它的格式呢,应该是我们的Jason格式。咱们的节省啊,咱们的节省或者写错了吗?嗯,应该没有写错吧,没有写错的话应该是我们的节省,但是怎么好像不对呢,嗯。呃,我看一看咱们这个导是不是导错了,嗯,把那个我们这边可能是不是导错了呀,哎,这个东西啊,把它去掉。去掉以后重新给他倒一下。倒一下以后呢,诶过来,诶我现在的这个地方是不是写的不对呀,他怎么给我哦,我写错了,我说怎么写两遍呀,应该type啊。
08:04
好了,我倒一下,我说呢,嗯,行,不管它这个不对啊,嗯。好了,这个写完了以后,咱们的request索引呢,ID啊,数据就都有了,都有了以后你个request放到这儿,那我现在就可以什么呢?哎,得到它的响应了,所以点我们叫VR,咱们叫response,那么你的response呢,我们直接看结果是不是就可以了呀,哎,来咱们看结果,咱们的这个地方呢,去掉,那咱们叫做它咱们叫response。然后呢,点我们这里呢,叫做嗯,At result,好了,诶就这么写啊,点完以后你把这个客户端给它关掉就可以了,来第二我们叫做close,行了,同学们其实这么写完就可以了,因为我们前面呢是我们的SPA streaming,我们后面的是我们的ES,把我通过SPA streaming得到的数据跟ES做一个集成,其实就够了。
09:00
我们将我们SPA streaming所得到的数据直接往ES里面放,其实就够了啊,那接下来呢,我们要把那个SSC呢,给它写上点,我们叫start启动采集器,还有我们SC要等待它的结束。所以。好了,那接下来呢,我们把这个黑窗口呢,我们打开一下黑窗口打开,打开以后呢,我们打开那个NC来啊发送数据,咱们叫杠LP4个九。好了,回车。回车以后,接下来我们要做的事情是什么?我们要做的事情就是发送数据和接受数据了来运行。运行以后我们看结果啊,那这时候呢,我们会不断的去接收数据啊,咱们稍微等一下。好了,同学们,我们现在的这个请求啊,又在等待接收了,那我现在呢,就来发送,发送的时候大家看啊,我写个100。
10:06
一我们写个叉叉叉叉叉,或者说这个东西随便写回车,回车以后这个时候呢,如果不出任何问题的话,它应该会保存到我们的什么哎ES当中,我们来验证一下来。我们这边呢,就给他查询一下啊,查询查询以后往下看,往下看,大家看一下啊,咱们往下走往下走,咱们叫product看有没有啊,来我们这边我看看啊,咱们这边写上一个它吧,下划线do,我刚才给的是什么呢?咱们叫做1001吧,我记得嗯,1001,所以呢,我们这里写上啊。查一下我们斜杠叫1001,然后呢,我们来查一下,查完以后,哎,大家看有没有发现已经进去了,哎比较简单,但是它确实已经进去了,好吧。
我来说两句