`
kevinwu
  • 浏览: 59294 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Yahoo Doug Cutting:MapReduce和Hadoop的未来

阅读更多
Hadoop是一个开源的分布式计算平台,它主要由MapReduce的算法执行和一个分布式的文件系统等两部分组成。InfoQ曾经刊登过一篇Jeremy Zawodny写的有关Hadoop速度提升的综述性文章。这次InfoQ的资深Java编辑Scott Delap和Hadoop项目负责人Doug Cutting进行了一次专访。在这次InfoQ的专访中,Cutting论述了Hadoop是如何在Yahoo中被使用的,以及Hadoop发展中遇到的挑战和Hadoop项目未来的发展方向。 Scott Delap(SD):Hadoop已经作为正式产品服务于Yahoo的某些功能了吗?如果还没有,有什么计划让Hadoop从一个实验性的产品向核心基础组件迁移? Doug Cutting(DC):Yahoo定期在搜索业务上使用Hadoop来提高其产品和服务,如排名功能和目标广告等。除此之外,也有一些直接使用Hadoop进行数据生成的案例。Hadoop的长期目标是提供世界级的分布式计算工具,也是对下一代业务(如搜索结果分析等)提供支持的Web扩展(web-scale)服务。 SD:Yahoo负责Hadoop项目的团队的规模有多大?除了Yahoo内部人员,其余还有多少活跃的代码贡献者? DC:Yahoo有一个专项小组直接负责Hadoop的开发工作,而Apache开源项目的活跃贡献者一般都有自己的第一职业。即使如此,仍然有一些非Yahoo工作人员每月、每周甚至每天为Hadoop做出自己的贡献。 SD:相比Google,Yahoo坚持在可扩展的基础架构上采用不同途径。虽然Google已经发布了众多技术方面的论文,但其对普通大众意义并不十分明显。而为什么你觉得开源是正确的一个方向? DC:开源项目得到最好的运行需要满足两个条件:第一,每个人对项目所能做的事有共同的认识。第二,有一套易理解的文档解决方案。由于基础架构软件在众多领域有广泛应用,所以此类开源软件发展的格外好。而Yahoo就在使用并支撑FreeBsd、Linux、 Apache、PHP和MySQL等此类基础架构软件。让任何人都可以利用Hadoop来帮助Yahoo改善现状并提高目前建立大型分布式系统的水平。源代码仅仅只是难题的一小部分,除此之外,一个组织还需要有个非常强大的工程师团队来解决重大难题并使其付诸实践。有正确的发布和管理基础架构的能力也显得非常的重要。目前几乎没有哪家公司能拥有所有这些必需的资源。所以,软件工程师们都愿意为开源项目工作,他们能在巨大的社区中遇到许多志同道合的朋友,学到一些被共享的技巧并应用于今后的其他项目中。这样优秀的社区环境很容易培养出许多新的杰出工程师。Yahoo和Hadoop社区都受益于这种合作的机制,更加懂得大规模的分布式计算所需要的东西,并且把我们专家的意见和技术都共享出来建立一个人人都能使用和修改的解决方案. SD:回到技术的本身,近年随着Hadoop的不断发展,你觉得影响其速度和稳定性的要素是什么?我发现现在500条记录的排序基准比去年快上了20倍,这是由于某个部分巨大的提升所至还是由多个部分的共同优化所带来的结果? DC:在处理Web扩展服类软件过程中,随着使用此解决方案的其它公司和组织的不断增加,Yahoo发现它们都获得相似的性能。Yahoo决定将其开源,而非以私有软件的形式继续发展。所以Yahoo雇佣了我来带领这个项目。至今,Yahoo已经贡献了绝大部分代码。 至于速度的提升,是过去几年努力成果的一个总和,并且已经经过了反复的试验。在给定规模的服务器集群中,我们能让系统非常平稳地运行,然后试验在两倍于这样规模的服务器集群中运行会发生什么情况。我们的目标是让性能随集群规模增长成线性增加。我们从这个过程中不断学习,并且再次增大集群的规模。每增大一次集群的规模,更多数量和更多种类的错误也将相应增加,因此稳定性将是个重大问题。 每一次这样做,我们都能明白哪些东西是可以达到的,哪些经验可以贡献给开源的网格计算公共知识库的。随着服务器集群规模的增大,各种新的故障不断产生,罕见的错误变为常见的错误,这些情况都是需要我们解决的。而这个过程所学到的又将影响到我们下一次这样反复的试验。 SD:去年起Hadoop就已经可以在Amazon EC2上运行了。这将使开发者可以快速搭建起他们自己的服务器集群。那么管理这样一个集群、HDFS以及MapReduce的处理还有什么额外的工作需要做吗? DC:Yahoo有一个名为HOD(Hadoop on Demand)的项目,它可以让Mapreduce运行在很普通的机器上。这还是一个正处于建设过程中的开源项目。由于运行一个大型的集群是非常复杂和受资源限制的事,所以Amazon EC2对于普通民众来说,是一个非常不错的接触Hadoop的平台。 SD:在Hadoop功能上你如何客观地和Google已发布的产品进行比较?在从程序单元到数据单元的优化解决过程中,有什么新特性吗? DC:近十年来,很多大型公司(包括Yahoo)和一些理论研究机构都在对大规模分布式计算软件进行开发和研究。而最近随着经济计算在消费市场的显现,这种开发和研究的兴趣更加高涨。与Google不同,Yahoo采取了开发完全开源的Hadoop,让任何人都可以免费使用和修改这个软件。Hadoop的目标已经延伸到超越目前现存的任何技术复制品的地步。我们将致力于把Hadoop建立成一个对任何人都有用的系统。我们已经实现了大多数Google已经发布的东西,而且还加上很多其它没有提及到的。Yahoo在这个项目中将扮演领导者的角色,因为它的目标和我们的需求是非常吻合的,并且我们明白共享这个技术给世界的意义。 SD:最新的官方版本是0.13.1。在未来会有什么重大的新特性吗?1.0版将完成什么样的一些工作。 DC:0.14.0版就将有多达218处的变化。其中对系统最大的改变是我们直接改良了数据的完整性。这是一个对用户来说看不见的变化,但是它对于整个系统的未来发展来说是很有效的。由于数据和集群的规模,无论是内存还是磁盘都很频繁地出现问题,这将是个危机。我们还添加了改变文件时间的功能,还有一些MapReduce的C++ API函数,还增加了主机的一些其它特性,以及bug的定位和修复。 Hadoop 0.15.0也正在成型,计划会有88处修改。这个版本会增加对文件系统的认证和授权,让同一服务器集群之间的信息访问变得更加安全。我们还计划修订大量的Mapreduce的API。0.15.0将是一个很有难度的版本,因为它需要用户对他们的应用做出修改,我们希望能一步到位。我们还希望0.15将是1.0以前的最后一个版本。在1.0以后我们就将会非常保守了,不会再突然做出巨大的改变。我们同样也会非常关注向后兼容的问题,对于1.0版本来说,这将显得更加的重要。任何为1.0版编写的代码也将继续可运行在1.X以后的版本。所以我们需要保证我们现有的API能轻松地扩展到以后的版本。我们将试着在0.15版本就将这些落实。(作者 Scott Delap 译者 Terry ) 查看英文原文:Yahoo's Doug Cutting on MapReduce and the Future of Hadoop
分享到:
评论

相关推荐

    hadoop入门

    Hadoop是一个开源的分布式存储和计算框架,最初由Doug Cutting和他的团队基于Google的三篇关于大数据处理的核心论文(GFS、MapReduce、Bigtable)开发而成。它允许用户在分布式系统中存储大量数据并运行大规模的并行...

    Hadoop下载 hadoop-2.9.2.tar.gz

    最初由 Yahoo 的工程师 Doug Cutting 和 Mike Cafarella Hadoop 是一个处理、存储和分析海量的分布式、非结构化数据的开源框架。最初由 Yahoo 的工程师 Doug Cutting 和 Mike Cafarella 在 2005 年合作开发。后来,...

    Hadoop_MapReduce云计算技术手册

    2006年,Doug Cutting将这些概念应用于Hadoop项目中,实现了开源版本的MapReduce和HDFS。 - **发展**:2006年1月,Doug Cutting加入Yahoo公司,专职于Hadoop项目的开发。此后,Hadoop得到了快速发展,并逐步成为一个...

    基于Hadoop的分布式搜索引擎的研究.pdf

    2. **Hadoop介绍**:Hadoop是基于Doug Cutting和Yahoo的研究成果发展起来的,它提供了一个分布式文件系统(Hadoop Distributed File System, HDFS)和MapReduce编程模型,使得开发者无需深入理解分布式系统的复杂...

    【实例介绍】hadoop入门-入门必备技.pdf

    的介入和Doug Cutting的努力,NDFS和MapReduce演变为Hadoop,并在2008年成为Apache顶级项目。 Hadoop的核心组成部分包括: 1. Hadoop Common:包含了Hadoop运行所需的一系列通用工具和库,为其他Hadoop模块提供...

    Hadoop权威指南第三版

    Hadoop最初由Doug Cutting和Mike Cafarella于2006年在雅虎创建,旨在解决大规模数据处理的问题。随着互联网数据的爆炸性增长,Hadoop逐渐成为大数据处理领域的核心技术之一。 - **Hadoop生态系统**: 除了核心的...

    Hadoop The Definitive Guide PDF

    - **Hadoop简介**:Hadoop 项目始于2006年,由雅虎公司的工程师 Doug Cutting 和 Mike Cafarella 开发,其初衷是为了实现Google论文中提出的MapReduce算法和GFS(Google 文件系统)的概念。随着社区的发展,Hadoop ...

    hadoop介绍

    **Hadoop** 是一个能够对大量数据进行分布式处理的软件框架,它最初由Nutch和Lucene之父Doug Cutting于2006年创建。有趣的是,“Hadoop”这个名字来源于Doug Cutting的儿子对他玩具大象的一种叫法,类似于“Google”...

    云端的小飞象——Hadoop1

    2006 年,雅虎公司开始使用 Hadoop,正式成为 Apache 组织中一个专注于 DFS 和 MapReduce 的开源项目。2008 年,雅虎公司宣布搭建了世界上最大的基于 Hadoop 的生产集群系统。 Hadoop 是一个基于分布式计算的平台,...

    Hadoop实战

    2004 年 Google 发表了关于 MapReduce 的论文,启发了 Doug Cutting 等人实现了 MapReduce 计算框架,并将其与 NDFS 结合起来,以支持 Nutch 引擎的主要算法。 - **发展历程**:2006 年 2 月,NDFS 和 MapReduce 从 ...

    Hadoop生态系统基本介绍(60张幻灯片,包含大量图).pptx

    - **2004年**:Doug Cutting和Mike Cafarella实现了HDFS和MapReduce的初步版本。 - **2006年**:Hadoop成为一个独立的Apache项目,同时雅虎开始大规模使用Hadoop进行研发工作。 - **2008年**:Hadoop在1TB排序...

    Hadoop1.0&2.0快速入门

    Hadoop的前身是Nutch,一个基于Web的搜索引擎项目,后来在Google的GFS和MapReduce论文启发下,通过Doug Cutting的努力,Hadoop被设计成为一个可以部署在廉价商用硬件上的可扩展分布式系统。 随着数据规模的不断增长...

    Hadoop发展简史.pdf

    Hadoop 发展简史可以追溯到 2002 年,当时 Doug Cutting 和 Mike Cafarella 开始开发 Nutch 项目,目的是创建一个开源的网络搜索引擎。Hadoop 的名称来自 Doug Cutting 的儿子命名的毛绒象玩具。Hadoop 起源于 ...

Global site tag (gtag.js) - Google Analytics