【问题标题】:Can Solr replicate external file fields file?Solr 可以复制外部文件字段文件吗?
【发布时间】:2013-06-24 22:20:28
【问题描述】:

我有几个每小时都会重新加载的外部文件字段。我的 solrconfig.xml 有

<dataDir>${solr.data.basedir}/${solr.core.name}</dataDir>

并且外部文件字段文件位于此目录下,例如external_*。使用 Solr 复制,我只能复制索引和配置文件。唯一的选择是在从站上单独重新加载这些文件,然后在所有从站上单独调用reloadCache?或者 Solr 可以复制外部文件字段文件吗?

【问题讨论】:

    标签: solr


    【解决方案1】:

    Solr 能够replicate the configuration files 和索引。
    复制文件后,Solr 内核将重新加载到从属服务器上,无需手动完成。

    编辑:-

    外部文件的位置是被复制的数据文件夹。

    也用于重新加载外部文件检查link

    【讨论】:

    • 猜你看错了我的qn。我想知道 Solr 是否可以复制包含外部文件字段的文件。即匹配 glob 模式 ${solr.data.basedir}/${solr.core.name}/external_*. 的文件
    • 哦。外部文件位于数据文件夹中,默认情况下它们不应该与索引一起复制吗?
    • 不,Solr 不会自动复制这些文件,即使它们位于 data 文件夹下。
    【解决方案2】:

    Solr 不会自动复制 ext 文件字段文件,即使它们位于 solrconfig.xml 中指定的 &lt;dataDir&gt; 下。要复制这些文件,我们需要在 solrconfig 的复制处理程序中的 confFiles 下使用相对路径指定它们。

    我的 Solr conf 目录(包含 solrconfig.xml、synonyms.txt 等)位于:

    /var/solr/application-cores/List/conf
    

    我的包含 ext 文件字段文件的数据目录位于:

    /var/solr-data/List
    

    所以我的 confFiles 看起来像:

    <str name="confFiles">solrconfig.xml,data-config.xml,schema.xml,stopwords.txt,synonyms.txt,elevate.xml,../../../../solr-data/List/external_eff_views</str>
    

    不允许使用通配符,所以我必须分别指定每个 ext 文件字段文件 :-(.

    感谢@Jayendra 指出的link,由于我在 solrconfig.xml 中设置了侦听器,因此我可以在复制后将 ext 文件字段重新加载到从站上:

    <listener event="newSearcher" class="org.apache.solr.schema.ExternalFileFieldReloader"/>
    <listener event="firstSearcher" class="org.apache.solr.schema.ExternalFileFieldReloader"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-07
      • 1970-01-01
      • 1970-01-01
      • 2018-02-15
      • 2020-11-26
      • 2018-03-26
      • 2021-02-03
      • 2011-08-04
      相关资源
      最近更新 更多