[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(四)
来源:互联网 发布:单点登录源码 编辑:程序博客网 时间:2024/05/21 22:34
这是本指南的最后一篇,从开始做到完成,本熊花了一周的时间,碰到的错误也可谓千奇百怪。
纯初学者说明模式
本章节主讲实现本地模式
- Nutch的配置与编译
- Nutch与Hadoop,Hbase,Solr的集成
- Nutch的启动与结果查看
0.初期设置说明
路径说明
本熊假设Hadoop的主目录为HadoopPath,Hbase的主目录为HbasePath,Nutch的主目录为NutchPath,Solr的主目录为SolrPath
以下是本熊的解压位置:
HadoopPath的值就是/usr/Dzy/hadoop-2.5.2
HbasePath的值就是/usr/Dzy/hbase-0.98.8-hadoop2
NutchPath的值就是/usr/Dzy/apache-nutch-2.3.1
SolrPath的值就是/home/as/下载/solr-4.10.3
各位可以按照自己的路径进行设置,本熊再次只为说明方便
使用版本说明
就如同本熊在第一期中提到的,要选择正确的相互适应兼容的版本,会帮您省去大堆不必要的麻烦,减少脱发,改善睡眠,提高生活质量
- Apache Nutch 2.3.1
- Apache Hadoop 1.2.1 and 2.5.2
- Apache HBase 0.98.8-hadoop2 (although also tested with 1.X)
- Apache Solr 4.10.3
- Apache Tomcat(可选,版本随意,用于集成solr)
1.Nutch的配置与编译
此处的配置只在local模式中测试成功,deploy模式还未进行测试
在NutchPath目录下,把
/ivy
文件夹中修改ivy.xml文件,将以下内容的注释取消(将包含此代码段开头<!--
的和结尾的-->
消除即可)<dependency org="org.apache.gora" name="gora-hbase" rev="0.6.1" conf="*->default" />
这是将Nutch的默认的结果存储方式变更为Hbase
在NutchPath目录下,把
/conf
文件夹中修改nutch-site.xml
文件,在<configuration></configuration>
标签中添加以下设置<property> <name>storage.data.store.class</name> <value>org.apache.gora.hbase.store.HBaseStore</value> <description>Default class for storing data</description> </property> <property> <name>http.agent.name</name> <value>My Nutch Spider</value> </property> <property> <name>plugin.includes</name> <value>protocol-http|urlfilter-regex|parse-(html|tika)|index-(basic|anchor)|urlnormalizer-(pass|regex|basic)|scoring-opic|index-anchor|index-more|languageidentifier|subcollection|feed|creativecommons|tld</value> <description>Regular expression naming plugin directory names to include. Any plugin not matching this expression is excluded. In any case you need at least include the nutch-extensionpoints plugin. By default Nutch includes crawling just HTML and plain text via HTTP, and basic indexing and search plugins. In order to use HTTPS please enable protocol-httpclient, but be aware of possible intermittent problems with the underlying commons-httpclient library. </description> </property>
这三个property分别指的是Nutch的默认存储类型,爬虫的名字,和插件库的位置,如果错误中出现job-XXXXX的情况,那就是没有配置好插件库property
在相同目录下,修改regex-urlfilter.txt,将最后部分修改为
# accept anything else#+.+^http://([a-z0-9]*\.)*nutch.apache.org/
这里写的是抓取过滤的正则表达式,各位可以按各自所需修改
网上有些说也要修改nutch-default.xml,其实没有这个必要,若在nutch-site.xml存在配置,会优先选择其中的属性
在相同目录下修改gora.properties文件,添加以下配置,确保存储在Hbase上
gora.datastore.default=org.apache.gora.hbase.store.HBaseStore在NutchPath目录下,在
/usr/Dzy/apache-nutch-2.3.1/runtime/local/
文件下创建urls文件夹在urls文件夹中创建seed.txt,在其中输入
http://nutch.apache.org/
这里存放的是Nutch要爬取的网页
在NutchPath路径下,启动终端,输入以下命令,开始Ant编译
ant runtime
编译完成后目录结构是这样的,多出来一个runtime
- 最后一步就是,将Nutch数据保存到Hbase的jar包存到local内
HadoopPath下/lib
中所有与hbase有关的jar包
复制到NutchPath目录下的/runtime/local/lib
中
至此Nutch的准备工作就算完成了
2.Nutch启动
如果一步不差的完成了本熊指南前三期的准备工作,那就接下来就是按顺序启动服务了
* 启动Solr
在TomcatPath目录下执行以下命令,启动Solr
bash startup.sh
* 启动Hadoop
在HadoopPath下,在终端输入以下命令,启动Hadoop
bash ./sbin/start-all.sh
* 启动Hbase
在HbasePath目录下,启动终端输入
bash ./bin/start-hbase.sh
启动Nutch
在NutchPath下,输入以下指令cd /usr/Dzy/apache-nutch-2.3.1/runtime/local./bin/crawl /usr/Dzy/apache-nutch-2.3.1/runtime/local/urls NutchTable http://localhost:8080/solr/collection1 2
这段指令的参数的意义:
urls位置—
/usr/Dzy/apache-nutch- 2.3.1/runtime/local/urls
Hbase中创建的表名—
NutchTable
SolrCore的位置—
http://localhost:8080/solr/collection1
迭代次数—
2
以上参数可以按照自己的需要调整,可以参考Apache Nutch的说明文档如果一切OK的话,会出现以下状态,如果injectjob时间极长时可以检查一下Hbase版本配置
最后参照之前的关于solr步骤与Hbase的步骤,可以在solr中看见查询的结果
local实验完成,这个实验只是简单的单机配置,若想要更加深入的了解Nutch的工作原理,可以在ant编译部分输入以下指令
ant eclipse
这样可以在eclipse中加载Nutch项目,可以在这基础上做更贴近开发者自身想法的改进
第四期结束
到此为止,本熊把全部的实验过程都记录了下来,后在小Y的电脑上也试验成功了。累得本熊玩了好几天,但是本熊也很好奇,如何转化这些抓取的资源呢?也许这是向小Y这样的学术派才会考虑的问题,本熊只是俗熊,常常苦恼在三餐选什么,总之愿本文能对各位起到小小的帮助
相关内容
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(一)
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(二)
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(三)
[Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(四)
- [Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(四)
- Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(一)
- [Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(一)
- [Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(二)
- [Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(三)
- nutch/solr/lucene//hadoop/hbase 搜索引擎
- apache-hadoop-1.2.1、hbase、hive、mahout、nutch、solr安装教程
- apache-hadoop-1.2.1、hbase、hive、mahout、nutch、solr安装教程
- apache-hadoop-1.2.1、hbase、hive、mahout、nutch、solr安装教程
- apache-hadoop-1.2.1、hbase、hive、mahout、nutch、solr安装教程
- apache-hadoop-1.2.1、hbase、hive、mahout、nutch、solr安装教程
- [Nutch]Nutch2.3+Hadoop+HBase+Solr在Ubuntu环境搭建
- 使用 Hadoop,Nutch ,Hbase,Solr 搭建搜索引擎之Nutch2.2.1
- nutch + hadoop + zookeeper + hbase, linux脚本
- 使用 Hadoop,Nutch ,Hbase,Solr 搭建搜索引擎之Hbase-0.94.27.搭建
- hadoop-2.2.0+zookeeper-3.4.5+hbase-0.96.1单机安装指南
- Hadoop-1.2.1安装HBase(单机模式)
- hadoop+nutch+solr搜索引擎配
- 解密汽车全景行车安全系统的前世和今生——第二讲:原理讲解
- cs231n 卷积神经网络与计算机视觉 5 神经网络基本结构 激活函数总结
- uva729 The Hamming Distance Problem
- Nginx+Tomcat实现单IP、多域名、多站点的访问
- LeetCode 042 Trapping Rain Water
- [Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(四)
- 欢迎使用CSDN-markdown编辑器
- ubuntu修复只能访客模式登陆
- iOS应用支持IPV6,就那点事儿
- Android drawable微技巧,你所不知道的drawable的那些细节
- QML 的 font 与 Canvas 的中 font
- 文章标题
- 基于Apache的Tomcat负载均衡和集群
- 顺序队列(Sequential Queue)