【问题标题】:solr multiple pdf files indexing all at once.solr 一次索引多个 pdf 文件。
【发布时间】:2014-07-12 09:59:33
【问题描述】:

使用这个命令

curl '://localhost:8983/solr/update/extract?literal.id=doc1&commit=true' -F "myfile=@maven_tutorial.pdf"

我们可以通过在 solr 中指定我们自己的 id(DOC1) 来索引单个 pdf 文件。但我想一次索引许多 pdf 文件以进行 solr。让 solr 自动跟踪 id。

请帮帮我。

【问题讨论】:

  • 你想在一个 SOLR doc 下有多个 PDF 吗?

标签: pdf solr indexing


【解决方案1】:

您可以使用 UUID 类型字段作为唯一键。 先定义UUID字段类型

<fieldType name="uuid" class="solr.UUIDField" indexed="true" />

在 schema.xml 中添加您的 id 字段

<field name="id" type="uuid" indexed="true" stored="true"  multiValued="false"/>

将此字段设为唯一键

<uniqueKey>id</uniqueKey>

在 solrconfig.xml 中更新自动生成 id 的链

<updateRequestProcessorChain name="uuid">
<updateRequestProcessorChain name="uuid">
    <processor class="solr.UUIDUpdateProcessorFactory">
        <str name="fieldName">id</str>
    </processor>
    <processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>

现在将此更新链附加到从您提交给 solr 的 pdf 文件中提取内容的请求处理程序。

<requestHandler name="/update/extract" 
              startup="lazy"
              class="solr.extraction.ExtractingRequestHandler" >
<lst name="defaults">
  <str name="lowernames">true</str>
  <str name="uprefix">ignored_</str>
  <str name="captureAttr">true</str>
  <str name="fmap.a">links</str>
  <str name="fmap.div">ignored_</str>
  <str name="update.chain">uuid</str>
</lst>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-07
    • 2019-03-11
    • 1970-01-01
    • 2011-10-05
    相关资源
    最近更新 更多