【问题标题】:Solr 6.1: UpdateRequestProcessor to Append to Field Name Based on Field NameSolr 6.1:UpdateRequestProcessor 根据字段名称附加到字段名称
【发布时间】:2016-11-17 17:19:18
【问题描述】:

目标是让我的所有字段名称都与以下字段架构匹配:

<field name="_version_" type="long" indexed="true" stored="true" />
<field name="_root_" type="string" indexed="true" stored="false" />
<field name="id" type="string" indexed="true" stored="true" required="true" />
<field name="text" type="text_general" indexed="true" stored="false" required="false" multiValued="true" />
<dynamicField indexed="true" name="*_is" stored="true" type="int" multiValued="true" />
<dynamicField indexed="true" name="*_ls" stored="true" type="long" multiValued="true" />
<dynamicField indexed="true" name="*_fs" stored="true" type="float" multiValued="true" />
<dynamicField indexed="true" name="*_ds" stored="true" type="double" multiValued="true" />
<dynamicField indexed="true" name="*_bs" stored="true" type="boolean" multiValued="true" />
<dynamicField indexed="true" name="*_i" stored="true" type="int" />
<dynamicField indexed="true" name="*_s" stored="true" type="string" />
<dynamicField indexed="true" name="*_ss" stored="true" type="string" multiValued="true" />
<dynamicField indexed="true" name="*_txt" stored="true" type="text_general" multiValued="true" />
<dynamicField indexed="true" name="*_t" stored="true" type="text_general" />
<dynamicField indexed="true" name="*_l" stored="true" type="long" />
<dynamicField indexed="true" name="*_b" stored="true" type="boolean" />
<dynamicField indexed="true" name="*_f" stored="true" type="float" />
<dynamicField indexed="true" name="*_d" stored="true" type="double" />
<dynamicField indexed="true" name="*_tdt" stored="true" type="tdate" />
<dynamicField indexed="true" name="*_dt" stored="true" type="date" />
<uniqueKey>id</uniqueKey>

原因有两个:

  1. 我正在摄取我无法控制的传入 CSV 数据。我有一组约 35 个不同的字段名称,它们是上述的一个或两个。
  2. 除了这 35 个字段之外,架构在不断发展。

目标是有条件地将 ~35 的子集与上述之一匹配,并且任何与这 ~35 个名称之一不匹配的内容都附加_s 以使其成为字符串。

这在 Solr 6 中是否可行?

【问题讨论】:

  • 目前我最终编写了一个 python 脚本来临时存储数据批次并相应地更新标头。

标签: solr solr6 solr-schema


【解决方案1】:

您总是可以只声明一个动态字段星 (*) 来具有字符串类型。这样你就不需要弄乱后缀了。

【讨论】:

    猜你喜欢
    • 2018-09-24
    • 1970-01-01
    • 2014-06-13
    • 1970-01-01
    • 2011-02-05
    • 2020-11-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多