小而全的开源引擎:Nutch
Nutch 是一个开源Java 实现的基于Lucene的搜索引擎,Lucene为Nutch提供了文本索引和搜索的API。Nutch 提供了我们运行自己的搜索引擎所需的全部工具。作为一个研究平台,Nutch有其开放灵活的架构,用户可以基于Nutch来定制自己的搜索引擎。
Nutch有其高质量和模块化的架构特点,允许使用插件来进行media-type解析、Html分析、数据检索、查询和集群化处理。主要的模块包括,包括全文搜索Searcher, 引擎Indexer和Web爬虫Crawler。
Crawler主要用于从网络上抓取网页并为这些网页建立索引
Searcher主要利用这些索引检索用户的查找关键词来产生查找结果
Indexer。为已有的网站网页信息和相关链接建立基于关键词搜索的索引
Nutch诞生于2002年8月,是Apache旗下的一个用Java实现的开源搜索引擎项目,自Nutch1.2版本之后,Nutch已经从搜索引擎演化为网络爬虫,接着Nutch进一步演化为两大分支版本:1.X和2.X,这两大分支最大的区别在于2.X对底层的数据存储进行了抽象以支持各种底层存储技术。
在Nutch的进化过程中,产生了Hadoop、Tika、Gora和Crawler Commons四个Java开源项目。如今这四个项目都发展迅速,极其火爆,尤其是Hadoop,其已成为大规模数据处理的事实上的标准。Tika使用多种现有的开源内容解析项目来实现从多种格式的文件中提取元数据和结构化文本,Gora支持把大数据持久化到多种存储实现,Crawler Commons是一个通用的网络爬虫组件。
Nutch在线帮助文档:http://tool.oschina.net/apidocs/apidoc?api=nutch2.0 ,非常详实,研究时供实时查阅。
轻松一刻
- 所有评论