- 00:00 - 好,呃,那我们把同样的把昨天的内容呢,做一个简单的回顾,昨天呢,我们是开启了这个的一个学习啊,Form的一个学习,呃,首先呢,我们先了解了一下,到底是在处于大数据的哪一块,对吧。它是传输框架啊,传输框架,因为我们之前说了大数据这块呢,所有的技术解决的是三个问题,对吧,海量数据的传输存储和计算啊,他是负责这个传输的,他不负责存储数据。也不负责计算,也不负责计算啊,那有同学可能在想,这中间不有那个什么。China,内存China,还有文件China fair China,不好意思,这个都是属于中间件,它数据传完了,传到SIM这边了,这个数据就干什么。删掉了,也就是说事务完成了之后,这个数据就已经删掉了啊,它不存数据的,你想再拿拿不到了,已经没了啊,因为你想想看,我们就不说这个非China,假如说就memory China,其实这两个China它的一个功能应该是一样的,对吧,只不过说存储地方不一样。 
- 01:04 - 那我们想的,那看到如果说他数据存在里边永远不丢,这这是不可能的吧,啊,那你内存肯定不够用的啊,肯定不够用了,所以呢,它不是存储数据方向,更不能做相应的一个什么分析了,因为来一条数据就传出的,来一条数据传出去了。对吧啊,他没有什么做分析的一个可能性,做分析更多的是把很多的数据归一块,看他们的一个内容吧,什么com呀,Some等等这些内容啊,所以呢,它不是其他的两个事情啊,就传输的,而且呢,这块当时我们看到这个是官网上其实第一句话。对吧,啊,英文翻译过来的说这个他提供的是一个高可用。高可靠分布式的,OK,那第一个。高可用,高可靠。我们有负载均衡,有什么故障转移对吧?啊负载均衡故障转移还有一个分布式。 
- 02:00 - 那我们昨天好像就在102上来了一台,对吧,其实是可以在102,我们之前还举了个例子,就后台服务器有很多对吧,你每一台都要做去启动一个A着的,然后要汇总啊,要汇总到一块吧,啊今天呢,我们就能看到这样的一个案例啊,看到一这样案例给它汇总到一块,也是一个分布式的来采集数据的啊,不是说我只能从某一台机器上去采集,哎,我是每一个A的只能从一台机器采集,但采集完了我们可以给它干什么?通过我们整个这个拓扑结构给他汇总到一块儿啊,这个也可以啊,这个也可以,然后呢,它是这个日志采集聚合和传输的一个系统,注意这里边其实官网上说了它叫log data对吧?还记得吧?啊有人试过传那个什么视频PPT图片这些东西吗?没有是吗?啊可以试一下啊,它会报错啊,它会报错只能传这种类似于这种文本数据,你要注意一下,然后之后我们聊的是为什么要用这个。 
- 03:01 - 为什么要用这个服母,因为是这样的,考虑到这个问题,嗯,因为我们数据啊是落到后台的,但是最终我们要分析是不是放在HDF,或者我们所讲的放在什么have呀等这些地方吗?啊放在大数据集群里边,或者说呢,你要后期学了SPA,要把这个日志采集给SPA啊,去做预算啊,无论采集给谁,你从本地分电系统是不是要。放到idfs对吧,当然你本地文件系统放到ids,我们可以用哈。杠。FS杠库的吧,可以啊,每天吃一个,但是我们说这样的一个效率太低了啊,你要做离线,如果你公司当中只有离线计算啊,反正就是做的是头一天的数据,那无所谓,你用这种方式也可以啊,不的也可以,那更多的,因为我们后期考虑到要有实时计算。对吧,你不能说你产生了一条日志,购买了一条内容之后推荐一两天后才有推荐结果,这个不太靠谱了,对吧?所以呢,我们要实时的将这个数据采集到我们的一个啊,从本地磁盘采集数据到我们的IDF,或者呢,采集给我们的一个Spark啊这个内容来做一个相应的一个管理啊,相应的管理之后是架构,那现在呢,我们知道了,它里面核心的有三大组件。 
- 04:21 - South China加think啊,每一个任务呢,是一个A,每一个任务里面呢,应该有这三个组件吧,啊有这三个组件,其实后面我们学了有一些组件之后,它有两个东西也能正常工作啊,只要有两个也能正常工作啊,比较特殊的就是有一个东西呢,叫卡夫卡开的啊,我们后面就会去学卡夫卡,到时候呢,因为对接卡夫卡这个地方,卡夫卡的生长环境当中,我们之前也提过。跟大家说过,大数据整个我们所学习过程当中排名前三的一个框架。SPA have就是卡夫卡吧啊,卡布卡是非常重要的一个框架,当我们学完卡夫卡之后呢,我会带着大家把跟卡夫卡这两个框架给它整合到一块,因为生产环境当中这样用法还是比较多的啊,我们会用到卡不卡China,还会用到卡不卡S,还会用到卡不卡S啊,就卡不卡这一个框架,它对于form来说,它有s China这四个三个组件都有卡卡这个种类的,但是现在我们没法用,因为我们卡普卡没学,所以呢,等我们卡卡学完之后,我们要把这个东西再给它扩展出来,因为生长环境当中用的还是比较多的啊,这三个内容。 
- 05:28 - 啊呃,那到到我是讲卡夫卡China的时候,你就会发现,其实这三个组件啊,诶取两个也能工作,取两个也能工作,但是大家想一下,我说了取两个也能工作,他一定有哪个。一定有China了,一定有掺了,一定有了,你可以没有。你可以没有,但是只有两种S加什么?卡不卡China,或者说是卡卡China加某一个啊,这个就是China是必须要的做缓冲的嘛,对吧?啊做缓冲的如果没有China直连。 
- 06:09 - 那不就不靠谱吗?这个事儿对吧,能听懂啊,后面呢,我们能看到具体的这个。数据要求啊,数据要求就是他的一个地址上面都有这个内容啊OK,那之后呢,是我们聊的这个A,还有source,还有China这些,那现在大家记得有哪些东西啊。搜索有哪些?我们用过的就是你们说的网猫是吗?啊,你们昨天说的,我问什么名字叫网猫啊,OK,呃,这是一个NC是吧,是一个通信通信框架啊,被称为瑞士军刀是吧?啊瑞士军刀我可以去了解一下这个内容,它里边呢,有很有很多这个参数,有很多参数,这第一个我们用了,然后呢,EDC。我们用的注意是T-F啊,它其实呢,可以跟一个脚本,因为是一个执行文件,只要你是一个command就行了,我们是不是用了ec之后,它要容测一个command,一个命令吧,只要你这个命令可以读数据,是不是都可以对吧?啊都OK ex ec这个东西啊,更多的是用于测试啊,用于测试,因为它问题太大了,一旦这个东西挂掉了。 
- 07:22 - 就问题有了吧,啊第一个就是你如果说没有写杠C加零,就是注意啊tell-F。可以再加一个杠C加零这个参数,这个呢表示从头从头开始补,假如说我们没加这个内容,那一旦挂掉了会怎怎么样,会丢数据吧,啊会丢数据,有很多同学说,那诶正好我这个这段时间没有生产数据。对吧,你不是说丢数据吗?我没有生产数据,就是我挂掉之后没有数据,新数据产生,它会有什么问题啊。是不是多读十行啊,对吧,因为默认的它是读十行,那如果说我写了这个参数呢。 
- 08:08 - 一旦挂掉之后又重新读吧,又重新读重复度,那这个就问题太大了,所以呢,它更多的用于这个测试环境啊,它要杠F这种方式啊测试环境,因为它比较方便对吧,比较方便写的东西比较少一点啊好,这个是AC接下来的还有哪些,它是干什么用的。他是监控一个文件夹,然后把文件夹里边新文件给上传了,对吧,而且是整个文件上传的,整个文件上传的,一旦上传这个文件就不可更改了。这个不可更改,不是说你真的不能说改里面内容可以改,改了之后对于来说没有用对吧?啊没用是这意思,而且他上传完之后,把这个文件还改了个名字对吧?啊加了一个后缀,这个后缀呢,你可以自定义默认的是不是complete的啊,当我们自己传带这个后缀名的,它是不是也不上来啊,啊也就是说他就简单的做这个后缀名的一个什么。 
- 09:07 - 校验对吧?啊,简单的做后缀名的校验,不是说这个后缀名它自己添加的,跟我们手动添加的有什么区别,没区别对吧?啊,这个是director,它这个核心内容呢,就是刚才我们所说的。监控一个文件夹,然后把里边的新文件呢,整个的上传,它整体的一个效率比较高,吞吐量比较高啊,因为它是一扫一个文件啊,一扫一个文件啊,这个是我们所讲的一个点啊,如果生产环境当中有类似的需求,我们考虑它,然后之后呢跳D对吧,太D这个跳D。干什么用的,可以监控多目录多文件对吧?啊,它是不是可以监控多个文件,而且这多个文件可以来自于什么。不同的目录对吧?啊,不同的文件目录这个是可以的啊,这个可以的,但是更重要的不是说他经控多个,因为多个这个问题我们可以用多个source来解决,假如说你有三个文件要上传。 
- 10:05 - 啊,它这个太电压的,这个不支持说同时监控三个文件,那我们可以怎么做,我用三个soft对吧,做聚合,虽然我们现在没有还没有写这个案例,但后面会有啊,用三个也能做这个事儿啊,所以呢,这个不是说它的一个重点,重点内容在于我们说的它有什么功能,对断点续传的一个功能,这个就非常重要的,因为我们所看到的这个弗姆直接对接外部的这个数据源的,也就是说对接这个文件呢,它这个A的呢,存在什么。单点故障的一个问题了,那既然存在单点故障的一个问题,一旦挂了,我们要考虑挂了之后的一个问题是不是对吧,那有断点续传就OK,其实他这个想法很简单,就像我们自己,我们当时没有讲这个太电压的时候问过大家,如果让你真的来设计一个,就不让你写代码,对吧,让你设计核心的思想就是干什么。每一次读完之后,把读到的位置给保留在一个非一时存储环境里,对吧,下一次读的时候呢,我就先干什么。 
- 11:07 - 访问一下那个内容对吧?啊访问一下你也没必要啊,其实真正设计的时候,他也不是说每一次都去读那个文件,因为我们看到他是不是将那个position信息放在文件里边。对吧,那其实设计的时候大家想着是不是这样读到第十行,好,我把第十行存到文件,下一次读的时候从文件把这个十加载出来,然后从十开始读,是不是这样一个想法。不用了,其实这个地方呢,可以做一个优化什么地方呢,因为这个十注意我是不是在弄内存当中写下去的。内存我第二次当前没挂的时候,我需要去访问这个磁盘的数据吗?不需要吧,我直接读内存里边的能听懂。对吧,死板的,这个是防止什么事情。防止挂掉,如果说我重新启动的时候,每次第一次启动的时候,我每次启动的时候,我要去做什么事,去访问一下这个文件吧,如果说他正常工作的,我写了一次,写了两次,写了三次。 
- 12:06 - 我接下来需要去读嘛,正常工作的时候不需要因为放在内存当中去维护,因为本身这个东西就在内存有吧。啊,本身就放在内存的,而且他是怎么存的呀,昨天看到那个还记得吗。是不是一个接S文件啊,Jas文件对吧,里面有两个东西指向唯一的一个position。有一个叫什么挨弄的吧,跟上那个什么。全全利名还记得吗?啊,不是什么全名全路径。对吧,啊,全路径明啊,全路径习惯说全类名的啊,全路径明白啊,这两个东西呢,指向一个什么。Position啊,有同学想着,那我改名字,改名字之后他是不是重新读啊,有同学做这个事啊,他他给他干什么呢?MV出去,MV出去又给他MV进来也是重新读的,因为MV出去之后呢,这个note变了。 
- 13:04 - 安诺的变了啊,所以呢,重新只是因为它这有两个东西,唯一确定一个position对吧,Position位置信息的,那我是不是其中某一个变了,跟原来的数据就不一样了啊,它的内存当中结构呢,是也是这种map结构啊,也是这种map结构啊,这个要注意一下啊呃,这个是我们所聊的这个S这块的一个东西啊,那之后呢,我们那个China呢,我们有哪些。我们所用的China对吧,但是你还要知道一个什么China啊,China其实还有一个就是我们提到的卡卡啊,卡卡能我们后面会带家去用一下啊,项目里面呢,也会用这个内容啊,就带大家再把这个东西去串一遍,那麦China呢,它的一个是速度快。但是相对来说不安全对吧,安全性比较低一点,再有缠那呢安全,但是效率肯定要比这个啊慢一点啊慢一点啊就是这意思,那卡channel到我们学了卡卡之后再聊啊再聊,OK,这是这三个channel啊channel,当然它里边还说了可以自定义什么。 
- 14:09 - China对吧,啊,可以自立看好,最后还有一个S。C,我们所讲的有那几个测试环境,用的更多的是这个logo,因为打印到后台很方便,对吧?啊,你直接可以看到结果,然后呢是吧,HDFS。IDFS对吧,我们目前用的是不是主要的是这两个对吧,我们接下来还会用那个。就是存到本地本件啊,其实跟里这块也一样,S呢配一个类型,配一个什么路径,对吧,那本地不也一样吗?你是不是也也要一个名字,然后也要一个路径啊,因为你放在本地文件系统里面嘛,对吧?啊这是这个意思,他还有我们要提到的就是我们今天重点要讲的就是对接的,就是对接,那S跟S都要加一个叫阿芙罗的AV l的啊AV l的阿波罗的这两个东西啊,做对接的啊,这对接的它是一个呃轻量级的一个RPC的一个通讯框架啊,通讯框架啊,这个是我们所说的这三个组件啊,核心的一些东西呢,你要记得住啊,你要记得住,还有就是呃,有一些东西呢,我们并没有去讲,但是呢,如果生产环境当中你用到了,或者后期用到了,你要知道怎么去用它吧。 
- 15:28 - 其实有的,这个官方文档应该用,用起来每一个组件应该不成问题,呃,难的点呢,就在于它里面的一个配置参数相对来说比较多一些。对吧,那你生产环境当中的时候,你尽量的要把每个参数去看一看。因为在生产环境的时候,你说那个memory的一个容量,你写1000个时间,然后那个事物的容量写100个,这个不太靠谱吧,对吧,根据你实际的机器资源。啊,你可掌握的资源,因为公司当中,虽然这个服务器有128个G啊,有可能公司管理的比较细的是,他会告诉你,你可用的资源大概是多多少范围给每个人都划分了,能听懂啊,所以呢,这个呢,也不是一个定值,根据公司,而且呢,你有时候刚开始不知道的时候,还要慢慢去测试啊,还要慢慢去测试这个像类似于这种属于一个调优的一个点,调优的点,因为内存大小嘛,还有其他的一些参数,我们都要去做测试的,等等这些内容。 
- 16:24 - 啊之后呢,是安装安装的很简单解压啊,解压一下之后呢,去改一下什么。张后对吧,啊张后就行了,之后呢,是我们做的一个案例啊,而且呢,我刚才回忆回顾这个source China SIM的时候,其实把我们案例当中所讲的东西都已经带出来了啊,带出来了好,之后呢,是我们所聊的他中间有两个什么。事物对吧?啊,今天呢,我们自定义single,自定义S的时候,你就能看到这两个事物。啊,你就能看到这代糕,而且呢,在我们自定义性的时候,你自己还要把这个事物加上S不用啊S不用,因为你处理的逻辑在事物之前。 
- 17:04 - 啊,在收入之前啊,这个就涉及到我们所讲的它整个的数据流的一个流程,那我们再给大家回顾一下整个数据流是怎么来的。首先接收数据,谁接收的?我们所说的source对吧?Source接收数据,它就传给了一个叫channel process这个东西啊,你记住一下它,因为你写代码的时候会用到它。啊,自定义source的时候,因为我们自定义source核心的逻辑就写的是这。你自定义的source,首先呢,你接收到数据之后,是不是要把它封装成even?然后对于我们用户来说,你传给这个什么China就行了。不需要你后面去管怎么跟拦截器进行交互。然后怎么跟China选择器进行交付的同时呢,怎么就传到了China里边这个事物是怎么做的,这个呢,你自定义source的时候是不需要管的,你给的这个。China是之后的事情由他来做啊,由他来做,OK,我们要写的代码自定义就是这块一个代码。 
- 18:07 - 能听懂啊这个吧,好,那接下来process这个东西把这个even的传给了拦截器,对吧,而且呢,我们当时画的是一个什么拦截器量啊,也就是说你在一个当中可以配置多个拦截器,当然我们之前讲过,你可以把多个拦截器的业务。给它放到什么一个礼拜,但是呢,它这样的不够奇耦对吧?啊,不够奇耦,你还是做了一个结耦,但是呢,你用多个的时候,它效率相对来说会低一点,就被拦截了很多次对吧?啊拦截了很多次,这意思好,拦截器完了之后又给了什么,然后他传给了到选择器对吧?Select啊选择器决定这个even的将来。发到哪一个channel里面对吧?OK,那这块呢,它有两种角色,一种叫reliccating对吧,副本,也就是说你这个sources绑定了几个China,那不好意思,我就直接干什么发到几个China,而且是默认的啊,你可配可配,尽量的还是配一下,因为配一下之后让人家假如说你后期看这个配置文件的时候,一看到这个内容就知道这个是干什么事的了,对吧?啊配一下,虽然默认的有啊,你还要还要找一下有没有,然后你直接去配一下,OK一点,然后还有一个就是我们所说什么Mar对吧,Multi啊,多路的,多路的,那这个一定要结合着谁来使。 
- 19:34 - 这边的拦截器啊,因为它这个用法呢,是在我们图里边要添加一个这内容,然后它在拆测选择器里边取出你的头信息做什么。选择做匹配,做选择那个第二个参数,首先它是不是配了一个什么he等于什么对吧?啊,这个是he里边的一个K啊CR,至于你叫CR叫tab叫什么东西无所谓,能听懂你在代码里边添加的K头那个地方你叫A,那你配置文件这个hi要配什么。 
- 20:08 - 要配A就行了,只要这两个是对应的就行了,不一定非得叫C啊,能听懂啊,因为这个我们可以测一下,因为官方文档昨天我们看到它是不是写的C的,对吧,那我们今天我就不用的啊,来看一下这个东西能不能成啊,也就是说这个东西呢,想告诉大家随便写啊,随便写他不是说这个孩子必须叫啊,不是这个意思啊,那接下来他第二个配表参数是mapping mapping。A设对吧,A设什么东西,什么CC呀,什么UA呀,这个东西注意也是随边形的。也是随便写的,是跟哪个地方叫做对应啊。刚才我们出K的整个头的K位置写了一个A嘛,对吧,你在Y6的位置就要写类似的CZUA等等这些东西,当然你可以不写,或者说你这个东西呢,我就叫ABC。 
- 21:02 - 配置文件里面有没有他会一直走什么默认的啊,假如说默认的没配,那这条数据就等于。丢掉了,丢掉了就不要了,就不传给China,你能听懂啊,就过滤掉了,是这个意思啊,因为没有匹配的China这意思啊,尽量的因为你自己写的时候要注意一下,要匹配上就行了,不是说他官方文档写的CCUA你就必须这样写啊,没有,因为我们等会用的时候呢,我就不跟这个一样,对吧?啊这个那不一样,是这个意思,好,那这个经过掺到选择器之后。又把数据传给了。China process对吧,啊China OK,那接下来就进到具体的哪一个channel里面了,对不对。对吧,假如说C1啊C2啊,进到了C1里边,那C1呢,是接下来跟三个组要去干什么。打交道的对吧,C组呢有三种策略。哪三种啊,默认默认的,默认的默认的,我们说我们把它叫个组,但是不会去写那个C个组的相关的配置信息,因为他只仅接受什么一个,如果说你是默认的,你就什么都不用写了,就跟我们之前所谓的配置一样吗?是这个意思啊,这是默认的。那第二种呢,Load balance负带均衡嘛,啊,自带均衡是这意思,负载均衡呢,它里面有什么随机允许啊,这样来了,当然里面还有个对比规则,对吧,假如说你网络不好啊,或者说你挂掉等等这些情况我在干什么? 
- 22:31 - 就是接下来一段时间内不访问你吧,就做这个事了,好,那之后还有一个故障转移,对吧,三故障转移,OK,那故障转移的话就是它。优先往某一个里边发。当你这个挂掉了,对吧?啊,来代替他工作的人,哎,我我看你是不是活着了,你是活着的,我提供你吗?是这个意思啊,这个意思啊,就是就是这样的,就是类似于我们一个active,一个stand,假如active挂掉了,Stand来代替它了啊来代替它好之后呢,是我们所讲的这个特结构啊,Top结构呢,刚才我们也聊到了,这个呢,简单串联,它是基础。 
- 23:10 - 它是下面我们所聊的复杂结构的一个基础吧,没有它,其他的复杂结构任何的东西都实现不了。多路啊,就China,至于这里边你选的是replicating还是marketing,这个就你看你实际的需求了,对吧?啊实际需求了啊,然后负险均衡啊和或者说故障转移都是这种方式来配吧,因为它是对于新的组织配的一个策略问题吧,啊,你是哪一种策略那也不知道啊好,那之后呢,是聚合,你可以将多个组的内容干什么。聚合到一块啊,聚合到一块,那下面呢,我们就对应的有很多的一个什么案例,对吧?啊多录的简单串联这个就不做不做测试了,因为如果说我们这三个也就下面三个拓扑结构都能完成的话,那是不是它一定是能完成的呀。对吧,因为你里面大量的在使用这个内容嘛,对吧?啊,那第一个就没有专门的案例了,所以呢,我们这下面的三个案例是对应的这三个内容了,二三四点的,二三四点的。 
我来说两句