analyzer和search_analyzer是什么
时间: 2024-05-17 07:15:29 浏览: 16
在Elasticsearch中,分析器(Analyzer)是在将文本数据存储到索引中之前对文本进行处理的组件。分析器将原始文本转换为一系列标记(Tokens),并将这些标记存储到索引中以便进行全文搜索。Analyzer由字符过滤器(Char Filter)、分词器(Tokenizer)和标记过滤器(Token Filter)组成。
而搜索分析器(Search Analyzer)则是在执行搜索查询时对查询语句进行处理的分析器。搜索分析器与索引分析器(Index Analyzer)不同,因为它们可能需要更宽松的分析规则,以便能够匹配更多的查询条件。例如,在搜索时,您可能希望使用一个较宽松的分析器来支持模糊搜索和拼写纠错功能。
因此,Analyzer和Search Analyzer是两个不同的分析器,它们分别用于处理索引数据和搜索查询,以便在全文搜索中提高搜索结果的准确性和相关性。
相关问题
"tagString": { "type": "text", "analyzer": "ik_max_word", "search_analyzer": "ik_max_word" },analyzer和search_analyzer如何配置两种分词器
要配置analyzer和search_analyzer使用两种不同的分词器,你可以按照以下方式进行设置:
首先,创建一个自定义的分析器,在该分析器中指定使用的分词器类型。你可以根据需要选择不同的分词器,比如ik_max_word和standard等。
下面是一个示例配置,其中analyzer使用了ik_max_word分词器,而search_analyzer也使用了ik_max_word分词器:
```
PUT your_index_name
{
"settings": {
"analysis": {
"analyzer": {
"custom_analyzer": {
"type": "custom",
"tokenizer": "ik_max_word",
"filter": [
"lowercase"
]
}
}
}
},
"mappings": {
"properties": {
"tagString": {
"type": "text",
"analyzer": "custom_analyzer",
"search_analyzer": "custom_analyzer"
}
}
}
}
```
在上述示例中,我们先创建了一个名为`your_index_name`的索引。然后,我们在`analysis`部分定义了一个名为`custom_analyzer`的自定义分析器,指定了`tokenizer`为`ik_max_word`分词器,并使用`lowercase`过滤器将文本转换为小写。接下来,在`mappings`部分中,我们定义了一个名为`tagString`的字段,并将其类型设置为`text`。最后,我们将`analyzer`和`search_analyzer`都设置为`custom_analyzer`,以使用我们自定义的分析器。
通过这样的配置,当你索引文档时,会使用`custom_analyzer`对`tagString`字段进行分析处理,并在搜索时也会使用相同的分析器进行查询匹配。这样可以确保索引和搜索过程中使用相同的分词器,从而保持一致性。
[type=illegal_argument_exception, reason=Custom Analyzer [default_search] failed to find tokenizer under name [ik_smart]]]
这个错误提示是 Elasticsearch 的错误提示,意思是你使用了一个名为 "ik_smart" 的 tokenizer,但是 Elasticsearch 没有找到这个 tokenizer。这通常是因为你没有安装或配置正确的分词插件导致的。
如果你想使用 "ik_smart" 分词器,你需要先安装 Elasticsearch 的 IK 分词插件。你可以在 Elasticsearch 插件官网查找 IK 分词插件的安装方法,或者使用以下命令进行安装:
```
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.13.2/elasticsearch-analysis-ik-7.13.2.zip
```
安装完成后,你需要重新启动 Elasticsearch,然后再次尝试使用 "ik_smart" 分词器。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)