代码之家  ›  专栏  ›  技术社区  ›  neu242

Solr的DatePointField是TrieDateField的替代品吗?

  •  2
  • neu242  · 技术社区  · 6 年前

    我在Solr 7.5安装中收到一些弃用警告:

    [ WARN] 16:38:36  Solr loaded a deprecated plugin/analysis class [solr.TrieIntField]. Please consult documentation how to replace it accordingly. []
    [ WARN] 16:38:36  Solr loaded a deprecated plugin/analysis class [solr.TrieFloatField]. Please consult documentation how to replace it accordingly. []
    [ WARN] 16:38:36  Solr loaded a deprecated plugin/analysis class [solr.TrieLongField]. Please consult documentation how to replace it accordingly. []
    [ WARN] 16:38:36  Solr loaded a deprecated plugin/analysis class [solr.TrieDoubleField]. Please consult documentation how to replace it accordingly. []
    [ WARN] 16:38:36  Solr loaded a deprecated plugin/analysis class [solr.TrieDateField]. Please consult documentation how to replace it accordingly. []
    [ WARN] 16:38:36  Solr loaded a deprecated plugin/analysis class [solr.LatLonType]. Please consult documentation how to replace it accordingly. []
    [ WARN] 16:38:37  Solr loaded a deprecated plugin/analysis class [solr.WordDelimiterFilterFactory]. Please consult documentation how to replace it accordingly. []
    [ WARN] 16:38:37  Solr loaded a deprecated plugin/analysis class [solr.SynonymFilterFactory]. Please consult documentation how to replace it accordingly. []
    

    documentation 只是告诉我Trie*已经过时了,我找不到迁移指南,除了:

    TrieDateField: Deprecated. Use DatePointField instead.
    

    我可以替换Trie*字段类型类并更新正在运行的Solr实例上的模式吗?

    那么这里提到的非Trie字段呢?

    1 回复  |  直到 6 年前
        1
  •  3
  •   MatsLindh    6 年前

    他们是否是临时替代品取决于你的使用情况,但是的,他们应该做同样的事情,只是更有效。你呢 但是,必须在更改类型后重新编制索引—不能只更改模式,并假设现有数据将按预期工作(因为在对文档进行迭代操作时,最终会得到不同的数据类型)。

    对于过滤器,它们已经被相应的图形(同义词graphfilter和WordDelimiterGraphFilter)所取代。

    LatLonType已替换为LatLonPointSpatialField。

    changes in Major Changes in Solr 7

    如果您在您的模式中使用Trie*字段,您应该考虑尽快转移到PointFields。更改为新的点域类型将需要重新索引数据。