elasticsearch2.x ik插件
先来一个标准分词(standard),配置如下:
curl -XPUT localhost:/local -d '{ "settings" : { "analysis" : { "analyzer" : { "stem" : { "tokenizer" : "standard", "filter" : ["standard", "lowercase", "stop", "porter_stem"] } } } }, "mappings" : { "article" : { "dynamic" : true, "properties" : { "title" : { "type" : "string", "analyzer" : "stem" } } } } }'
index:local
type:article
default analyzer:stem (filter:小写、停用词等)
field:title
测试:
# Index Data curl -XPUT localhost:/local/article/ -d'{"title": "Fight for your life"}' curl -XPUT localhost:/local/article/ -d'{"title": "Fighting for your life"}' curl -XPUT localhost:/local/article/ -d'{"title": "My dad fought a dog"}' curl -XPUT localhost:/local/article/ -d'{"title": "Bruno fights Tyson tomorrow"}' # search on the title field, which is stemmed on index and search curl -XGET localhost:/local/_search?q=title:fight # searching on _all will not do anystemming, unless also configured on the mapping to be stemmed... curl -XGET localhost:/local/_search?q=fight
例如:
Fight for your life
分词如下:
{"tokens":[ {"token":"fight","start_offset":,"end_offset":,"type":"<ALPHANUM>","position":},<br>{"token":"your","start_offset":,"end_offset":,"type":"<ALPHANUM>","position":},<br>{"token":"life","start_offset":,"end_offset":,"type":"<ALPHANUM>","position":} ]}
部署ik分词器
在elasticsearch.yml中配置 index.analysis.analyzer.ik.type : "ik"
delete之前创建的index,重新配置如下:
curl -XPUT localhost:/local -d '{ "settings" : { "analysis" : { "analyzer" : { "ik" : { "tokenizer" : "ik" } } } }, "mappings" : { "article" : { "dynamic" : true, "properties" : { "title" : { "type" : "string", "analyzer" : "ik" } } } } }'
测试:
curl 'http://localhost:9200/local/_analyze?analyzer=ik&pretty=true' -d' { "text":"中华人民共和国国歌" } ' { "tokens" : [ { "token" : "text", "start_offset" : , "end_offset" : , "type" : "ENGLISH", "position" : }, { "token" : "中华人民共和国", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "国歌", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : } ] }
如果我们想返回最细粒度的分词结果,需要在elasticsearch.yml中配置如下:
index: analysis: analyzer: ik: alias: [ik_analyzer] type: org.elasticsearch.index.analysis.IkAnalyzerProvider ik_smart: type: ik use_smart: true ik_max_word: type: ik use_smart: false
测试:
curl 'http://localhost:9200/index/_analyze?analyzer=ik_max_word&pretty=true' -d' { "text":"中华人民共和国国歌" } ' { "tokens" : [ { "token" : "text", "start_offset" : , "end_offset" : , "type" : "ENGLISH", "position" : }, { "token" : "中华人民共和国", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "中华人民", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "中华", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "华人", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "人民共和国", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "人民", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "共和国", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "共和", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : }, { "token" : "国", "start_offset" : , "end_offset" : , "type" : "CN_CHAR", "position" : }, { "token" : "国歌", "start_offset" : , "end_offset" : , "type" : "CN_WORD", "position" : } ] }
elasticsearch2.x ik插件的更多相关文章
- ElasticSearch搜索引擎安装配置中文分词器IK插件
近几篇ElasticSearch系列: 1.阿里云服务器Linux系统安装配置ElasticSearch搜索引擎 2.Linux系统中ElasticSearch搜索引擎安装配置Head插件 3.Ela ...
- elasticsearch 口水篇(8)分词 中文分词 ik插件
先来一个标准分词(standard),配置如下: curl -XPUT localhost:9200/local -d '{ "settings" : { "analys ...
- Elastic ik插件配置热更新功能
ik github地址:https://github.com/medcl/elasticsearch-analysis-ik 官网说明: 热更新 IK 分词使用方法 目前该插件支持热更新 IK 分词, ...
- 【自定义IK词典】Elasticsearch之中文分词器插件es-ik的自定义词库
Elasticsearch之中文分词器插件es-ik 针对一些特殊的词语在分词的时候也需要能够识别 有人会问,那么,例如: 如果我想根据自己的本家姓氏来查询,如zhouls,姓氏“周”. 如 ...
- Elasticsearch安装ik中文分词插件(四)
一.IK简介 IK Analyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包.从2006年12月推出1.0版开始, IKAnalyzer已经推出了4个大版本.最初,它是以开源项目Lu ...
- 在ElasticSearch中使用 IK 中文分词插件
我这里集成好了一个自带IK的版本,下载即用, https://github.com/xlb378917466/elasticsearch5.2.include_IK 添加了IK插件意味着你可以使用ik ...
- ElasticSearch(三) ElasticSearch中文分词插件IK的安装
正因为Elasticsearch 内置的分词器对中文不友好,会把中文分成单个字来进行全文检索,所以我们需要借助中文分词插件来解决这个问题. 一.安装maven管理工具 Elasticsearch 要使 ...
- ES之一:Elasticsearch6.4 windows安装 head插件ik分词插件安装
准备安装目标:1.Elasticsearch6.42.head插件3.ik分词插件 第一步:安装Elasticsearch6.4 下载方式:1.官网下载 https://www.elastic.co/ ...
- Elastic Stack 笔记(二)Elasticsearch5.6 安装 IK 分词器和 Head 插件
博客地址:http://www.moonxy.com 一.前言 Elasticsearch 作为开源搜索引擎服务器,其核心功能在于索引和搜索数据.索引是把文档写入 Elasticsearch 的过程, ...
随机推荐
- 防止php重复提交表单更安全的方法
Token.php <?php /* * Created on 2013-3-25 * * To change the template for this generated file go t ...
- ural 2019 Pair: normal and paranormal
2019. Pair: normal and paranormal Time limit: 1.0 secondMemory limit: 64 MB If you find yourself in ...
- 51nod 1131 数列
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1131 1131 覆盖数字的数量 基准时间限制:1 秒 空间限制:1310 ...
- ES6 类(Class)基本用法和静态属性+方法详解
原文地址:http://blog.csdn.net/pcaxb/article/details/53759637 ES6 类(Class)基本用法和静态属性+方法详解 JavaScript语言的传统方 ...
- RecycleView出现折叠效果--第三方开源--SectionedExpandableGridRecyclerView
下载地址:https://github.com/ddwhan0123/SectionedExpandableGridRecyclerView/archive/master.zip 具体见源码
- 【暂时解决】win10下安装VS2017 15.3版本 提示 未能安装包“Microsoft.NET.4.6.FullRedist.NonThreshold.Resources,version=4.6.81.9,language=zh-CN”。
win10下安装VS2017 15.3版本的时候,出现以上错误日志提示,请问如何解决的哇? 这个问题,开始我以为是我的安装包所在的路径问题引起的,但是我将安装包移动到了磁盘根目录进行安装,依然出现这个 ...
- python_函数中使用*和**
Python在函数中,使用*接收元组,使用**接收键/值对 当要使函数接收元组或字典形式的参数 的时候,有一种特殊的方法,它分别使用*和**前缀 .这种方法在函数需要获取可变数量的参数 的时候特别有用 ...
- mount: error mounting /dev/root on /sysroot as ext3: Invalid argument
/************************************************************************ * mount: error mounting /d ...
- altibase MDB的创建sequence的举例
create sequence seq_deduct_record_history start with 1 increment by 1 minvalue 1 nomaxvalue;
- 微信小程序编写物流信息进度样式
做电商类型的小程序一定会碰到编写物流信息的时候,一般页面如下图 难点在于只有一条信息时候的页面样式 以及多条信息最后一条信息的页面样式 之前没做过这一块的东西,所以刚碰到的时候想了老半天orz.后来上 ...