elasticsearch 索引时防止Elasticsearch在特定字符上拆分
我有一个带有值的字段,如elasticsearch 索引时防止Elasticsearch在特定字符上拆分,elasticsearch,logstash,elasticsearch,Logstash,我有一个带有值的字段,如170726-001,170726-002,170726-003,这三个字段中的值似乎被分为170726和00N。当使用查询字符串查询作为关键字搜索170726-001时,这会影响我的搜索结果的相关性 如何防止Elasticsearch在编制索引时拆分-字符上的值?在@filip cordas和其他注释的帮助下,我更新了索引以反映以下内容。它使用关键字类型而不是默认的文本类型。在索引上这样做可以避免我在搜索中指定我的_field.keyword PUT my_index
170726-001
,170726-002
,170726-003
,这三个字段中的值似乎被分为170726
和00N
。当使用查询字符串查询作为关键字搜索170726-001
时,这会影响我的搜索结果的相关性
如何防止Elasticsearch在编制索引时拆分
-
字符上的值?在@filip cordas和其他注释的帮助下,我更新了索引以反映以下内容。它使用关键字
类型而不是默认的文本
类型。在索引上这样做可以避免我在搜索中指定我的_field.keyword
PUT my_index
{
"mappings": {
"my_type": {
"properties": {
"my_field": {
"type": "keyword",
"index": true
}
}
}
}
}
使用
关键字
类型而不是文本
,或者在现有的文本
字段中添加关键字
子字段您还可以搜索字段的.raw以仅搜索原始字段。我想您应该在elasticsearch@filip-科尔达斯-我同意这可能是我可以做的映射更改,我只是不确定映射更改通常需要对所有内容重新编制索引,但在2.0 elasticsearch中,您会得到“关键字”子字段,因此您可能可以使用它