Julien Nioche谈Apache Nutch 2的特性及产品路线图

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 原文地址: http://www.infoq.com/cn/articles/nioche-apache-nutch2开源的Web搜索框架Apache Nutch的2.1版本已于2012年10月5日发布,该版本的新特性包括:支持一些改进属性,用于更好地配置Solr;更新到各个Gora依赖;可以选择构建弹性搜索中的索引。

原文地址: http://www.infoq.com/cn/articles/nioche-apache-nutch2

开源的Web搜索框架Apache Nutch的2.1版本已于2012年10月5日发布,该版本的新特性包括:支持一些改进属性,用于更好地配置Solr;更新到各个Gora依赖;可以选择构建弹性搜索中的索引。Nutch既可以运行在单台服务器上,也可以用作大规模抓取平台运行在Hadoop集群上。

Nutch框架的2.0版本在经历了两年开发之后,已于今年7月发布,该版本以Apache Gora框架作为其存储抽象而构建。Apache Gora开源框架提供了一种内存数据模型,并支持大数据的持久化。它支持将数据持久化到列存储、键值存储、文档存储和关系数据库中,还可以利用大量Apache Hadoop的MapReduce支持工具来分析数据。在今年早些时候,Gora已成为Apache的顶级项目。

Nutch 2支持大数据存储方案,如分布式键值存储Apache Accumulo、数据序列化系统Apache Avro、列族数据存储Apache Cassandra、分布式大数据存储Apache HBase和Hadoop分布式文件系统(HDFS)。

 InfoQ采访了Apache Nutch项目的副总裁Julien Nioche,他也是DigitalPebble Ltd的主管。他将于2012年11月7日在 Apache Conference Europe上介绍如何使用Nutch框架进行大规模抓取。

InfoQ:Apache Nutch framework的哪些方面使其适合NoSQL数据库和大数据领域?

Julien:Nutch的确是被打上了“大数据”的标签。一方面,Apache Hadoop就是产生自Nutch项目,而Apache Hadoop现在已经是用于大规模数据处理的事实上的标准框架。Nutch是为大规模Web数据抓取而设计的。有些用户使用由数以百计的服务器组成的集群来运行Nutch并保存了数十亿的页面。

至于它与NoSQL的关系,这正是Nutch 2要解决的问题。Nutch 1.x分支依赖于Hadoop数据结构,这非常适合批处理任务;而Nutch 2则依赖于Apache GORA来提供一个在各种NoSQL数据存储之上的统一前端。

InfoQ:Apache Gora框架也是出自Nutch项目。作为NoSQL数据库的一个ORM框架,你能否谈论一下它对应用程序开发人员有何帮助?

Julien:我喜欢把GORA当作“NoSQL数据库的JDBC”,因为它在存储之上提供了一层抽象,允许开发者编写独立于任何特定API的代码。GORA的部分API也提供了一种在不同后端之上的MapReduce API,此外还有一种基于Apache AVRO的序列化机制。当然,它也支持基本的GET-PUT-DELETE等原子操作。

Apache GORA现在是2.1版本了,支持HBase、Cassandra和Accumulo等数据存储,而且它还有一个SQL模块!这意味着用户可以在MySQL数据库之上运行MapReduce,一些Nutch 2用户正是这么做的。实际上,通过Nutch 2我们也发现,人们喜欢不同的存储方式,因此GORA是非常有用的。

InfoQ:最新的版本也支持HTML解析,这是利用Apache Tika框架来处理的。你能详细描述一下这一特性是如何工作的吗?

Julien:Apache Tika是一个用Java实现的开源库,支持从多种格式中(如HTML、PDF和Word等)抽取文本和元数据,也能用于语言和MIME类型识别。 实际上它就是现有的第三方解析器(如PDFBox)的包装器,只是提供了一个统一的API来使用这些解析器。在Nutch 1.x分支和Nutch解析器遗留系统中,Tika已经有所应用了,因此它并不是Nutch 2.0中的新东西。有趣的是,就像Hadoop和GORA一样,Apache Tika是也是一个脱胎于Nutch的项目。

InfoQ:在即将发布的版本和特性方面,Nutch项目未来的路线图是什么样的?

