【问题标题】:Adding ngram to solr schema and rebuilding the index将 ngram 添加到 solr 架构并重建索引
【发布时间】:2014-08-04 06:12:26
【问题描述】:

我正在尝试将 ngram 过滤器添加到我现有的架构中以启用子字符串搜索...

当前的 solr 索引有 1000 万行...如果我将此更改添加到架构。我需要重建索引吗?

<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
  <analyzer type="index">
    <filter class="solr.EdgeNGramFilterFactory" minGramSize="3" maxGramSize="25" />

【问题讨论】:

    标签: solr


    【解决方案1】:

    您需要重新编制索引才能使更改对已编制索引的文档生效。 EdgeNGramTokenFilter 通过将标记分解为 n-gram 并对每个 n-gram 进行索引来工作,这只能在索引时完成。如果你不重新索引 Solr 将工作,但你不会得到正确的子字符串搜索。

    一般来说,只要您更改需要重新索引的字段的分析器。如果当前模式与索引期间使用的模式不匹配,Solr 通常会中断或产生不正确的搜索结果。如果您可以轻松地重新编制索引,那将比深入研究并找出 Solr 在架构更改后行为不端的原因要容易得多。

    【讨论】:

      猜你喜欢
      • 2014-04-03
      • 1970-01-01
      • 2022-11-11
      • 1970-01-01
      • 2015-08-26
      • 1970-01-01
      • 2011-08-09
      • 1970-01-01
      • 2020-07-01
      相关资源
      最近更新 更多