gpt4 book ai didi

elasticsearch - Elastic/Lucene对未分析的字段有何作用?

转载 作者:行者123 更新时间:2023-12-03 01:46:12 25 4
gpt4 key购买 nike

Elastic / Lucene对未分析的字段有何作用?它不必为该字段值创建倒排索引或位置(我想)。它只需要记录值?

我怀疑它仍然只用一个术语就能产生倒排索引。并且该术语的位置将始终固定在字段的开头和字段的结尾。看起来准确吗?

最佳答案

在ES 2.x中,当声明string字段时,您具有three options关于如何对其进行索引。您可以使用

  • index: analyzed,在这种情况下,对字符串内容进行分析和索引(->分析的 token 存储在反向索引中)
  • index: not_analyzed,在这种情况下,未分析字符串内容,但仍按“原样”进行索引(->确切的字符串未更改地存储在倒排索引中)。此外,确切值还存储在doc values index
  • index: no,在这种情况下,不分析字符串内容,也没有对其进行索引(因此无法搜索)

  • 在ES 5.x中,您现在有两种不同的字段类型,即:
  • text与以前的index: analyzed(上面的情况1)相同
  • keyword与以前的index: not_analyzed(上面的情况2)相同

  • 此外,这两个字段现在仍接受 index参数,但仅带有 truefalse值。因此,基本上,您现在有四种可能性,但只有三种才有意义:
  • text + index: true,这是您要分析字符串并对其进行索引时的正常情况(与情况1相同)
  • text + index: false并没有真正的意义,因为没有理由分析字符串而不为它建立索引
  • keyword + index: true,即当您不想分析字符串但仍按原样索引值时(与情况2相同)
  • keyword + index: false,这是您不想分析字符串也不对它进行索引的情况(与情况3相同)

  • 对于情况3和4,默认情况下该值也存储在 doc values index中。

    关于elasticsearch - Elastic/Lucene对未分析的字段有何作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43792291/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com