Julien: Nutch的发布并没有遵循一个严格的时间表。基本上是这样,当我们认为大部分工作已经完成时,就会发布新的版本,而工作的完成又要依赖于有多少贡献者参与和用户最快要多久才能采用新项目等因素。Nutch 1.x和2.x必定会共存一段时间,直到2.x完全成熟为止。尽管如此,它们的发布不太可能完全同步。近来,我们平均每年发布两个版本,但随着2.x版吸引力的增加,我们可能会加快新版本发布的频率。

至于特性,最重要的一个就是升级到SOLR 4,再就是它的云功能。我们可能也会看到更多的功能将委托给第三方项目,比如Crawler Commons,这样其他项目就能复用并改进代码了。我们也考虑过将索引后端变为可插拔的:虽然目前只支持SOLR(2.x版支持ElasticSearch),但是我们希望开发者能够使用插件机制编写新的索引后端,这样就无需捆绑Nutch代码了。把网页排名功能交给Apache Giraph等图库,我们可以少编写很多代码,而且更有效率。我希望将大部分精力放在巩固2.x的代码上。

他也谈到了完成这一项目所用的十年:

Julien:Apache Nutch最近已经10岁了,对软件而言,这已经算很老了。为什么它仍然存在呢?我想原因是,它能够把要做的事情做好,并且没有试图重复发明轮子。有趣的是,现在很多源自Nutch的项目,如Hadoop或Tika等,它们的发展也让Nutch获益匪浅。我希望这一切也会出现在GORA身上。Nutch 2的开发非常激动人心,而且我们看到非常多的新用户选择了它。在开发过程中,不断有新的贡献者和提交者加入进来,而这正是一个项目健康的标志。

7月份,Apache Nutch团队宣布发布了Nutch v1.5.1。这是Nutch 框架1.5.x主干版本的一个维护性发布。具体信息见该版本的修改列表。该搜索框架可以从网络上下载。Nutch的文档和教程等资料请参见项目的wiki页面。

关于被采访人

Julien Nioche是DigitalPebble Ltd的创始人,这是一家位于英国布里斯托尔的咨询公司,专注于为文本工程提供开源解决方案。Julien的专长涉及信息检索、文本分析、信息抽取、自然语言处理和机器学习等领域。他还是Apache Nutch项目的副总裁、Apache Tika和Apache Gora的提交者以及其他一些开源项目的贡献者。
 

 

查看英文原文Julien Nioche on Apache Nutch 2 Features and Product Roadmap

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
5月前
|
消息中间件 安全 API
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(1)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
286 1
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(1)
|
5月前
|
消息中间件 安全 Apache
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(4)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
180 1
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(4)
|
11天前
|
消息中间件 canal 分布式计算
类似apache nifi的产品还有哪些?
【10月更文挑战第23天】类似apache nifi的产品还有哪些?
16 3
|
5月前
|
消息中间件 安全 Apache
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(2)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
240 0
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(2)
|
30天前
|
SQL 存储 监控
大数据-161 Apache Kylin 构建Cube 按照日期、区域、产品、渠道 与 Cube 优化
大数据-161 Apache Kylin 构建Cube 按照日期、区域、产品、渠道 与 Cube 优化
42 0
|
3月前
|
消息中间件 人工智能 监控
|
5月前
|
消息中间件 Cloud Native Apache
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(7)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
113 1
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(7)
|
5月前
|
消息中间件 Cloud Native Apache
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(6)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
118 1
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(6)
|
4月前
|
消息中间件 Kubernetes Kafka
AutoMQ 产品动态 | 发布 1.1.0,兼容至 Apache Kafka 3.7,支持 Kaf
AutoMQ 产品动态 | 发布 1.1.0,兼容至 Apache Kafka 3.7,支持 Kaf
69 0
AutoMQ 产品动态 | 发布 1.1.0,兼容至 Apache Kafka 3.7,支持 Kaf
|
5月前
|
消息中间件 Apache 数据安全/隐私保护
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(3)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
119 0
《阿里云产品四月刊》—Apache RocketMQ ACL 2.0 全新升级(3)

推荐镜像

更多