ElasticSearch-6.4.1安装中文分词器Analysis-ik.

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/HcJsJqJSSM/article/details/83686997

一:使用背景和安装过程.

        1. ElasticSearch-6.4.1.(Windows环境下)

           ElasticSearch默认的分词器对中文分词器支持不好,下面安装中文分词器.Linux下是一样的安装方式就是wget+url然后新建目录,解压到指定的目录下,然后重启ES即可.

        2. 中文分词器IKAnalyzer下载.

           analysis-ik

        3. 来到ElasticSearch的安装目录.

           新建目录:ik

      

           4. 将刚才下载的IK解压到ik目录下.

          

            5. 启动ElasticSearch.(观察一下启动日志).

                    

                        

              6. 启动head插件.

                   

              7. 测试IK分词器.(PostMan下测试)

                 7.1 一个删除ES索引的测试.(自己测试的,与本文无关).            

                7.2 IK分词效果有两种,一种是ik_max_word(最大分词)和ik_smart(最小分词)

                现在的分词文本是:中华人名共和国港珠澳大桥建成通车.

             8.  REST API 使用AK分词器.

                8.1 测试最大分词效果.

 

             8.2 测试最小分词效果.

二. JAVA API使用AK分词器.

       2.1 首先新建一个索引.

        

      2.2  Java API使用分词器.

             首先是获取TransportClient对象. 注入静态方法中注意初始化的方式.

            使用标准分词器.

public class ElasticApplication {
    private static TransportClient client;
    @Autowired
    public void setClient(TransportClient client){
        ElasticApplication.client=client;
    }

	public static void main(String[] args) {
		SpringApplication.run(ElasticApplication.class, args);
        // 获取分词器.
        AnalyzeRequest analyzeRequest = new AnalyzeRequest("test")
                .text("中华人民共和国港珠澳大桥建成通车")
                .analyzer("standard");
        List<AnalyzeResponse.AnalyzeToken> tokens = client.admin().indices()
                .analyze(analyzeRequest)
                .actionGet()
                .getTokens();
        for (AnalyzeResponse.AnalyzeToken token : tokens) {
            System.out.print(token.getTerm()+" ");
        }
	}
}

           运行结果:

             使用最大分词器.

          运行结果:

       使用最小分词器. 

       运行结果:

可以对比最小分词效果没有最大的分词效果好一些.

猜你喜欢

转载自blog.csdn.net/HcJsJqJSSM/article/details/83686997