Elasticsearch技术解析与实战(9)IK分词
序言
内置分词器
POST /_analyze { "analyzer":"standard", "text":"且听风吟" }
内置分词器对中文的局限性
ik分词器
安装IK分词器
下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
测试ik分词器
根据官方的建议,ik分词器的名字可以使用:ik_smart
, ik_max_word
POST /_analyze
{
"analyzer": "ik_max_word",
"text": "且听风吟"
}
POST /_analyze
{
"analyzer": "ik_smart",
"text": "且听风吟"
}
下面创建一个索引,然后要求对中文部分的text用ik分词器来解析,来观察ik分词器的效果。
PUT /ropledata { "settings": { "index": { "number_of_shards": "2", "number_of_replicas": "0" } }, "mappings": { "properties": { "id": { "type": "integer" }, "name": { "type": "text", "analyzer": "ik_max_word" }, "hobby": { "type": "text" } } } }
ik分词器是根据什么来分词的呢?如果有些特殊的词汇比如人名,店名,网名,想根据自己的要求特殊处理来分词,能不能解决呢?
ik分词器本身维护了一个超大的词汇文本,里面有非常多的中文词汇。这个文件在ik/config/
下,名为main.dic,咱们可以打开看看:
D:\Java\ELK6.7.0\elasticsearch-6.7.0\plugins\ik\config
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2019-04-09 .NET面试题系列(17)OOP
2019-04-09 .NET面试题系列(16)数据库面试题
2019-04-09 排序
2019-04-09 ElasticSearch - Shard数调优(ElasticSearch性能)