elasticsearch搜索推荐系列(一)之 ElasticSearch6.2.2安装拼音插件 elasticsearch-analysis-pinyin

标签: ElasticSearch  elasticsearch-analysis-pinyin  pinyin  分词器  ES

拼音分词在日常生活中其实很常见,也许你每天都在用。打开淘宝看一看吧,输入拼音”zhonghua”,下面会有包含”zhonghua”对应的中文”中华”的商品的提示:

elasticsearch-analysis-pinyin 是 ElasticSearch的拼音插件,强大的功能支持拼音等的搜索。

拼音分词是根据输入的拼音提示对应的中文,通过拼音分词提升搜索体验、加快搜索速度。下面介绍如何在Elasticsearch 6.2.2中配置elasticsearch-analysis-pinyin

1、下载源代码

源码地址https://github.com/medcl/elasticsearch-analysis-pinyin

这里我是直接使用Download ZIP方式下载了源码,里面的readme 说的使用方法很详细全面,完全可以参考里面的文档进行练习。

2、解压到指定目录

   下载的源码zip文件解压缩

3、修改源码的pom.xml文件

    <elasticsearch.version>6.2.2</elasticsearch.version>  修改es版本为您需要的版本号

这有个小插曲:我用的elasticsearch为6.2.2,看了源码下的readme版本对照信息后,发现没有对应的6.2.2的版本信息。因此我分别编译了6.2.4和6.2.2版本的elasticsearch-analysis-pinyin插件。实测都是可以在6.2.2的elasticsearch中使用。但是如果编译的是6.2.4版本的pinyin插件时,需要把plugin-descriptor.properties配置文件中elasticsearch.version修改为6.2.2,否则es无法正常启动!!!

如下图:

另附readme.md文件中的版本对照图如下:

4、mvn打包,执行mvn install

    会在源码目录下生成target文件夹,在如下目录中找到elasticsearch-analysis-pinyin-6.2.2.zip

    elasticsearch-analysis-pinyin-master\target\releases\elasticsearch-analysis-pinyin-6.2.2.zip

5、将elasticsearch-analysis-pinyin-6.2.2.zip解压缩后的内容复制到elasticsearch的plugins目录的pinyin目录下

     如果没有pinyin目录自己创建,如下图:

      

6、重启es,  

    ./bin/elasticsearch.bat

7、验证

在kibana中输入

GET _analyze
{
  "analyzer": "pinyin",
  "text": "刘德华"
}

显示如下json数据则为安装成功

{
  "tokens": [
    {
      "token": "liu",
      "start_offset": 0,
      "end_offset": 0,
      "type": "word",
      "position": 0
    },
    {
      "token": "de",
      "start_offset": 0,
      "end_offset": 0,
      "type": "word",
      "position": 1
    },
    {
      "token": "hua",
      "start_offset": 0,
      "end_offset": 0,
      "type": "word",
      "position": 2
    },
    {
      "token": "ldh",
      "start_offset": 0,
      "end_offset": 0,
      "type": "word",
      "position": 2
    }
  ]
}

 

版权声明:本文为A_Story_Donkey原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/A_Story_Donkey/article/details/81182862

智能推荐

elasticSearch(6.2.2版本) 的安装配置、ik分词器插件安装、elasticsearch-head可视化插件安装

1. elasticSearch(6.2.2版本) 的安装配置 (1)、点击下载所需要的elasticSearch版本;下载地址 选择6.2.2版本的zip,进行下载 (2)、解压后,找到es的配置文件 elasticsearch.yml,在config文件夹下,打开修改里面的配置,加入如下代码: 然后执行 bin 目录下的 elasticsearch.bat 文件 (3)、看到started说明...

Elasticsearch 安装和使用 6.2.2 ,IK分词器

全文搜索说了很久,一直没弄,现在有时间了,准备开始做了。 1.准备工作 先说版本,因为公司的环境是 6.2.2 版本,所以测试环境也安装6.2.2 版本的,官网找了好久没有找到,后来一个小技巧下载到了。 官网:https://www.elastic.co/downloads/elasticsearch 官网的中文说明文档:https://www.elastic.co/guide/cn/elasti...

虚拟机 CentOS 6.5 安装搭建 Elasticsearch 6.2.2

1.安装jre Elasticsearch(下文用ES简称代替) 的安装搭建环境要求JAVA环境,需要jre1.8以上,所以先从JAVA官网下载jre的rpm包 http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html 下载rpm包后,上传到服务器的 /opt 目录下 服务器上切换到opt...

【es-01】CentOS7.6安装Elasticsearch 6.2.2

1、环境 centos7.6 jdk1.8 2、下载 elasticsearch-6.2.2.tar.gz 3、解压到你喜欢的目录 4、修改config/elasticsearch.yml配置 4.进入目录elasticsearch-6.2.2,并启动elasticsearch 5、解决不可以用root用户启动es 6、修改max_map_count太小 错误信息:max virtual memo...

Elasticsearch6.2.3及其head插件安装 中文分词 elasticsearch-analysis-ik 拼音分词 同义词分词

1.下载并解压elasticsearch 官网 http://www.elastic.co/downloads/elasticsearch 本次下载地址 https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.3.tar.gz  解压  tar -zxvf  elasticsearc...

猜你喜欢

ElasticSearch 图片搜索插件 (一)

一, 关于ElasticSearch ElasticSearch 是基于 Lucene 的分布式搜索引擎。 虽然Lucene 从 版本6 开始内部使用了bkd树使得多维搜索问题得到显著优化,但是 ElasticSearch 实际只在 numeric range 问题上使用了bkd树。 二,官方的图片搜索插件  官方网页地址: https://www.elastic.co/blo...

20-linux下ElasticSearch.6.2.2集群安装与head、Kibana、X-Pack..插件的配置安装

简介:主要在三台linux服务器上,集群安装ElasticSearch.6.2.1,及其es的插件,各种管理软件 1.集群安装es 1.1 环境 1.2 三台机器都安装jdk最新版本 1.3 三台机器都统一用户为es 1.4 三台机器都建立/home/es/elasticsearch目录,用来存放es软件包和数据存储,使用es用户 1.5 三台机器都解压安装包到/home/es/elasticse...

linux上安装Qt4.8.6+QtCreator4.0.3

一、Qt简介 Qt是1991年奇趣科技开发的一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能。Qt很容易扩展,并且允许真正地组件编程。 准备工作 操作系统:centos6.5 位数:64位 二、安装 1、获取源码Qt4.8.6 2、获取源码QtCreator4.0.3 2、安装QtCreator4.0.3 进入QtCreator安装界面,指定...

react-native metro 分析

文章目录 前言 概念 Resolution Transformation Serialization 打包方式 Moudles Plain bundle Indexed RAM bundle File RAM bundle 流程 前置流程 resolve流程 Transformer流程 序列化流程 缓存 为什么要缓存 缓存的请求与缓存 Metro配置 结构 前言 metro是一种支持ReactNa...

嵌入式Linux——应用调试:用户态打印段错误信息

简介:     很多时候我们会遇到段错误:segmentation fault,而段错误有时是由内核引起的,有时是由应用程序引起的。在内核态时,发生段错误时会打印oops信息,但是在用户态时,发生段错误却只会打印segmentation fault而并不会打印其他的信息。所以本文主要介绍在用户态时,通过修改内核设置和添加启动参数来打印引发segmentati...