简介

本文介绍了全文搜索引擎Elasticsearch的安装过程,以及ik中文分词插件、用户词典、同义词的配置。

Elasticsearch安装

值得注意的是,Elasticsearch运行需要Java环境。因此安装前需要提前配置好Java环境。

官网方式

  1. 下载
    进入官网 下载对应版本,本文选择的版本为6.8.13。
  2. 启动
    解压下载的包到磁盘上,进入Elasticsearch目录。
    如果是windows,打开bin/目录下的elasticsearch.bat

    如果是linux,在Elasticsearch根目录下以非root执行bin/elasticsearch命令启动。

Docker方式

  1. 拉取镜像
docker pull elasticsearch:6.8.13
  1. 启动容器(ES会随容器启动)
# 容器名为es,映射端口9200和9300,设置非集群单节点
docker run -itd --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:6.8.13
  1. 进入容器(编辑配置文件等)
docker exec -it -u elasticsearch es /bin/bash

Elasticsearch配置文件

找到ES根目录config/路径下的elasticsearch.yml进行编辑

# 编辑配置文件,windows系统下直接打开编辑即可
vim config/elasticsearch.yml
# 修改集群名、节点名
cluster.name: my-application
node.name: node-1
# 处理http跨域请求
http.cors.enabled: true
http.cors.allow-origin: "*"

安装可视化工具

es-head

es-head的github地址为https://github.com/mobz/elasticsearch-head
将代码克隆到本地磁盘上,然后进行安装。

cd elasticsearch-head
npm install
npm run start
# 安装好后打开浏览器访问
open http://localhost:9100/

Kibana

ES官方有一款可视化工具Kibana,可去官网下载并学习使用。

这里下载的是windows版本,下载好后,找到Kibana目录的bin/目录下,打开kibana.bat(需要先运行ES,否则无法使用Kibana)

然后,可以在浏览器访问http://localhost:5601打开Kibana的控制台

在Kibina的控制台左侧导航栏,找到Dev Tools,右侧的Console控制台即可在此输入命令进行操作

安装中文分词器ik

  1. 下载地址
# github地址
https://github.com/medcl/elasticsearch-analysis-ik
# 各个版本的编译后
https://github.com/medcl/elasticsearch-analysis-ik/releases
# 6.8.13
https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v6.8.13
  1. 解压或复制到指定位置
    将下载好的包解压到ES根目录下的plugins/ik/目录下(需要创建ik目录)

  2. 测试
    重启ES,使用ik分词测试。

# 发送http post请求
http://localhost:9200/_analyze
# body为json
{  "analyzer": "ik_max_word", # ik_max_word/ik_smart"text": "加油奥里给"
}

两种分词方式:ik_max_word 和 ik_smart 什么区别?(更多细节参考github官网)

ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合,适合 Term Query;ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”,适合 Phrase 查询。

配置自定义词典

  1. 新建自定义词典文件
    到ES根目录下的plugins/ik/config/目录下,新建user_word.dic(默认会有这个,可以不用新建)
  2. 修改ik配置
    到ES根目录下的plugins/ik/config/目录下,编辑IKAnalyzer.cfg.xml
<properties><comment>IK Analyzer 扩展配置</comment><!--用户可以在这里配置自己的扩展字典 --><entry key="ext_dict">user_word.dic</entry><!--用户可以在这里配置自己的扩展停止词字典--><entry key="ext_stopwords"></entry><!--用户可以在这里配置远程扩展字典 --><!-- <entry key="remote_ext_dict">words_location</entry> --><!--用户可以在这里配置远程扩展停止词字典--><!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>

其他关于如何热更新ik分词等,参考它的官网即可。

配置同义词库

同义词库用于扩大搜索范围,例如川普、懂王都可以表示特朗普

  1. 新建同义词库文件
    到ES根目录下的config/目录下新建synonyms.txt,里面的内容可以为如下示例:
川普,懂王,特朗普

这里一行表示一组同义词,用英文逗号分隔,表示简单扩展,可以把同义词列表中的任意一个词扩展成同义词列表所有的词。
关于同义词扩展的方式介绍,可以参考ES官方文档。

https://www.elastic.co/guide/cn/elasticsearch/guide/current/synonyms-expand-or-contract.html es2官方文档(中文)
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/analysis-synonym-tokenfilter.html es6.8官方文档(英文)
  1. 创建索引
    可以在Kibana的命令窗口使用如下语句创建索引student,字段有2个:name和introduction,将使用同义词过滤,同时应用中文ik分词。
