Elasticsearch 8中更新非索引字段是否会触发重新索引?
更新Elasticsearch禁用字段是否会触发重新索引?
背景
我的索引映射配置如下:
{ "mappings": { "dynamic": false, "properties": { "query_str": {"type": "text", "index": false}, "search_results": { "type": "object", "enabled": false }, "query_embedding": { "type": "dense_vector", "dims": 768 } } } }
字段search_results已设置为enabled: false,实际仅通过query_embedding字段执行搜索,其余字段均为不可搜索数据。
问题
若更新现有文档中的search_results字段,是否会触发重新索引?
解答
不会触发重新索引。
根据Elasticsearch官方说明:
enabled设置仅可应用于顶级映射定义和对象字段,会让Elasticsearch完全跳过解析字段内容。JSON仍可从
_source字段获取,但无法被搜索或以其他方式存储为索引数据。
search_results属于完全不参与索引构建的字段,更新它只会修改文档_source中的原始JSON内容,不会改变任何与索引相关的结构或可搜索数据,因此不会触发重新索引操作。
内容的提问来源于stack exchange,提问作者Nick Zorander
相关产品推荐
相关产品推荐

