Nutch2.1通过gora对存储层进行了扩展,可以选择使用HBase、Accumulo、Cassandra 、MySQL 、DataFileAvroStore、AvroStore中任何一种来存储数据,但其中一些并不成熟。在我的反复测试中发现,整体来说,Nutch2.1比起Nutch1.6的性能要差得多,最重要的是不能长期稳定运行。Nutch1.6使用Hadoop Distributed File System (HDFS)来作为存储,稳定可靠。下面分别说说每一种存储方式的情况:
HBase(column stores),支持输入分割,以Region为最小分割单位。随着数据规模的增大,并行处理的优势就体现出来了,所以适合大数据应用。不过对HBase集群的维护是一大问题,比HDFS复杂得多,内存消耗也很恐怖。
Accumulo(key/value store )抓取3轮之后就异常退出,提示UnsupportedOperationException。
Cassandra(column stores),需要注意的是/etc/hosts中localhost不能映射到127.0.0.1。Cassandra最大的问题在于不支持输入分割,就算数据规模再大也只有一个map,完全失去了并行性。
MySQL (RDBMS),只有一台服务器作为数据源,那么随着数据规模的增大,MySQL 要怎么面对呢?所以MySQL对于小规模的简单的垂直搜索之类的应用比较合适。
DataFileAvroStore(data serialization system ),Injection job throws NullPointerException,见https://issues.apache.org/jira/browse/NUTCH-1477 。
AvroStore(data serialization system ),和DataFileAvroStore同样的问题。
从上面的分析来看,目前gora还亟待改进。对于追求性能极致的朋友来说,nutch2.1还不稳定,建议使用nutch1.6,利用HDFS和MapReduce的数据本地化及天然的并行性,可以优化到非常快的速度。
HBase(column stores),支持输入分割,以Region为最小分割单位。随着数据规模的增大,并行处理的优势就体现出来了,所以适合大数据应用。不过对HBase集群的维护是一大问题,比HDFS复杂得多,内存消耗也很恐怖。
Accumulo(key/value store )抓取3轮之后就异常退出,提示UnsupportedOperationException。
Cassandra(column stores),需要注意的是/etc/hosts中localhost不能映射到127.0.0.1。Cassandra最大的问题在于不支持输入分割,就算数据规模再大也只有一个map,完全失去了并行性。
MySQL (RDBMS),只有一台服务器作为数据源,那么随着数据规模的增大,MySQL 要怎么面对呢?所以MySQL对于小规模的简单的垂直搜索之类的应用比较合适。
DataFileAvroStore(data serialization system ),Injection job throws NullPointerException,见https://issues.apache.org/jira/browse/NUTCH-1477 。
AvroStore(data serialization system ),和DataFileAvroStore同样的问题。
从上面的分析来看,目前gora还亟待改进。对于追求性能极致的朋友来说,nutch2.1还不稳定,建议使用nutch1.6,利用HDFS和MapReduce的数据本地化及天然的并行性,可以优化到非常快的速度。
相关推荐
Nutch 2.1 是一个开源的网络爬虫项目,它是Apache软件基金会的一部分,主要用于抓取、解析网页并建立搜索引擎索引。这个“nutch2.1最新svn打包”资源包含的是Nutch 2.1的最新源代码版本,通过Subversion (SVN) 版本...
nutch2.1导入Eclipse过程中,import org.restlet.×;错误,缺少的包。
nutch2.1导入Eclipse过程中,import org.restlet.×;错误,缺少的包。
Gora 是一个开源的持久化层,支持多种分布式数据存储系统,如 HBase、Cassandra 和 MongoDB,提供了统一的接口来访问这些存储。 4. **Segment 分割**: 网页抓取过程中,Nutch 将数据分割成多个 Segment,每个 ...
Nutch-2.1是Apache Nutch的一个特定版本,它是一个用Java编写的开源搜索引擎软件。这个项目的主要目标是提供一套高效、可扩展的搜索引擎工具,使得用户可以在自己的环境中搭建和运行自己的搜索引擎。Nutch不仅仅是一...
5. solr-4.10.3.zip:Solr 是一个基于 Lucene 的全文搜索引擎服务器,用于存储和检索 Nutch 抓取的数据。 将这些文件复制到 `/home/nutch` 目录下并解压。接着,配置环境变量。打开 `.bashrc` 文件(如果不存在,请...
3. **分析器**:Nutch使用Apache Tika库对抓取的数据进行分析,识别并提取各种格式的文件内容,如PDF、Word文档等。此外,它还应用了词干化和停用词过滤等自然语言处理技术,进一步优化文本内容。 4. **索引器**:...
5.5 nutch的其他一些特性..31 6. nutch分析方法和工具........33 6.1 Crawldb......33 6.2 Linkdb........35 6.3 Segments....35 6.4 Index..39 7. nutch分布式文件系统........41 2007-8-26 北京邮电大学-李阳 ...
3. 链接分析(Link Analysis):Nutch使用PageRank算法或其他链接分析算法对网页进行排名,决定哪些页面更重要。 4. 索引(Indexing):重要性较高的网页被索引,以便后续的搜索查询。 5. 搜索(Searching):用户...
自Nutch1.2版本之后,Nutch已经从搜索引擎演化为网络爬虫,接着Nutch进一步演化为两大分支版本:1.X和2.X,这两大分支最大的区别在于2.X对底层的数据存储进行了抽象以支持各种底层存储技术。 在Nutch的进化过程中,...
6. **评分**:Nutch 使用 PageRank 算法或其他评分策略对网页进行排名,决定哪些页面更值得关注。 7. **索引**:将解析后的数据转换为倒排索引,方便快速查询。 8. **搜索**:最后,Nutch 提供了一个简单的搜索...
Crawldb是Nutch用于存储已抓取网页信息的数据库,包括网页的URL、抓取时间、状态码等,是分析抓取效率和效果的重要工具。 **6.2 Linkdb** Linkdb用于存储网页之间的链接关系,是分析网页结构和构建链接图谱的基础...
7. **环境变量配置**:在Cygwin环境中,你可能需要设置一些环境变量,如Nutch的安装路径。可以通过运行`cygwin.bat`文件来启动Cygwin终端,并使用`cd`命令切换到Nutch的安装目录,然后使用`ls -l`查看目录内容。运行...
然而,Nutch的安装和配置可能对初学者来说有些复杂,尤其是在不同的操作系统和开发环境中。因此,利用Eclipse作为开发工具,可以简化Nutch的配置流程,提供一个友好的图形界面来管理项目和代码,同时利用其强大的...
这些配置文件中存储了诸如Java虚拟机设置、Hadoop相关配置以及Nutch运行时的各项参数。 而Nutch的简单应用则体现在用户如何利用Nutch提供的这些命令和配置选项,根据自己的需求来抓取和索引网络上的数据。例如,...
以下是对 Nutch 0.9 版本的一些关键知识点的详细解释: 1. **Nutch 概述**: Nutch 是 Apache 基金会的一个项目,旨在创建一个可扩展、高性能的互联网搜索引擎。它是一个基于 Java 的开源软件,支持分布式计算,...