00:00
给跑起来了,但是呢,那我们现在流程跑起来,其实你再回程看的话,其实这个流程其实比较简单的,对吧,那我现在我要求你们不是说把这流程跑起来,我希望什么呢?我希望你们能解决,诶昨天你们还好好的,今天跑的时候跑不了了,出问题了。对吧,有有好多同学是这样的,你看我昨天我现在在在我运行的时候还很好啊,今天来之后就出各种各样的问题,对吧,那我希望什么呢?我希望你们能很快的去把这问题给定位到对吧,就比如说诶现在N起不来了对吧,或者说现在呢,这卡不卡没有数据对吧,别的运营都正常对吧,那么这块呢,你能对吧,把这个问题我定位到,那我觉得现在呢,是我们下一步要做的了,对吧,所以说大家没事的时候呢,诶这块啊,这个数据对吧,这个日志对吧,咱们现在已经把它采集到了啊采集到了,那么具体的流程什么呢?具体流程啊对吧,那么我们现在在咱把这个东西回顾一遍,首先呢,我们有一个价包啊,这个价包呢,在我们的r tap log下边,那么这个下坡的目的呢,它主要是帮咱们生成数据,对吧,这个生成数据呢,我们其实啊,对吧,这个并没有像我们离线这样,离线呢,把数据生成直接落盘了,那么这个呢,我们是把生成数据啊,这个发送到某一个我们这个啊这个端口上去,那就把这数据啊这个生成完之后发到某一个外部端口去了。
01:16
那么具体要对我们这个数据怎么样处理呢?对吧?那么咱们呢,自己写程序来对它进行处理的,对吧?那我们现在最早的时候呀,我们是在Windows运行我的程序,那么你直接呢,在我们这里把这个数据呢,生成到我们Windows就可以,然后后来呢,我们把它从Windows,然后呢挪到我们LIS上,对吧?那么你需要打一个架包,然后呢,最后我们版本呢,是在Linux上有我们这么多台机器,对吧,都是来处理我这数据的啊,那么我现在这里三台机器都来处理我模拟生的数据,对吧?那么三台机器到底把我们现在这个数据交给谁处理呢?那么在我这三台这个机器之前呀。那么我们配了一个N这来做我们的负载均衡啊,来做我们的负载均衡,呃,那么我在使用N这做负载均衡的时候呢,那其实大家呢,对我们这个配置啊要有一个了解对吧?那么我们现在其实主要呢,N这里面有一个它的核心配置文件叫N这点Co啊那么咱们现在如果想实现负载均衡的话,那我主要改的地方呢,其实就两个,一个呢是在咱们的serve里边对我们的请求路径呢,来进行一个拦截匹配,然后接下来把你当前的请求去交给哪一个我们的反向代理服务器来进行处理,对吧?然后接下来通过我们的upstream来把你现在的代理的反向这个服务器对吧?把这代理服务器给他配置一下,注意啊,NG在整个我们现在对吧,这个整个咱们现在这这这这这个处理的一个流程中,他的角色是什么呀?他的角色呢,其实就是个反向代理,它不真正处理你的请求,就你把请求给我了,对吧,你想干什么干什么对吧,什么落盘呢,什么发送到卡夫卡呀,N这个不做这个事儿对吧?它的作用就是干什么,就是做转。
02:54
啊,比如说你给我一个A请求对吧,那我一看,诶,我现在呢,后边有三台服务器对吧?比如说这里三台服务器,我就是把你的A的请求啊给咱们这三台服务器,对来按照你的一个轮询原则给他发过去,这就OK了,具体怎么处理,由谁去做的,由咱们这三台服务器去做啊由咱这三台服务器做,那么这块呢,你要弄明白,然后接下来呢,那么咱们现在这三台服务器呢,都是把我们这个数据呢,做了两个处理,一个是落盘,那么另外一个呢,是写到我们这个卡夫卡的主题中啊,写在卡挂主题里边,对吧?然后接下来咱们把这个介绍完之后呢,那么给大家介绍了我们需要做我们这日活的需求,那么如果做日活的话呢,那其实就是从我们的卡卡里边来把我们现在呢,这个启动日志给它取出来,然后通过SPA streaming来进行处理,那么在处理的时候呀,需要对我当天的这个第一次启动的数据呢,来进行一个我们这个确认啊,去判断一下当前的是不是第一次启动,呃,只处理咱们第一次启动数据,如果说不是第一次启动的话。
03:54
啊,咱们把它给清洗掉啊,咱们把它给清洗掉啊,那么然后接下来,那么我现在拿着我第一次启动的一个日活数据之后,对吧,那接下来,那么我现在呢,可以对它进行处理,处理完毕之后放到哪呢?我们要把它放到elect search里边去啊,我们现在要把它放到我们这个elect search里面去,所以说呢,咱们给他家昨天呢,介绍了我们这个elect search对吧?Elect search,呃,那么关于我们的elect search呀,那么这里前面其实介绍了很多对吧?什么基础啊,什么特点呀,对吧?像这些东西这些呢,都要大部分了解,那么你现在你得知道elect是什么,Elect它本身是一个搜索引擎,那么另外一个还有一种说法,说elect呀,它是一个数据库。
04:34
啊,这种说法其实也没问题,对吧?大家想想我们现在A设置为什么叫搜索引擎呢?是不是它搜索的能力比较强呀,为什么搜索能力比较强,是不是因为底底层它的存数据的时候,它使用了咱们盗版索引啊,对吧?那你想一想,你要想这个搜索能力强,那必须呢,得按照它的一个形式来进行存储,对吧,就说我不是说上来直接就搜索的,等说原来啊,我现在在MY搜Q里边,我这搜索能力呢一般,然后后来呢,Ali过了,直接还是搜索MY搜数据库,它的能力强了,那不是这样对吧?它是配套的,你要想让我搜索能力强的话,那么这个时候你在存数据的时候就得按照我的形式呢来存,对吧?那么咱按照什么形式呢?就是倒排索引的形式,什么叫倒排索引这个东西呢?其实啊,你可以去这个看一些资料,它没有一个明确的概念,说什么叫倒排索引,哒哒哒就下一明确的概念,对吧?倒排索引它针对的是谁?它针对的是一开始我们传统关系数据库,它存储数据的方式,对吧?原来咱们传统关系数据库在存放。
05:34
据的时候,那么可能呢?哎,我现在这里边要存放数据对吧?要放数据对吧?那么什么呢?我当前我这个单词对吧,在哪一条记录里边对吧?那肯定他是这么来存的,这是我记录对吧,比如123,然后在咱们123记录里边有哪些单词,哪些单词哪些单词,哪些单词哪些单词对吧?传统关系数据库啊,它是这么存的,但如果说我现在要采用道别索引及存储的话,那它是怎么做的呢?它是先存放咱们这个单词,然后接下来你这个单词呀,在哪一个我们的记录中出现了,它在放什么呢?放记录对吧?就这种存放的形式对吧?诶叫咱们这个倒排索引,那么它这个特点大家想一想对吧?原来如果说我使用我传统方式对我这个单词行查找的话,那你怎么办?你是不是得对我们现在这个表来进行一个全表扫描,对吧?而且呢,在咱们当前某条记录里边,你肯定呢,也按照逐字扫描的方式来对他进行查找,但如果要是盗白索引的话,那么直接上来我就可以知道我当前的单词在哪一个我们这个文档里。
06:34
里边对吧,在哪条记录里边,它可以很快的定位到的啊,可以很快的定位到的对吧?那么所以说呢,它的一个查询能力很强的,而且呢,咱们在存储的时候呀,它会对我们这个数据来进行一个分词啊,对应分词,然后在查找的时候呢,也会对我数据来进行一个分词,对吧?这个分词呢,咱们今天会给大家介绍啊,这是关于我们现在呢,这个倒白索引对吧这块的东西,然后另外一个呢,给大家介绍几个我们的概念作为了解,对吧,一个是我们这个lun,一个呢是咱们这nurse,还有一个呢,是我们现在,对吧,它的一个叫什么呀,叫我们来search他们三个之间对吧,它的一个关系对吧?其实最早的时候呢,就是咱们到cutting对吧,注意啊,这个人你得知道对吧,哈杜的作者啊,哈杜作者,然后咱们Lu和咱们这个那的一个作者对吧,他俩啊,就是他们啊,他这个人对吧,然后呢,他最早的时候写了一个我们全文搜索的一个功能啊,其实只是一个我们这个接口,你可以这么来理解,提供了全文检索的功能。但是一。
07:34
开始在咱们这个用的是这个loss,使用的起来还是比较麻烦的,所以说做那个优化就是咱们对吧,然后接下来呢,那么有人用它的思想,然后呢,开发出了我们elect search啊,他elect search来进行全文检索,那么al elect search呢,它有咱们的竞品,就是和他啊完全差不多功能的叫什么呀?Solar对吧,叫大成sor对吧,但是现在呢,这个东西一般呢,这个这个没有以来四又都火了,对吧,排名现在以来40了,更靠前一些对吧,更靠前一些对吧?然后接下来咱们把al elect search呢,对吧,这个特点给大家介绍一下对吧,那么它是什么特点呢?天然分片,天然肌群,就是如果说我现在啊就装了一个节点A,那么这个时候它也是一个集群。
08:17
啊,它也是一个集群,那么天然分片怎么回事呢?分片就是我们的分区对吧?大家想一想,咱们现在在整个学习的时候啊,那么我们以前对吧,在讲什么卡不卡的时候,他说诶,我现在在数据存储的时候,它怎么存的,那么分区对吧?但是呢,到了我们那个Spark这块,那么它本身呢,是不是也有一个分区的概念,对吧?但是你在看源代码的时候,你发现对吧?那么其中源代码里边有好多源代码,它是怎么写的,什么get silence。对吧,什么number setting对吧,好像就不是分分区了,是不是就是什么片了对吧?其实呢,咱们现在这里边,我们在这个这这里边其实分片呢,和分区的概念其实一样的啊,其实分片还有咱们分区的概念的,其实是一样的啊,其实一样的对吧?哎,那么咱们现在呢,到末的情况下,它其实呢,就会对我们的数据呢,来进行这个分片对吧?那么其实除了分片之外呢,后边还有一个副本的概念,我也会大家说对吧,其实和卡卡一样,它本身呢,那么也有我们这个副本的概念。
09:14
啊,它本身也有副本的概念对吧?哎,那么接下来咱想一想,卡卡在咱们创建的时候呢,那其实我一般啊,第一个杠杠create表示的是我创建一个,我们这个要直接创建操作,然后杠杠topic来指定我们创建的这个主题是什么,然后杠杠partitions对吧。Part来指定咱们这个分居数,然后杠杠rely啊,Factor是不是对吧?那么咱现在呢,通过我们这个factor来指定什么呢?来指定我们现在的一个副本数对吧?来指定我们这副本数对吧?那么大家想一想啊,那么假如说我当前在咱们这里边儿,我这个如果是一个副本的话的一个副本,那么咱们卡卡本身它里边是不是有什么photo以及咱们这个的leader啊。
10:02
在咱副本里边是不是有follow leader啊,对吧,那咱们如果有一个副本大大家想想这个副本就是谁就是leader嘛,对吧,这副本就是leader对吧,但是我们现在呢,这会都不太一样,对这个不太一样,那么如果说我现在呢,要是我们这个对吧,这个来四的话,那么这里假如说它一个副本,那么它是在咱们原来的基础上,对吧,在咱们主的基础上,然后呢,给你来一个副本,对吧,这会和原来还不太一样了,对吧,来不太一样了,好了,然后接下来呢,咱们再往下,对吧,咱们昨天呢,给大家对吧去介绍关于我们的elect search,它的一些我们这个安装对吧,然后以及呢,我们这个K班的对吧,那么这两个关系啊,这两个关系elect search呢,它本身用来存数据,做到全文检索,那么K班的呢,其实呢,它更主要的功能是做咱们的展示可视化的,但是呢,我们现在啊,要想去操作elect search的话,那么我们操作的方式是什么样的呢?要怎么知上什么叫操作elect search,就像咱们在操作mycel的时候,我们是不是得用我标准的SQL语句来对它进行。
11:03
我们的操作呀,什么select呀,什么insert呀,Update呀,Delete呀,包括咱们创建表,什么create呀,Job呀,是不是得通过这些语句来对我们的MYSO进行操作呀,对吧?但是呢,那我们现在elect search它在进行我们这个对它进行操作的时候,它没有什么标准的circle,对吧?它是什么呢?它是基于我们的red so API来对它进行操作的,也就是说啊,你要想对我们当前elect search来进行什么操作的话,那么你给我发送不同方式的请求就可以了,对吧?那么如果想发送请求的话,那么咱们怎么发送呢?也可以通过浏览器来发送,但是浏览器发送请求的话,它有一个局限性。对吧,他只能发送get的请求对吧,但是我们现在是不是想要对吧,什么post呀,Delete呀,什么咱put呀,这些请求我是不是都想要啊,对吧,所以说呢,那么这块对吧,那你得换一换,其实还有一些人啊,在操作的时候呢,他用一些咱们的第三方工具,对吧,比如说常用的叫POS慢有这个啊posman这个POS曼干什么的,就模拟发送各种各样请求的啊,模拟发送各种各样请求的,比如说我现在想发送get的请求,在这前面有个选,有一个选择框,然后你下来一选,哎,我现在呢,发送咱们的get请求,对发送在delete的请求,你直接呢一选,那就是delete的请求对吧,然后接下来呢,那么除了我们这postman之外啊,除了我们这postman之外,那么其实呢,还有对吧,还有什么呀,还有一个hide啊,还有一个hi,那么咱们这个hi呢,大家注意这个hi呢,一般是什么时候,就是我们现在EL lesser它本身对吧,自带的一个东西啊,它本身自带的一个东西对吧,带。
12:41
是呢,这个东西如果要想用的话呢,它需要去搭建咱们NOEGS环境啊,需要搭建一个node JS环境,对吧?那么咱们现在note JS呢,那我在这里同学们对吧?那么如果说啊要搭建的话,这个比较麻烦,那另外一个呢,还有一些我们的机器呢,可能搭建不起来,对吧,这个容易出问题对吧,这容易出问题对吧,所以说呢,那咱们现在呢,我们用另外一个,用另外一什么呀,就是K班呢,就是K班呢,它除了去做可视化之外啊,除了做咱们这可视化之外,对吧?那么它还有一个功能是干什么呢?它还有一个功能对吧,就是咱们这提供了一个叫DV tos对吧,开发人员工具,它可以帮助我们呀来进行对吧,我们这个对吧,这个发送我们现在相关的一些操作给联系search试对系测进行操作,对吧,你得知道在干什么的,对,你也知道干什么的,呃,这个呢,是关于咱们昨天啊的讲的这些内容怎么样,这个来K班的都装好了吗?
13:37
都可以了是吧,那咱们接下来就往下面来看一看,对吧,它的一些基本的一些使用啊。
我来说两句