Solr tika没有存储任何数据

时间:2013-08-16 00:48:45

标签: apache solr apache-tika

我面临着一个特殊的问题。我在这里根据solr wiki配置了我的数据配置和模式:Tika DIH

数据配置如下:

<dataConfig>
<dataSource type="BinURLDataSource" name="bin" />
    <document>
        <entity name="tika-test" processor="TikaEntityProcessor"
                 url = "http://adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/pdf_open_parameters.pdf" dataSource= "bin" format="text" >
                <field column="Author" name="author" meta="true"/>

                <field column="title" meta="true" name="title"/>
                <field column="text" name="text"/>
        </entity>
    </document>
</dataConfig>

架构是这样的:

 <fields>
   <field name="title" type="string" indexed="true" stored="true"/>

   <field name="author" type="string" indexed="true" stored="true" />


   <field name="text" type="text" indexed="true" stored="true" />


 </fields>
 <uniqueKey>text</uniqueKey>

我还有一个tika的可执行jar,当我从命令行使用jar版本时,上面的文档就完全被处理了。但是,使用solr数据导入会导入一组空字段。它成功但是创建的文档对于所有字段都是完全空的。我哪里错了?

我也尝试使用ExtractingRequestHandler。这就是我的请求处理程序的设置方式:

 <requestHandler name="/update/extract" class="org.apache.solr.handler.extraction.ExtractingRequestHandler">
    <lst name="defaults">
      <str name="fmap.Last-Modified">last_modified</str>
      <str name="uprefix">ignored_</str>
    </lst>
  </requestHandler>

尝试以下请求:

curl "http://localhost:3533/solr/solr/update/extract?literal.id=doc1&commit=true" -F "myfile=/home/superq/Downloads/tutorial.html"

我得到一个空的回复,如:

<response><lst name="responseHeader"><int name="status">0</int><int name="QTime">13</int></lst></response>

即使是日志文件也没有任何可能有用的内容。并且文档尚未编入索引。此外,似乎没有任何工作,因为将目标文件名更改为不存在的文件不会抛出错误。

我的问题是:

1)对于solr tika集成,我只需要将相应的tika文件(构建工件)复制到solr库路径中,或者我是否还需要将其作为服务安装?

2)对于转换文件,我是否需要创建.doc / .pdf文件的二进制版本,然后将其提供给solr?我看到一些关于此的文献相当令人困惑。 tika不应该照顾这个吗?

1 个答案:

答案 0 :(得分:1)

关于设置Tika&amp;的文章提取请求处理程序可能对您有用:

http://amac4.blogspot.co.uk/2013/07/setting-up-tika-extracting-request.html