PUT students
{"settings": {"number_of_shards": 1, "analysis": {"filter": {"my_synonym_filter": {"type": "synonym","updateable": true,"synonyms_path": "synonyms.txt"}},"analyzer": {"ik_synonym": {"tokenizer": "ik_smart","filter": ["my_synonym_filter"]},"ik_synonym_max": {"tokenizer": "ik_max_word","filter": ["my_synonym_filter"]}}}},"mappings": {"_doc":{"properties": {"name": {"type": "text","analyzer": "ik_max_word","search_analyzer": "ik_smart"},"introduction": {"type": "text","analyzer": "ik_synonym_max","search_analyzer": "ik_synonym"}}}}
}

Elasticsearch安装与分词插件、用户词典、同义词配置等相关推荐

  1. 2021年大数据ELK(八):Elasticsearch安装IK分词器插件

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 安装IK分词器 一.下载Elasticsearch IK分词器 ...

  2. elasticsearch6.2.2安装中文分词插件IK analyzer

    elasticsearch6.2.2安装中文分词插件IK analyzer 哎,装了一下午的ik终于装上了,发现自己真的是非常笨了,并且es重启过程中遇到了很多的问题,下面我将手把手教大家如何安装ik ...

  3. elasticsearch安装ik分词器

    elasticsearch安装ik分词器 1. 修改docker-compose.yml文件,对es目录下的plugins文件夹进行文件映射 version: "2.2" volu ...

  4. ElasticSearch 安装中文分词器

    1.安装中文分词器IK 下载地址:https://github.com/medcl/elasticsearch-analysis-ik 在线下载安装: elasticsearch-plugin.bat ...

  5. Elasticsearch安装IK分词器,kibana安装是基本使用,DSL语句入门

    文章目录 1. 安装IK分词器 2. Kibana安装和使用 2.1 ELK概述 2.2 Kibana下载 2.3 DSL语句 1. 安装IK分词器 ElasticSearch 默认采用的分词器, 是 ...

  6. 59、Docker ElasticSearch安装拼音分词器及自定义分词器

    一.使用拼音分词器 1.拼音分词器 2.docker下安装拼音分词器插件 3.测试拼音分词器 # 测试拼音分词器 POST /_analyze {   "text": [" ...

  7. Elasticsearch2.4.4自定义词典同义词配置

    自定义词典: 一.添加词典 mkdir -p elasticsearch-2.4.4/plugins/analysis-ik/config/custom vi elasticsearch-2.4.4/ ...

  8. Docker安装Elasticsearch及安装中文分词插件

    下载镜像 docker pull elasticsearch:6.5.0 启动ES docker run -p 9200:9200 -d --name es_6_5_0 elasticsearch:6 ...

  9. docker环境给elasticsearch安装ik分词

    下载IK 浏览器打开地址:https://github.com/medcl/elasticsearch-analysis-ik/releases,找到自己需要的版本,下载ZIP压缩包,我这边选择的是e ...

  10. elasticSearch 安装和 head插件使用

    1.现在elasticsearch安装包 https://www.elastic.co/downloads/elasticsearch 2.解压elasticsearch-5.6.4.zip 到需要安 ...

最新文章

  1. eigrp 重分布默认路由
  2. ubuntu部署postgreSQL数据库
  3. python元组类型_什么是python元组数据类型
  4. Depth-aware CNN
  5. ARM 汇编中的 B . 语句意义
  6. HEVC视频编码技术
  7. sqlmap绕过d盾_Waf功能、分类与绕过
  8. 231. 2的幂 golang
  9. mysql load data infile 重写_mysql load data infile 命令的数据导入
  10. PipeCAD之管道标准库PipeStd(3)
  11. linux 循环缓冲区 源码,Linux中的循环缓冲区
  12. Computational Learning Theory - VC Dimension
  13. c语言goto语句用法_C语言的9种控制结构
  14. 大数据之编程语言:Scala视频教程-陈超-专题视频课程
  15. SSH 远程管理软件 SecureCRT 下载安装教程
  16. java计算机毕业设计评标专家管理信息系统源码+数据库+系统+lw文档+mybatis+运行部署
  17. 教你3招解决PDF文字无法复制的所有问题!!!
  18. 【Centos】【Linux】如何杀掉进程——【进程杀手】2020-12-01
  19. 技术界中的虚拟机、容器和沙箱的关系
  20. Anno 让微服务、混合编程更简单(Net love Java)

热门文章

  1. 记录POJO类、DO、DTO、BO概念
  2. 14.拉格朗日插值公式
  3. 【遥感专题系列】微波遥感(二、合成孔径雷达SAR基础)
  4. 软考中常见的英文缩写
  5. 通过微信聊天记录生成词云
  6. 你知道项目管理有哪些分类和体系吗?
  7. python win7 sp1_64位win7需要升级Windows 7 Service Pack 1(sp1)升级包
  8. java 异或表示状态
  9. java 异或代码编程
  10. IOS性能优化之一些常见的性能指标