Apache Nutch 爬虫中的 Solr 索引

Apache Nutch 爬虫中的 Solr 索引

我正在使用 Apache Nutch 爬虫并遵循https://wiki.apache.org/nutch/NutchTutorial。但是当我建立索引时,出现如下错误。

段目录已完成:crawl/segments/2xxxxxxxxxxxxx。

-filer 处的输入路径不是一个段...跳过

索引器:开始于 2019-04-02 14:16:21

索引器:删除已消失的文档:true

索引器:URL 过滤:false

索引器:URL 规范化:true

未配置任何交换。文档将被路由至所有索引编写器。

活动 IndexWriters : SOLRIndexWriter type :服务器类型。可以是:“cloud”、“concurrent”、“http”或“lb” url : SOLR 实例的 URL 或 Zookeeper 仲裁的 URL commitSize :发送到 SOLR 时的缓冲区大小(默认为 1000) auth :使用身份验证(默认为 false) username :身份验证的用户名 password :身份验证的密码

索引 1/1 个文档 删除 0 个文档 索引作业未成功,作业状态:FAILED,原因:NA 索引器:java.lang.RuntimeException:索引作业未成功,作业状态:FAILED,原因:NA 在 org.apache.nutch.indexer.IndexingJob.index(IndexingJob.java:152) 在 org.apache.nutch.indexer.IndexingJob.run(IndexingJob.java:235) 在 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 在 org.apache.nutch.indexer.IndexingJob.main(IndexingJob.java:244)

我该如何解决这个问题?

答案1

如果你在 solr.log 中看到 This IndexSchema is not mutable. ,那么在 solrconfig.xml 中,将 true 替换为 false

<updateRequestProcessorChain name="add-unknown-fields-to-the-schema" default="${update.autoCreateFields:false}"
           processor="uuid,remove-blank,field-name-mutating,parse-boolean,parse-long,parse-double,parse-date,add-schema-fields">

然后它可能会起作用,或者至少在 solr.log 中会有更多信息

答案2

我遇到了同样的问题,并发现在 Solr 中名为“nutch”的核心未被映射,因此我从 Solr > 核心管理 (http://localhost:8983/solr/#/)(创建名为 nutch 的新文件夹并复制模式文件)并且它起作用了。

相关内容