首页 文章

如何将字段与elasticsearch中的倒排索引中的术语相关联?

提问于
浏览
3

根据我的理解,elasticsearch使用一种称为倒排索引的结构来提供全文搜索 . 很明显,反向索引具有包含该术语的文档的术语和ID,但是文档可以具有任意数量的字段,并且字段名称可以在查询时间中用于仅查看/搜索该字段 . 在这种情况下,elasticsearch如何限制/限制搜索仅限于特定字段?我想知道倒排索引是否包含字段名称或字段ID以及术语和文档ID .

基于任何字段排序时会发生类似的事情 . 因此,可以有一种方法将术语与字段名称相关联 . 请帮助我理解这里涉及的复杂性 .

提前致谢 .

2 回答

  • 2

    我想知道倒排索引是否包含字段名称或字段ID以及术语和文档ID .

    引自Lucene Docs

    两个不同字段中的相同字符串被视为不同的术语 . 因此,术语表示为一对字符串,第一个命名字段,第二个命名文本在字段中 .

    在这种情况下,elasticsearch如何限制/限制搜索仅限于特定字段?

    每个段索引都维护术语向量:对于 each field in each document, the term vector is stored. A term vector consists of term text and term frequency.

    因此,为每个文档中的每个字段维护索引 .

  • 1

    每个索引每个字段都有一个倒排索引 .

    还有一种称为字段数据缓存(或doc值)的东西,它具有倒置的“倒排索引” . 所有doc to field value lookup都在这里发生 .

相关问题