`

Nutch2 + Solr 6: solrdedup causes ClassCastException

 
阅读更多

Error running:

  /mnt/nutch/nutch/runtime/local/bin/nutch solrdedup -D mapred.reduce.tasks=2 -D mapred.child.java.opts=-Xmx1000m -D mapred.reduce.tasks.speculative.execution=false -D mapred.map.tasks.speculative.execution=false -D mapred.compress.map.output=true http://localhost:8983/solr/nutch

Failed with exit value 1.

 

hadoop.log :

java.lang.Exception: java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.String

        at org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:462)

        at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:522)

Caused by: java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.String

        at org.apache.nutch.indexer.solr.SolrDeleteDuplicates$SolrRecordReader.nextKeyValue(SolrDeleteDuplicates.java:233)

        at org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.nextKeyValue(MapTask.java:533)

        at org.apache.hadoop.mapreduce.task.MapContextImpl.nextKeyValue(MapContextImpl.java:80)

        at 

 

这个报错在solr5,6都存在。参考的解决方案见这里:

http://lucene.472066.n3.nabble.com/Nutch-2-Solr-5-solrdedup-causes-ClassCastException-td4301149.html#a4302739

 

1)将solr-6.6.0/server/solr/configsets目录下的data_driven_schema_configs复制一份到原目录下,并重命名为nutch

2)$NUTCH_HOME/conf下的schema.xml复制到server/solr/configsets/nutch/conf下。

3)将server/solr/configsets/nutch/conf/schema.xml文件中的enablePositionIncrements删掉。

4)执行命令创建core:

 

solr create -c nutch -d nutch

   解释:[-c name] [-d confdir]

 

   这里的nutch分别是core的名字和上面指定的conf的名字

成功了会看到这样的输入:

Zhuos-MacBook-Pro:solr-6.6.0 jo$ solr create -c nutch -d nutch

 

Copying configuration to new core instance directory:

/Users/jo/soft/solr-5.5.4/server/solr/nutch

 

Creating new core 'nutch' using command:

http://localhost:8983/solr/admin/cores?action=CREATE&name=nutch&instanceDir=nutch

 

{

  "responseHeader":{

    "status":0,

    "QTime":107},

  "core":"nutch"}

 

 

 

如果报错:ERROR: Error CREATEing SolrCore 'nutch': Unable to create core [nutch] Caused by: fieldType 'tdates' not found in the schema

这里可以是tdates或者其他的..可以对比下server/solr/configsets/nutch/conf目录下的schema.xml和managed-schema两个文件。tdates应该是在managed-schema文件中用到了,却没有在schema.xml中定义。因此将managed-schema中tdates的定义拷贝到schema.xml中。例如下面这段我是从managed-schema中找到的,然后拷贝到了schema.xml中:

    <fieldType name="tints" class="solr.TrieIntField" docValues="true" precisionStep="8" positionIncrementGap="0" multiValued="true"/>
    <fieldType name="tfloats" class="solr.TrieFloatField" docValues="true" precisionStep="8" positionIncrementGap="0" multiValued="true"/>
    <fieldType name="tlongs" class="solr.TrieLongField" docValues="true" precisionStep="8" positionIncrementGap="0" multiValued="true"/>
    <fieldType name="tdoubles" class="solr.TrieDoubleField" docValues="true" precisionStep="8" positionIncrementGap="0" multiValued="true"/>

 

这下应该没什么问题了。

 

 

分享到:
评论

相关推荐

    Nutch+solr + hadoop相关框架搭建教程

    总的来说,Nutch+Solr+Hadoop 的框架搭建涉及多个组件的安装、配置和协同工作。理解这些组件的功能和相互之间的关系,以及如何通过脚本和配置文件控制它们,是成功搭建和使用该框架的关键。这个教程提供了详细步骤,...

    Nutch,第1部分:爬行(译文)

    ( Nutch,第1部分:爬行(译文) ( Nutch,第1部分:爬行(译文)

    nutch2.3+hbase0.94.14+hadoop1.2.1安装文档.

    nutch2.3+hbase0.94.14+hadoop1.2.1安装文档.txt )

    nutch入门经典翻译1:Introduction to Nutch, Part 1: Crawling

    《Nutch入门经典翻译1:Introduction to Nutch, Part 1: Crawling》一文深入介绍了Nutch这一开源网络爬虫框架的基本概念、体系结构及其关键组件,为初学者提供了全面的理解视角。以下是对该文章核心知识点的详细解读...

    nutch爬虫+java+eclipse

    Nutch 是一个开源的全文搜索引擎框架,主要用于网络数据抓取,是Java开发的,因此它为Java开发者提供了一个构建大规模网络爬虫的平台。在Java环境下结合Eclipse IDE,我们可以轻松地开发和调试Nutch爬虫项目。下面将...

    Nutch2.3.1 环境搭建

    Nutch2.3.1是Apache Nutch的一个稳定版本,它是一个开源的网络爬虫框架,主要用于抓取、解析和索引互联网上的网页内容。在本文中,我们将深入探讨如何搭建Nutch2.3.1的运行环境,以便进行网页抓取和分析。 **一、...

    Windows下cygwin+MyEclipse 8.5+Nutch1.2+Tomcat 6.0

    ### Windows下cygwin+MyEclipse 8.5+Nutch1.2+Tomcat 6.0 本文旨在详细介绍如何在Windows环境下搭建基于cygwin、MyEclipse 8.5、Nutch 1.2及Tomcat 6.0的开发环境,并对每个步骤进行深入解析。 #### 一、Cygwin的...

    Apache Nutch 1.7 在windows和Linux下的安装

    6. Nutch 在 Linux 下的安装 在 Linux 平台上,安装 Nutch 1.7 的步骤如下: * 首先,需要安装 JDK,因为 Nutch 1.7 需要 Java 运行环境来运行。 * 之后,需要安装 Tomcat,因为 Nutch 1.7 需要 Tomcat 来提供 Web...

    Crawling-and-Deduplication-of-Polar-Datasets-Using-Nutch-and-Tika:使用Nutch和Tika对Polar数据集进行爬网和重复数据删除

    使用Nutch和Tika爬行和重复数据删除重复数据集 #Politeness配置:为了处理礼貌,已将属性添加到文件nutch-site.xml中。 我们将坚果机器人(http.agent.name)标记为CS572 RASNA,代理说明(http.agent.description)...

    OCR_FontsSearchEngine, 一种超立方体Nutch和PHP的OCR搜索引擎.zip

    OCR_FontsSearchEngine, 一种超立方体Nutch和PHP的OCR搜索引擎 Silex框架 ;thiagoalessio ;nutch1.10+solr4.10.4 ;``` shell

    基于hbase+solr的搜索引擎毕业论文

    Nutch抓取指定网址数据,存储在HBase数据库中,存储过程由zookeeper管理。脚本调用索引器部件将数据索引化,经过索引化的数据被前端检索查询,最后前端展示查询结果,用户点击结果列表查看目标资料。

    lucene2.4+nutch学习笔记三:lucene 在多个文本文档里找出包含一些关键字的文档

    《Lucene 2.4与Nutch学习笔记:在多文档中搜索关键词》 Lucene是一个高性能、全文检索库,而Nutch则是一个开源的网络爬虫项目,两者结合使用,能够实现对大量文本文档的高效搜索和索引。这篇学习笔记主要探讨如何...

    基于Apache Nutch和Solr的AJAX页面内容爬取与处理设计源码

    本项目是基于Apache Nutch和Solr开发的AJAX页面内容爬取与处理设计源码,主要使用Java进行开发。项目共包含1064个文件,其中Java源代码文件458个,XML配置文件181个,文本文件81个,HTML页面文件56个,JPG图片文件56...

    nutch安装开发环境的配置

    2. **java.lang.RuntimeException: org.apache.nutch.plugin.PluginRuntimeException: java.lang.ClassNotFoundException: org.apache.nutch.net.RegexURLFilter** 这个问题可能是因为插件目录设置不正确。在 `...

    Nutch入门资料PDF格式

    ### Nutch入门资料知识点概述 #### 一、Nutch简介及安装配置 - **Nutch**: 开源网络爬虫项目,基于Apache Hadoop构建,能够抓取和索引大量网络数据,广泛应用于搜索引擎开发。 - **环境搭建**: - **配置中文API...

    nutch的安装方法,好用

    6. **修改Nutch配置文件**: - 打开 `nutch\conf\nutch-site.xml` 文件,在 `&lt;configuration&gt;` 标签内添加以下内容来配置目标站点: ```xml &lt;name&gt;http.robots.agents&lt;/name&gt; &lt;value&gt;...

    Lucene+Nutch本书源码+详细说明

    《Lucene+Nutch:搜索引擎开发深度解析》一书的源码及详细说明是搜索引擎开发者和爱好者的重要参考资料。这本书深入探讨了如何使用Apache Lucene和Nutch构建一个完整的搜索引擎系统,涵盖了从网页抓取到索引建立,再...

    apache-nutch-2.2.1(Eclipse直接运行版)001

    apache-nutch-2.2.1(Eclipse直接运行版)今天刚做的,发现有很多坑,分享给大家实验,JDK1.7 Win10。我分享的两个压缩卷一起下载才可以用,资源限制太小了 002地址:...

Global site tag (gtag.js) - Google Analytics