本篇内容主要讲解“elasticsearch分词器怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“elasticsearch分词器怎么使用”吧!
1、在Elasticsearch的plugins目录下建一个ik目录,将ik安装包解压到该目录 或 ./bin/elasticsearch-plugin install
2、重启Elasticsearch
3、测试分词器
GET /_analyze
{
"text": "中华人民共和国国徽",
# 两种:ik_smart较粗粒度的拆分 和 ik_max_word较细粒度的拆分
"analyzer": "ik_max_word"
}
4、使用分词器 在模版中定义好分词
"settings": {
"index": {
"number_of_shards": "1",
"number_of_replicas": "0"
},
"analysis": {
"analyzer": {
"ik":{
"tokenizer" : "ik_max_word"
}
}
}
},
.......
"mappings": {
"_doc" : {
"dynamic_templates": [
{
"integers": {
"mapping": {
"type": "long"
},
"match_mapping_type": "long",
"match": "*"
}
},
{
"doubles": {
"mapping": {
"type": "double"
},
"match_mapping_type": "double",
"match": "*"
}
},
{
"time_mapping": {
"match_pattern": "regex",
"mapping": {
"format": "yyyy-MM-dd HH:mm:ss||strict_date_optional_time||epoch_millis",
"type": "date"
},
"match_mapping_type": "string",
"match": ".+(time|Time|TIME|date|Date|DATE)"
}
},
{
"ip_match": {
"match_pattern": "regex",
"mapping": {
"type": "ip"
},
"match_mapping_type": "string",
"match": ".+(IP|Ip|ip|iP)"
}
},
{
"port_match": {
"match_pattern": "regex",
"mapping": {
"type": "long"
},
"match_mapping_type": "string",
"match": ".+(Port|port|PORT)"
}
},
{
"name_mapping": {
"match_pattern": "regex",
"mapping": {
"fields": {
"keyword": {
"ignore_above": 2560,
"type": "keyword"
}
},
"type": "text"
},
"match_mapping_type": "string",
"match": ".+(Name|name)"
}
},
{
"strings": {
"mapping": {
"type": "keyword"
},
"match_mapping_type": "string",
"match": "*"
}
}
],
"date_detection": false,
"properties": {
"content": {
"type" : "text",
"analyzer": "ik_max_word",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
},
"level": {
"type": "keyword"
},
"target": {
"type": "keyword"
},
"source": {
"type": "keyword"
},
"alerttime": {
"type": "date",
"format": "yyyy-MM-dd HH:mm:ss"
}
}
}
}
到此,相信大家对“elasticsearch分词器怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!