ElasticSearch学习笔记(三)-可视化界面Kibana及ES中文分词配置

养成习惯,先赞后看!!!

前言

在之前的博客里面我们已经简单的讲解了ES的安装以及基本的增删改查,但是在讲解增删改查操作之前呢,忘记了一点就是教大家怎么安装 可视化界面Kibana .这里呢,跟大家讲一下.

还有一个就是ES的中文分词的问题.这个具体可以看我关于ES的第一篇博客,里面我详细讲解了ES的搜索算法的重要原理—(倒排索引),正是因为这个,所以我们还需要配置ES的中文分词.

可视化界面Kibana

大家使用Mysql数据库的时候肯定使用过像Navicat等这些数据库的可视化工具,那么显然Mysql有的,ES肯定也有,ES的可视化工具叫做Kibana,作用呢和Navicat的功能其实是类似的,也是帮助我们能够更加直观的观察ES中各节点以及节点中的相关数据的信息.

了解完Kibana的大体作用之后,我们就来了解一下怎么安装Kibana吧.

  • 上传并解压

    cd /opt/es
    tar -zxvf kibana-6.3.1-linux-x86_64.tar.gz
    

    这个过程会比较的长

    并不是文件大,而是因为文件的数量比较多

在这里插入图片描述

  • 在kibana中配置ES的信息

    vi kibana.yml
    

在这里插入图片描述
如果是云服务器的话,那么这里ES的访问地址就填你服务器的公网地址就行了,不用像之前 配置ES的时候填写外网地址了.

保存退出

  • 启动kibana

    cd ../bin
    nohup ./kibana &
    

在这里插入图片描述

这样我们的kibana就已经启动

这时候我们在地址栏里面去查看一下我们的Kibana页面:

IP地址:5601

即可访问Kibana的页面了

在这里插入图片描述

看到这样的页面就说明我们的Kibana已经成功启动并且成功连接到我们的服务器的ElasticSearch了

并且之前我们所有的操作都是在这个界面里面执行的:
在这里插入图片描述

ES中文分词

还记得我们之前讲过的,ES内部的算法是通过 倒排索引 的方式来进行的,并且当初我们讲的关于倒排索引的第一步就是先将我们存入数据库的内容进行 分词 的处理,所以我们现在就需要测试一下ES的分词操作是否能够正常执行完毕.

我们先来测试一下ES对英文的分词是怎么样的,通过下图我们就能够看出来ES对英文的分词是完全可以的

在这里插入图片描述
但是很显然我们之后操作的数据肯定都是中文的,所以我们现在需要来测试一下看看ES是否能够识别我们的中文.

在这里插入图片描述

可以看到执行完毕之后我们发现ES是不能够识别中文的分词的.他只能将中文看成是单个字的集合,并不能够理解词语这个概念,既然不能够正确识别我们的词语,那么我们现在就需要配置相关的中文分词插件.

我们需要将我们的IK分词器上传到我们ES的plugins目录下面,在这里我们需要注意一点就是plugins目录下面是专门用来存放我们的插件的,并且这之后我们需要注意一点就是在:plugins目录下面都是将单个目录识别成一个插件的,不能够将一个插件解压成多个文件夹,并且必须是一个单个的文件夹里面包含该插件的所有配置信息,并且不能是多层目录嵌套的那种,否则都是识别不出来的,具体解压的格式应该是下面这种格式的.

在这里插入图片描述

这样的格式才是正确的格式.

解压完成之后,我们就需要将我们的ES重启,这样我们的插件才能够生效.
在这里插入图片描述

ES重启之后我们再去看看我们的分词器是否能够正常使用了.我们安装的分词插件是一个叫做IK的分词插件.这个插件有两种分析语法,一种是ik_smart,另外一个就是ik_max_word.

ik_smart就是比较简单的分词器

ik_max_word则是一个功能更加强悍的分词器

这里我们通过下面这个例子就能够看出来了.

这是我们指定分词器是 ik_smart 后的分词结果:

在这里插入图片描述

这是我们指定分词器是 ik_max_word 后的分词结果:

在这里插入图片描述

对比上面的结果,我们就能发现的确能够比较明显的看出来ik_max_word分词器的效果是更加强悍的.他不仅是将一句话拆成多个连续的词语,并且像 “中国人” 这个词语,他还能分解成 “中国人,中国,国人” 三个词语.这样就能够更好的实现分词的效果.

了解完分词之后,我们再来看看分词结果的各个属性分别代表什么意思

在这里插入图片描述

这时候大家可能又要说了,为什么需要产生这么一些分词结果呢?这里就要提到我们之前说过的一个概念就是 相关性算分 .因为这个相关性算分可能需要知道这个分词是在那里出现的,一共出现了几次等等,这些都是会直接影响相关性算分的结果的,所以分词结果才是这样的.

这样我们的ES中文分词就已经配置完毕了.

原创不易,码字不易.如果觉得对你有帮助的话,可以关注我的公众号,新人up需要你的支持!!!

在这里插入图片描述

不点在看,你也好看!

点点在看,你更好看!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个基本的Docker Compose配置文件,用于配置ElasticsearchKibana。 ``` version: '3' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.12.0 container_name: elasticsearch environment: - discovery.type=single-node - "ES_JAVA_OPTS=-Xms512m -Xmx512m" ulimits: memlock: soft: -1 hard: -1 ports: - 9200:9200 - 9300:9300 volumes: - elasticsearch-data:/usr/share/elasticsearch/data networks: - elastic kibana: image: docker.elastic.co/kibana/kibana:7.12.0 container_name: kibana ports: - 5601:5601 environment: ELASTICSEARCH_URL: http://elasticsearch:9200 networks: - elastic volumes: elasticsearch-data: networks: elastic: driver: bridge ``` 在这个配置文件中,我们定义了两个服务:elasticsearchkibanaelasticsearch服务使用官方的Elasticsearch 7.12.0镜像,设置了单节点模式,使用了512MB内存,并暴露了9200和9300端口。我们还挂载了一个名为elasticsearch-data的卷,用于持久化存储Elasticsearch数据。 kibana服务使用官方的Kibana 7.12.0镜像,暴露了5601端口,并设置了ELASTICSEARCH_URL环境变量,指向我们的elasticsearch服务。 最后,我们定义了一个名为elastic的网络,将两个服务连接在同一个网络中。 为了启动这个配置文件,只需在Docker Compose配置文件所在的目录中执行以下命令: ``` docker-compose up -d ``` 这将启动elasticsearchkibana服务,并在后台运行。要停止这两个服务,请在同一目录中执行以下命令: ``` docker-compose down ``` 这将停止并删除elasticsearchkibana容器。请注意,这不会删除elasticsearch数据卷,如果您想删除数据,请运行以下命令: ``` docker volume rm <卷名> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值