elasticsearch 弹性检索:将分析器/标记化器/筛选器设置的更改应用于现有索引

sqyvllje  于 2023-01-12  发布在  ElasticSearch
关注(0)|答案(1)|浏览(145)

我是ElasticSearch的新手,所以如果我忽略了一些明显的/基本的东西,请原谅我。
我想更改分析器/标记器/过滤器的设置,然后将它们应用于现有索引。我能想到的唯一方法如下:

  • 创建一个新的索引。
  • 假设您要更改posts索引的设置,请创建posts-copy索引。
  • posts重新索引为posts-copy
  • 删除posts
  • 重新创建posts索引,应用新设置。
  • posts-copy重新索引为posts
  • 删除posts-copy

我用ElasticSearch的Ruby客户端尝试过这种方法,看起来很有效。但是,我不确定这种方法是否真的合适。我觉得它是相当多余的,可能有更有效的方法来应用新设置。
如果你能对这个问题提供一些线索,我将不胜感激。

az31mfrm

az31mfrm1#

这取决于您在analyzers/tokenizers/filters上进行的更改类型,如果您在现有字段上进行更改,则这些更改是破坏性更改,您必须使用新设置重新创建索引(如您所提到的),但如果您在索引中添加新字段,并为此创建新设置,则您不必重新创建索引,这称为增量更改。
希望这个有用。

相关问题