弹性--with_positions和with_positions_offsets

Imr*_*zad 4 elasticsearch

什么之间的区别with_positionswith_positions_offsets相对于term_vector在Elasticsearch?

And*_*fan 8

  • with_positions 将指示Elasticsearch(Lucene)同时索引原始文本中术语的位置

这有助于字段内的术语顺序,例如您在此处遇到的其他问题.

  • with_positions_offsets将指示Elasticsearch(Lucene的),其也,索引在原始文本的术语的位置位移字符有关每个术语的信息(开始位置和结束位置对于每个术语,在字符级别)

这有助于在分析阶段对索引的原始文本进行"更改",例如,通过其同义词更改其中的术语.这些同义词可以有多个单词,从而改变原始文本的整个"结构"(位置偏移).


在这两种情况下,磁盘上索引的大小都会增加.增加将是更小的with_positionswith_positions_offsets.

term_vector选项是突出显示的必要条件!


这个Lucene和Elasticsearch提交者博客文章中展示了一个很好的例子positions,offsets可以找到它:

示范文本

对于此示例文本,这是每个术语的位置列表和字符偏移的外观如下所示:

在此输入图像描述