00:00
好,接下来呢,我们来看一下卡夫卡呢集成对应的link,那弗link呢是当前在企业里面非常非常重要的一个流失框架,跟卡夫卡呢配合呢也是非常非常紧密的,那接下来我们来研究的就是弗雷作为生产者把数据发送到卡法集群。还有呢,弗link作为消费者,从卡布卡的某一个topic来消费对应的数据,那我们一个一个来做哈,我们先来做前半截,弗link呢,作为生产者把数据发送到first主题里面。我们开始整呗,来创建一个工程啊。好,我们创建一个maven项目哈,Next。放到这个PROJECT2里面。Oklink卡。创建完毕之后啊,首先呢,我们导入一下哎,外部的一个依赖dependence。Dependency,那我们首先找的第一个呢,就是这个link-Java。
01:04
杠这了,嗯,它那对应的org阿帕奇link啊,版本呢,1.13啊。那下面再导入一个依赖,对应的就是这个flink。Streaming,比如说流式相关的处理,然后来。那再来一个。还有对应的这个flink。杠客户端相关的操作好。再来一个,还需要一个连接,对应的卡不卡的那link。诶,Connect连接卡卡过来过来之后,哎,这四个依赖啊,导入完之后就OK了啊,那下面呢,我们还需要导入什么呢?哎,还需要导入对应的这个叫呃,Log附件啊log附件然后来。在对应的resource目录下创建一个文件。好。把对应的logo附件倒过来,方便我们打印日志啊。
02:02
那这里面呢,我们只打印这个I卓级别啊,如果是in份级别的话,信息太多了啊,当然了,你在调试阶段,你可以把这个呃,改成这个in级别。行,那这个完事,那下面往下走,下面呢,我们再创建一个包名啊,Com at硅谷link啊。报名。那拿过来之后,下面呢,我们开始写一个link生产者,好,那这个名字你看我叫link卡普卡PRODUCER1加一个一,这里面一定要注意啊,这个名字呢,如果你只写flink KA producer,其实系统也有一个叫link kaa producer啊,会容易重名,那你后面会报错啊,所以这个名字呢,不要跟系统的名称一致啊,所以说我加一个一,这个地方呢要注意。那来到这里面。创建一个。那下面呢,开始写代码,May没方法,那在这里面我们要干什么事儿呢?第一件事,A、获取环境。
03:02
哎,护理环境。第二件事儿,哎,我们准备一个数据源。准备数据源。第三件事儿,第三件事儿啊,我们要添加对应的数据源。第四件事儿,执行代码。那首先来看一下啊,你写一个flink程序,你首先得获取对应的上下文环境,那这个环境怎么获取呢?STEM1你发现,哎,这里面没有后续的一个提示了,比如说我们需要的是ex,你看没有了,没有的话呢,这里面你先把这个报名啊给倒过来。把这个倒过来。哎,它自动导包啊,有点小问题,Ex exc啊,就是它通过这个环境变量点get,哎,获取对应的环境。两半。拿到之后呢,改个名字叫env啊,拿到这个环境之后,我们要塞一下它对应的巢数啊,Env。
04:06
第二,Set。哎,是它那这个值呢,设置多少呢?那你要生产的主题它有几个分区,哎,那它有三个分区,那这个地方就是三个槽,比如说你这边呢,准备三个槽,哎往这呢,卡帕for的主题里面三个分区里面去写,那这样的速度呢是最快的啊,1:1好。那行,那这个搞定。那这完事之后呢,下面呢,我们准备数据源,准备什么数据源啊,哎,我们准备啊,将这个集合里的数据。作为整个流的一个输入,哎,那我们形成一个集合流,哎,然后呢,把这个通过这个集合流添加这个I的。艾,这个think啊,输出输出谁呢?把这个卡法生产者放进来啊,这样去处理啊,比说我们先准备数据,你要读谁,那数据的话呢,就是因为点我们这里面呢是from集合,那你这里面就需要一个集合,好那就准备一个集合呗。
05:05
一个list放类型数据。啊,那这个呢,叫一个叫word list吧,啊集合,那word list里面添加上对应的数据,比如说我们添加的是hello。再来再添加点的。那我们添加上对应的叫hello艾特Google吧,那艾特。然后把这个集合放到这里面去。小棒,这样我就来了一个流啊,来了一个流,那这个流呢,我们就叫stream。拿到它了,拿到它之后,后续呢,我们就用这个流。去添加I的I的一个sin,哎,那我们就输出到目标地址,那输出到哪里呢?哎,我们希望输出到对应的叫卡法生产者。输出到这里面,那我现在需要一个卡法生产者对吧,那你就准备一个卡法生产者。
06:04
创建一个。生产者,那怎么创建呢?哎,你有一个。Flink卡不卡?Producer好哎,放他那放它的话呢,那后面这里面我们需要传入对应的一些参数,那比如说我们传进来第一个参数呢,就是这个,呃,Topic对吧,给他一个topic。First。好,那下面呢,我们再给谁呢?下面我们需要给他一个序列化啊和反序列化的一个模板类,叫你看size啊模板类,那这个模板类呢,其实有啊有什么呢,有一个。叫simple。好,就他。那这个呢,是啥意思呢?还记得我们之前写代码的时候,是不是你用一个跑跑里面需要对这个key啊和value进行一个序列化呀,那你是不是感觉相对说要麻烦一些,哎,如果你觉得麻烦的话,这里面它提前已经帮你创建好了,哎,关于实际类型的模板,那这个呢,你只要把这一写就不再需要设置它对应的K的序列化和Y轴的序列化啊,就是省事了哈。
07:14
那后面还有一定的参数,还有个什么参数呢?这里面还有一个叫purpose啊,Purpose还是有的,那需要一个purpose,你就得给他一个了。另外一个。啊,Part。需要啥给啥,哎拿到它之后呢,你把这个值往里面一放。小包。这样呢,我们就得到了一个什么呀,哎,这样呢,我们就得到了一个卡卡producer啊。拿到了,那拿到之后新债还有点问题啊,有什么问题呢?你这个prop是不是得进行设置,为什么要进行设置呢?你想你这里面有一个bootru server你没有配啊,你不设置它的话,你哪知道连接到哪一个集群呢?哎,这个呢是必须得进行一个配置的啊,那这个呢,就是producer。
08:02
Config。第二,What swap server。那这里面仍然是要配HIDEOP1102。9092。HIOP1039092。哎,这样就OK了,正常情况下你这里面是不是还得配置对应的K的序列化和Y流的序列化呀,哎,那这个里面它已经帮你完成了啊,这个就OK了哈,行,那这个呢,必须参数拿过来,那下面这个kaa producer往哪放啊,哎,就往这里面放对吧?哎,作为它的一个啊输出的目的地,比如说你这里面的集合数据输出到哪里呢?哎,我输出到卡夫卡的生产者里面去,那就可以了,那最后一个呢,是进行一个执行,那就是inv点啊执行。把它异常抛出去。哎,这就是整个一个过程啊,那我们稍微梳理一下啊,梳理一下过程,首先呢,第一步呢,一定是准备对应的环境,这是必备项,那下边呢,你这个卡布卡作为生产者,你要读数据,那你得准备对应的数据源,那输据源呢,我们通过集合的方式来获取对应一个流啊,那这个流呢,未来我们要往出输出,那输出到哪里,我们需要一个卡法生产者,那好,那这块呢,就创建一个卡法生产者,那创建过程当中,那这里面第一个是主题,第二呢是这个序列化和反序列化啊,对应的模板类,那之后呢,是一个purpose啊属性配置信息啊就OK了。
09:25
那最后一步呢,就是对应的一执行就可以了,那下面我们要往这个first里面发送数据,那我是不是得开启一个哎,First主题对应的消费者呀。那就来一个呗,来一个对应的消费者。变卡不卡?反正。很猛,杠杠不疼。Stop。Server。Hiop。1029092好,那下面呢,杠杠。Top一个first走。现在呢,我就消费这个复制主题,那看我能不能发送成功走。
10:08
看这边呢,我就收到了对应的一个数据,知道吗?哎,这个hello爱硅谷啊。
我来说两句