`

Google在新的内容索引系统中放弃MapReduce

 
阅读更多

 原文 http://www.hadoopor.com/thread-1880-1-1.html

 

Google在新的内容索引系统中放弃MapReduce

有消息表明,Google在新型网络内容索引系统——Caffeine中,将放弃以MapReduce为基础架构的分布式计算平台。
据Google高级主管Eisar Lipkovitz表示,在Caffeine中,Google的后端索引系统将从MapReduce上移除,并向Google新建的分布式数据库平台——BigTable上进行迁移。他表示,谷歌将于下月在USENIX研讨会上提交一项新的文件讨论系统。
据了解,从去年开始,Google就已经启动了代号为“Colossus”的研发计划,主要内容围绕新的分布式文件系统——Caffeine进行研发。Caffeine将创建一个新的数据库的编程模型,而这也意味着Google必须在BigTable上重建整个索引系统。
MapReduce完成历史使命
必须看到的是,在Google的直接竞争对手——Yahoo、Facebook们对MapReduce饱含热情进行研发投入的同时,Google却宣布放弃MapReduce,不得不佩服Google的勇气。
实际上,早在Caffeine建立之前,Google就建立了基于MapReduce的搜索索引系统。从本质上而言,这个索引是由序列的批处理操作组成的。它通过把对数据集的大规模操作分发给网络上的每个节点进行运算,而每个节点会周期性的把完成的工作和状态的更新报告回主计算。
Lipkovitz首先谈到了Google基于MapReduce文件索引系统处理方式。“我们必须面对一个非常庞大的数据系统,在这之前,我们需要等待8个小时的计算时间我们才能够得到计算的全结果,然后我们就会把它发布到索引系统中去。过去我们一直在不停地重复这个耗时耗力的工作。”
Lipkovitz进一步解释了Google放弃MapReduce的原因,“MapReduce仅仅是一个批处理操作方式,”Lipkovitz解释说,“一般来说你不能启动下一阶段的命令操作,直到你完成第一项操作。”
可以看到,Google之所以放弃MapReduce,是因为它并不能为谷歌提供它所想要的索引速度,特别是随着实时检索时代的到来,谷歌需要的是在几秒内刷新索引内容,而非8小时。
实际上,在过去的几年里,针对MapReduce的技术讨论可谓是褒贬不一。
麻省理工学院的数据库专家Mike Stonebraker认为,MapReduce的计算方法对于实时计算来说是很不合适的,是过时的。
“MapReduce就像是游击队员而非正规军”,Lipkovitz表示,“如果你想基于Mapreduces建立分布式文件处理系统,如果你想实现更多的操作命令,那么必然会有错误发生。况且你并不能缩短处理的时间,这是Google选择放弃Mapreduces的原因。”
Caffeine的处理原理


早前在谷歌的一篇博文中,谷歌提到了Caffeine的处理原理,“与我们的老索引技术相比,Caffeine能够提供的新网络搜索结果提高50%,最大程度收集我们提供的网络内容。无论是新闻、还是博客或论坛,一经发布,用户都能发现相关内容的链接,索引速度较以前有大幅提高。
据了解,Google从2009年8月就开始测试Caffeine。当时,Google曾表示新索引技术将是自2006年以来的重大变革。速度和综合性是新技术关注的目标。
Google曾表示,新系统需与网络内容的爆炸性增长保持同步,过去两年中,博客、视频和社交媒体技术都蜂拥至网络。借助Caffeine,Google将加快索引次数的更新,对一小部分网络进行消化,而不是对整个网络重新索引并更新索引内容。
Google软件工程师卡莉·格兰姆斯(Carrie Grimes)在博客中称:“我们将把Caffeine列为未来考虑重点,不仅使之索引更多新结果,还要将之打造为适应网络消息增长的速度更快、理解力更高的搜索引擎,为用户提供相关度更高的搜索结果。”
关于“Colossus”计划
“我们需要一个新的计算框架”,Lipkovitz说,这使工程师能够在BigTable上编写代码,而该系统是基于“Colossus”建立的分布式存储平台——也被称为GFS2。
“原有的基于MapReduce的文件系统,不能达到Google所需要的计算规模。”
据了解,“Colossus”是专门设计BigTable的开发计划,基于这个原因,它并不针对传统的分布式存储平台应用。换句话说,它是专为建立新的Caffeine搜索索引系统而用的,虽然它可能会在Google的其它内容所服务,但其并未跨越整个谷歌的基础设施系统。
在Google的实时搜索引擎Instant的发布上,谷歌著名的工程师Ben Gomes表示,Caffeine并未在Instant架构中,但它的确有助于帮助把数据处理实现“分布”式搜索服务。
Lipkovitz同时指出,MapReduce并非意味着消亡,在Caffeine中,仍然有基于MapReduce的批处理应用,以及全球尚有其它的基础设施。
而在Caffeine的诞生之前,索引系统是谷歌最大的MapReduce的应用程序
原文链接:http://www.theregister.co.uk/201 ... caffeine_explained/
分享到:
评论

相关推荐

    一种基于MapReduce的分布式索引方法.pdf

    在Map函数中,通过文档解析器解析存储在HDFS文件系统的文档,然后创建索引并输出。而Reduce函数则对同一组内的文档索引进行归并处理,控制索引片的大小,并在达到阀值时输出独立的索引片,以此来保证索引的高效处理...

    MapReduce操作实例-倒排索引.pdf

    在这个实例中,我们将详细探讨如何使用MapReduce实现倒排索引。 首先,我们来看`Mapper`类。`InvertedIndexMapper`是Map阶段的核心,它负责将输入数据拆分成键值对(K1, V1)并转换为新的键值对(K2, V2)。在这个...

    Hadoop mapreduce 实现InvertedIndexer倒排索引

    Hadoop mapreduce 实现InvertedIndexer倒排索引,能用。

    基于javaweb + mapreduce的小型电影推荐系统

    MapReduce是Apache Hadoop的一部分,用于分布式处理大规模数据,尤其适合处理推荐系统中常见的协同过滤或基于内容的推荐算法。Java Web是开发Web应用程序的标准技术,用于构建服务器端功能和用户界面。推荐系统则是...

    基于mapreduce的小型电影推荐系统

    在这个推荐系统中,MySQL用于存储用户信息,如用户ID、喜好等;电影信息,如电影ID、名称、类型等;以及用户观影历史等关键数据。 4. **JavaWeb**:JavaWeb是指用Java语言开发的Web应用。JSP是其中的一部分,它允许...

    Google+MapReduce中文版

    此外,文档还讨论了如何使用MapReduce模型对大规模并行处理进行了优化,并提到了其在Google内部的应用情况,比如索引系统的重写和其他一些基于MapReduce的项目实践。最后,文档对未来工作进行了讨论,包括MapReduce...

    文档倒排索引的MapReduce程序设计与实现

    根据提供的文件信息,本文将详细探讨“文档倒排索引的MapReduce程序设计与实现”这一主题,重点介绍倒排索引的基本概念、其在搜索引擎中的应用以及如何利用MapReduce框架来实现高效的文档倒排索引构建。 ### 倒排...

    谷歌Bigtable File-System MapReduce论文

    谷歌的三篇经典论文——Bigtable、File-System和MapReduce,对现代大数据处理和分布式系统的发展产生了深远影响。这三篇文章分别详细介绍了谷歌在数据存储、文件系统和大规模并行计算上的创新解决方案。 首先,让...

    Google MapReduce(一)

    MapReduce 是一种解决问题的思路,而不是一个产品,它有多个工程实现,Google 在论文中也给出了它自己的工程架构实现。MapReduce 编程模型解决的问题是能够用分治法解决的问题,如网页抓取、日志处理、索引倒排、...

    Google文件系统和MapReduce的原始论文

    在论文《MapReduce: Simplified Data Processing on Large Clusters》中,Google详细描述了MapReduce的实现细节,包括作业调度、数据分区、容错机制以及优化策略等。 结合GFS和MapReduce,Google能够高效地处理海量...

    分布式文件系统实例-mapreduce-排序

    MapReduce排序在很多实际应用中非常常见,如日志分析、搜索引擎的索引构建、社交媒体数据分析等。通过对海量数据进行排序,我们可以找出最常见的词汇、用户行为模式或者发现其他有价值的洞察。 ### 总结 这个面向...

    Google MapReduce 中文版

    Hadoop MapReduce在Apache Hadoop生态系统中扮演着核心角色,使得非Google公司也能利用这种强大的计算模型处理海量数据。 中文版的Google MapReduce文档对于中国开发者来说是一个宝贵的资源,它可以帮助他们深入...

    Google MapReduce(二)

    **Google MapReduce** 是一种分布式计算框架,由Google在2004年提出,用于解决大规模数据处理的问题。它的设计灵感来源于函数式编程中的映射(Map)和化简(Reduce)操作,使得程序员可以方便地编写处理海量数据的...

    Google MapReduce中文版.pdf

    MapReduce模型在Google内部被广泛采用,不仅用于各种数据处理任务,还作为基础重写了索引系统产品,积累了丰富的使用经验。MapReduce模型的实现具有自动并行化和容错的功能,使得即使是复杂的计算任务也能在大量普通...

    Google-MapReduce中文版.doc

    Google 内部已经使用 MapReduce 重写了其索引系统,证明了这一模型在处理大数据问题上的实用性。 总结来说,MapReduce 是一种强大的工具,它通过将复杂的数据处理任务分解为可并行化的 Map 和 Reduce 阶段,使...

Global site tag (gtag.js) - Google Analytics