【问题标题】:How to have different schema files to different cores in SOLR?如何在 SOLR 中为不同的核心提供不同的模式文件?
【发布时间】:2011-09-21 17:49:15
【问题描述】:

我有一个具有三个不同内核的 SOLR 实例。
我创建了一个 solr.xml 配置文件,它为每个核心指定了架构文件,但是无法识别。系统仍然尝试加载默认的 schema.xml(我删除了它,所以它失败了)。

出于调试目的,我在 solr.xml 中只留下了一个代码,以下是我拥有的条目:

<solr persistent="false">
  <cores adminPath="/admin/cores" defaultCoreName="content" shareSchema="false">
        <core name="content" instanceDir=".">
                <property name="schema" value="conf/contentSchema.xml" />
        </core>
  </cores>
</solr>

文件 `contentSchema.xml 存在于 [SOLR_HOME]/conf 下。只尝试了文件名和 conf/文件名

甚至没有达到那个阶段,错误是:

严重:java.lang.RuntimeException:在类路径中找不到资源“schema.xml”或 /usr/local/solr/./conf/', cwd=/usr/local/solr

【问题讨论】:

    标签: java lucene solr


    【解决方案1】:

    如果您已下载源代码,请查看演示多核配置的多核文件夹,您可以参考和测试。 或参考@http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/example/multicore/

    更多@http://wiki.apache.org/solr/CoreAdmin#Configuration - 将是一个很好的起点。

    多核不必位于 solr 主文件夹下,可以使用 -Dsolr.solr.home=多核

    solr.xml 与核心文件夹位于同一文件夹中。 实例目录指向核心文件夹 schemaName -- 核心架构文件的名称(默认为 schema.xml) 例如

    <core name="content" instanceDir="content">
         <property name="schemaName" value="contentSchema.xml" />
    </core>
    

    【讨论】:

    • 我所做的一切都是根据这个文档,出于某种原因,我不能覆盖 schema.xml 名称。哦..好吧,我将简单地为每个核心使用不同的目录 - 谢谢。
    【解决方案2】:

    仔细阅读文档,'schema' 是核心元素的属性,而不是属性。所以假设你把'myschema.xml'放在核心的conf文件夹下:

    <core ....>
       <property name="schema" value="myschema.xml" />
    </core>
    

    会导致 can't find schema.xml in classpath 或 ...../conf 错误

    然而,

    <core .... schema='myschema.xml' />
    

    会成功的。

    注意:我猜 Lucid Imagination 的文档可能已经过时,或者可能是在谈论 Solr 未来版本的功能。

    【讨论】:

      【解决方案3】:

      这是我最终使用的并且正在工作的东西

      <cores adminPath="/admin/cores" defaultCoreName="content">
          <core name="content" instanceDir="./content" />
          <core name="users" instanceDir="./users" />
          <core name="users_organizations" instanceDir="./users_organizations" />
      </cores>
      

      在每个目录下,我都有一个 conf 目录,其中包含它自己的 conf 文件,它们又指向正确的 data 文件夹(在 solrconfig.xml 文件中)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-08-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-27
        • 2022-11-26
        • 2011-07-30
        • 1970-01-01
        相关资源
        最近更新 更多