00:00
接下来给大家讲一下我们ES软件当中的分词的概念,其实啊,我们在之前给大家讲解我们的匹配查询的时候,就提到了一个ma的一个语法操作,它就是对我们的分词做匹配查询,对不对?那就说明啊,我们ES软件在存储数据的时候,会把我们的数据做一个分词的效果,那这个我们怎么能够看得出来呢?我们其实可以看一下来。我们在这里呢,我们直接写上一个get,然后呢,我们写上一个下划线,我们这个地方它就表示一种数据分析,然后呢,我们接下来往下,往下以后我们这里会有一个分析器,那么这里呢,我们就写上它,我们就用标准的我们的分析器就可以了,好写完之后我们这里写上一个text,我们这里呢,就用标准的分析器对我们的文本做分词效果,也就是说我们默认情况下ES怎么做的分词,我们就可以看一眼了,那比方说我写上我们叫做什么呢?张三。咱们就叫张三,大家还记得我们之前的数据吗?我们之前的数据就叫张三,对不对,那这个时候你点击箭头,你会发现他把这个张和这个山就分开了,但是呢,如果你要是把它合在一块儿,这个时候他并不会给他分开,他认为是一个整体,所以咱们当时给大家讲那个查询的时候,恰恰就出现了一个这个问题,对不对啊,分值的一个效果。
01:20
而且啊,我们这里啊,其实基本上都是以什么呢?以我们的空格来做的,比如说我现在写一个I AMA goodboy是吧。OK,那我现在我去点一下,你会发现我们这里呢,就把每一个单词给它分解成它了,那这样的话,我在做匹配查询的时候,其实都是可以去做的,哎,这就是我们的一个分值的概念啊,所以我们说一下。分池的概念,哎,那如果是分词的概念,我们中文行不行呢?我写上我是一个三好学生,点完以后我点击箭头,点击之后我会发现好像不是很好,因为啊,它把每一个汉字呢,当成一个关键词了,大家可以看到我是一个三好学生,但是明显不太对吧,因为对于我们来讲,可能三好学生是一个整体对不对,最起码咱不说别的学生应该是个整体吧,但是他会发现他的学和生是分开的。
02:18
哎呀,那怎么办呢?那有没有别的这个来解析这个中文的这种效果呢?我们说有一个咱们叫什么呢?叫Chinese好了,那这个东西啊,对于我们来讲,其实啊,我们去执行一下点击你会发现好像没有什么太大的区别,所以啊,我们ES软件对于中文的分词其实表现的并不够友好,那么没有关系,为什么呢?因为我们有一个第三方的插件,第三方的插件叫IK分词器,这个IK分值器呢,是专门用来做对中文支持的分值插件,如果我们想要使用IK分值器的话,我们首先需要上网把它下载下来,下载的时候我们需要选择对应的版本,这个如果下载错的话是用不了的。
03:02
下载完成以后,我们需要把我们压缩包的东西放在我们ES软件的plug ins里面,然后呢,把它作为插件来使用,我在这个地方大家可以看到我们这边有一个叫plug ins,它就是我们ES8里面的这个目录,我打开我已经事先把这个分值器放到了我们的这个位置,那么我们重新启动ES软件就应该可以使用了啊,那好了,因为我事先已经给大家准备过了,我这里直接演示效果就可以了。那么首先IK分值器啊,当你安装成功以后,它会提供两个分值算法,一个叫做smart,一个叫max word,那这两个算法其实是有一些不一样的,那么咱们回过头咱们看一看,我们这里呢,为了使用IK分值器,我们把默认的分值器我们改一下,咱们改成叫IK,然后呢,下划线我们叫smart,这是它的一个分值算法,我们看一看我们的这个操作会得到什么结果,来点击箭头。点击完成以后,你会发现我们这个里面的一个其实是没有问题的,然后呢,我们这个三好学生也是没有问题的,对不对,诶就是这样好了,那如果是这个样子的话,那我们现在会感觉这不挺好吗?哎,可是我们还有另外一个算法,另外一个算法叫max word,那这个有什么关系没有呢?我们拷贝。
04:21
宝贝之后把这个smart我改成我们叫max word,大家看一下啊,我们这里是1234,我们现在分了四个词,那么现在我们点击箭头,你会发现它分解的就更多了,比方说我是一个,诶他这个一和个也专门的分离出来了,还有三好学生,他把三好和三好,你看这样的话分的会更加什么呢?精细一些,那么在匹配的时候可能会更什么,匹配的范围更广一些,哎,就这个意思,所以啊,两种方式大家可以自行选择,我们这里介绍一下就可以了,还有老师呀,那如果我现在希望我们查询的时候把它当成一个整体行不行呢?
05:03
我是一个三好学生,我不想把它分开,可不可以,其实也可以,但这个时候我们就需要去改变它的分值的逻辑了,因为默认呢,它的分词逻辑就是我当前的这个,如果你不希望使用它默认的,你希望用自己的,那我们需要有一个自定义的分词操作,所以我们下面给大家介绍了一下自定义的分词效果。这个自定义的分值效果呢,我们需要去找到它的一个目录,咱们找一下。在它的目录当中,我们点开,点开以后有一个configure,这个里面就是它的配置文件的地方。这里呢,我们要创建一个质点,用来写你想要分词的效果。我们的这个文件的名称应该以dic字典啊,咱们来做结尾,点击OK,点击OK以后,然后呢,在我们的这个里面,我们添加,就把刚才我们这里的文字,我是一个三好学生,然后呢给它放到这里,放到这里以后我保存一下。
06:04
改完之后,我们这里告诉你,我们还要修改它的配置文件,所以咱们找到它的配置文件在这里打开。在我们的这个地方来添加我们刚才增加的字典文件。好了,保存一下,但是由于啊我们的配置文件发生改变了,我们得重新来启动我们的ES软件,否则它是不起作用的,重启的过程我就不给大家演示了,那么我们接下来就来看一看我们当前重启之后它的效果了,那么我们点击箭头这一个三好学生不就出来了吗?说明我们之前的改动是有效的,所以啊,我们完全可以根据我们的需求自行来定义分值的效果。
我来说两句