Nutch 2.0 终于来了
-------------------------

带着大部分人的期待,Nutch 2.0终于发布了,它在Nutch 1.x的基础上做了比较大的改变,主要还是在它的存储层的抽象上,Nutch 2.0的计划最终由使用者对于Nutch对No-sql的不支持而建立起来的,最初的版本叫做NutchBase,由Dogacan Guney进行开发,最初始版本由于过于依赖HBase这个开源的NoSql数据库,后来决定把这个存储层抽象出来,做成一个MapReduce友好的ORM,它现在就成了Apache的Top level Project,这个项目叫Apache Gora,它提供了对于nosql访问的统一的接口,目前支持的数据库有Cassandra,hbase,accumulo等,它为mapReduce提供了一个从object到datastore的映射关系,这就意思着Nutch 2.0可以跑在HBase,Cassandra,Accumulo或者是MySql数据之前,我们要做的只是一个简单的配置。

Nutch 2.0的一个最大的变化在于通过使用NoSql,把原来的CrawlDb,content,segments与linkDB都整合到了一起,而不用像原来使用HDFS一样,要分开存储,这里使用了一个表的抽象来表示所有于URL有关的数据信息,这里也不必把分一层的segments都分开存储,这样带来一个附作用就是抓取与解析是可以恢复的。

从技术角度来看,这意味着Nutch现在不仅仅hadoop对于数据流的线性处理,而现在可能对单个元素进行读取与更新操作,不变的是现在大流程还是用MR任务来做,只是一些数据的过滤操作可以让后台数据库来完成。这样做的好处是避免了原来当只有几个URL被发现,而为了把这些发现的url更新到crawlDB中去,去用MR任务读取之前所有urls,再与新的urls进行合并,现在只要简单的对数据进行查找与更新就可以了。

不过现在的nutch 2.0还是一个测试版本,有一些1.x中的功能还没有还得急完成,所以现在Nutch 1.x版本还是trunk中的主要版本。

我相信通过对于数据存储层的抽象,以后的Nutch 2.x可以更好的应对海量数据的存储与处理。

PS:

下来有时候会对Gora与Avro做一个简单的介绍,毕竟 nutch2.0是Gora使用的第一个项目,而Gora使用了Avro来对object的系列化架构。

1. http://nutch.apache.org/

Nutch 2.0 终于来了相关推荐

  1. (转载)Nutch 2.0 之 抓取流程简单分析

    Nutch 2.0 抓取流程介绍 --------------------- 1. 整体流程 InjectorJob => GeneratorJob => FetcherJob => ...

  2. C#9.0 终于来了,带你一起解读 nint 和 Pattern matching 两大新特性玩法

    一:背景 1. 讲故事 上一篇C#9.0 终于来了,您还学的动吗? 带上VS一起解读吧!跟大家聊到了Target-typed new 和 Lambda discard parameters,看博客园和 ...

  3. C#9.0 终于来了,您还学的动吗? 带上VS一起解读吧!

    一:背景 1. 讲故事 好消息,.NET 5.0 终于在2020年6月10日发布了第五个预览版,眼尖的同学一定看到了在这个版本中终于支持了 C# 9.0,此处有掌声,太好了!!! .Net5官方链接 ...

  4. 鸿蒙系统2.0 评测,鸿蒙2.0终于上机实测 多大内存能跑?

    9月10日的开发者大会上,华为不但带来了EMUI 11,还发布了备受期待的鸿蒙OS 2.0,信息量相当庞大,官方也贴心制作了信息图解. 鸿蒙OS 2.0的口号是"连接无限可能",致 ...

  5. android最新版本 note8,惊喜!三星Note8国行版安卓8.0终于来了:4月23日开推

    原标题:惊喜!三星Note8国行版安卓8.0终于来了:4月23日开推 3月18日,法国三星推送了全球首款Galaxy Note8安卓8.0稳定版系统更新,随后其他国家和地区陆续跟进,但国行版本却一直没 ...

  6. hadoop 2.2.0 终于编译ok了

    下载的tar.gz包中某个组件是32位下编译的,要在64位下安装必须要自己从源代码编译. 解决了n个缺少库的问题,熬过了龟速网络. 终于OK了! [INFO] Reactor Summary: [IN ...

  7. .NET Core 2.0终于发布了

    .NET Core 2.0的最终版本终于发布了.这是.NET 开源跨平台的一个重大里程碑, 也是很多支持者.社区.公司共同努力的结果.开发者们可以采用命令行.自己喜欢的文本编辑器.Visual Stu ...

  8. C# 9.0 终于来了, Top-level programs 和 Partial Methods 两大新特性探究

    一:背景 1. 讲故事 .NET 5 终于在 6月25日 发布了第六个预览版,随之而来的是更多的新特性加入到了 C# 9 Preview 中,这个系列也可以继续往下写了,废话不多说,今天来看一下 To ...

  9. vue 生成发布包_Vue 3.0 终于正正正正正式发布了!

    Vue 团队于 2020 年 9 月 18 日晚 11 点半发布了 Vue 3.0 版本,我们连夜对 Release 进行了翻译.由于时间仓促,文中如有翻译不当的地方还望提出.如有侵权,请联系删帖.以 ...

最新文章

  1. jdk8中java.util.concurrent包分析
  2. adb 的原理以及它总重启等问题详解
  3. System.Net.Mail的属性与方法集锦
  4. linux命令sort的用法,linux之sort命令的用法
  5. 接口测试和性能测试的区别
  6. ZendFrameWork——文件夹标准
  7. “我来管管看”系列:如何消除报工数据与入库数据的差异?
  8. 微信电脑版重大更新,可以上班刷朋友圈摸鱼了
  9. 数据推荐 | 自然场景OCR文字识别数据集一览
  10. qdir 类似工具_Qdir中文版|多窗口资源管理器下载_最火软件站
  11. snagit 10.0.1.58和Patch_SnagIt.exe汉化补丁安装流程图
  12. 可靠性 可用性 可维护性
  13. VMware网络问题排查思路
  14. 数据分析师,你是车夫,还是拉车的驴子
  15. 手撸spring源码分析IOC实现原理
  16. 上溯造型、下溯造型的理解
  17. 猫和老鼠服务器维护多久结束,《猫和老鼠》母猫玩家遇到4个杰瑞,5分钟后,她想挂机了!...
  18. 机器人10大流行编程语言
  19. Amesim车辆仿真--制动匹配理论
  20. java导出的文件名带正斜杠_如何在名称中创建带正斜杠的注册表项

热门文章

  1. 远离那些聪明,却不厚道的人
  2. 2.Java基础数据类型
  3. 图片组件(Image)
  4. 监控系统的基本架构(Metric monitoring)
  5. LeetCode(1292):元素和小于等于阈值的正方形的最大边长 Maximum Side Length of a Square(Java)
  6. 搭建WordPress个人博客全过程(超详细)
  7. 一个LM324的电流源方案
  8. 人心比万物都诡诈,谁能识透呢?
  9. 使用WASAPI捕获声卡音频
  10. Jupyter notebook打开E盘文件夹