【问题标题】:Solr 5 custom field and filterSolr 5 自定义字段和过滤器
【发布时间】:2015-06-06 13:22:55
【问题描述】:

我是 solr 的新手。在我尝试使用 Solr 5 客户端之后。我想尝试 Solr 5 源代码。 所以我的问题是,

  1. 我可以通过编辑在 solr 5 上为我自己的核心创建一个自定义字段吗 架构.xml?如果可能,请告诉我位置(它不在我的 conf 文件夹中,我应该创建一个新文件夹吗?)。
  2. 除了使用架构之外,还有其他方法可以添加自定义字段吗 api?
  3. 每次我尝试创建一个新内核然后索引文件时,只有currency.xmlelevate.xmlmanaged-schema(生成的架构)、params.jsonprotwords.txtsolrconfig.xml、@987654327 @synonyms.txt 在我的conf 文件夹中,没有schema.xml。我错过了什么吗?
  4. 有没有简单的教程来解释 solr 5 上的自定义过滤器?

我真的很欣赏你的回答。谢谢

【问题讨论】:

    标签: solr solr5


    【解决方案1】:

    当您在 Solr 5 中创建核心时,默认情况下它会激活无模式模式。此模式使 solr 架构不可见,所有更改都需要使用架构 API 完成。如果您想自己管理架构,可以将 managed-schema 重命名为 schema.xml 并修改 solrconfig.xml 以不使用无架构模式。在solrconfig.xml 替换

     <schemaFactory class="ManagedIndexSchemaFactory">
       <bool name="mutable">true</bool>
       <str name="managedSchemaResourceName">managed-schema</str>
     </schemaFactory>
    

    通过

     <schemaFactory class="ClassicIndexSchemaFactory"/>
    

    现在 solr 将使用自己管理的schema.xml

    唯一要使用的强制配置文件是solrconfig.xml,在您的情况下为schema.xml。仅当您使用它们配置一些过滤器时才会使用其他文件。如果您使用示例schema.xml,您可能需要拥有所有这些文件。但是清理配置文件以仅包含您真正希望使用的字段和字段类型。

    要了解有关过滤器、标记器和分析器的更多信息,您可以查看https://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters

    【讨论】:

      【解决方案2】:
      1. 是的
      2. 据我所知,手动编辑架构和使用 API 只是两种方式。
      3. 您究竟是如何创建这个内核的?你在使用 install_solr_service.sh 吗?假设它是一个 linux 系统,检查 /var/solr/configs 文件夹。如果您运行该脚本,那就是配置文件所在的位置。
      4. 当然是的:)。 https://cwiki.apache.org/confluence/display/solr/Apache+Solr+Reference+Guide 有一个“入门”部分,它应该回答你所有的问题,包括配置存储在哪里,如何使用它们等。

      搜索愉快!

      【讨论】:

      • 谢谢你的回答,现在我已经通过了模式。现在我想为我的字段添加一个自定义过滤器。比方说,在索引期间我想检查项目是否包含一个单词。我已经决定使用标准标记器。 solr 有这方面的教程吗?我已经检查过这个solr.pl/en/2013/02/04/developing-your-own-solr-filter-part-2 但我看不懂代码
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-08
      • 1970-01-01
      • 1970-01-01
      • 2013-11-24
      • 2017-11-13
      • 2017-03-05
      • 2014-04-30
      相关资源
      最近更新 更多