文译自《连线》杂志关于Hadoop开发商MapR发展历程的文章。
M.C. Srivas(MapR创始人)帮助构建了Google搜索引擎,他对Google搜索引擎仍然感到神奇
如果用户在Google搜索框中输入“2005款本田雅阁”,Google搜索会善解人意的知道你正在寻找一款合适的家庭级轿车。并且不仅返回给用户有关“本田雅阁”的链接,还会返回一些类似价格的家庭级轿车给用户参考——如大众帕萨特或丰田凯美瑞。
Google可以智能地理清“公寓”和“房子”这两个词汇在搜索之间的区别。而当用户在搜索框输入”new“时,搜索框还会出现类似Visual Studio中IntelliSence功能一样提示“New York”和“New York Times”。
当然,M.C. Srivas赞扬的并不是Google著名的搜索算法,而是后台支持Google算法的基础设施。如著名的GFS(Google File System)和Google著名的MapReduce。MapReduce是Google最早提出的且用于大规模数据集并行运算的软件架构。
Google搜索在得益于算法的发挥作用的同时,MapReduce在后台发挥了极大的作用。其通过网络采集了相关的网页,并将其放置在可搜索的索引之中。M.C. Srivas表示“我们在Google所做的工作都是令人感到神奇的,高效的使用数据令我本人都感到震惊”。现今这两项技术已普遍应用在服务器中并用来存储和分析海量的数据。
M.C. Srivas在Google搜索基础设施团队工作了2年,在2009年夏天他选择离开了Google,并创建了公司——MapR。MapR也采用了Google基础设施背后优秀的设计思想(Google GFS和MapReduce),并提供大数据处理的业务。和其他公司一样M.C. Srivas将基于开源的Hadoop产品商品化并进行销售。
但和其他竞争对手不同的是,MapR提供了很多不同于Hadoop的特性,公司还宣称MapR是一个比现有Hadoop分布式文件系统还要快三倍的产品。为了完善MapR,M.C. Srivas带领他的团队花了2年时间重构了Hadoop,并消除了作为大数据处理平台的缺陷。M.C. Srivas向美国《连线》杂志表示“三年前我在公众演讲中谈到了Hadoop存在的问题,而三年后的今天这些问题仍然存在于开源的Hadoop版本中。在某些时候,要做的就是说‘这无法解决’,然后抛弃并重构它,这就是我们在这2年所做的工作”。
在互联网时代,越来越多的数据涌入全球的企业之中。而Hadoop现已成为互联网巨头重塑软硬件以处理日常业务的典范。Hadoop利用廉价的服务器集群分析、处理大量非结构化数据。
当今的一些科技巨头如Microsoft、Oracle以及IBM都提供了结合自身的基于Hadoop的产品。在初创企业中MapR只是其中的一个,Cloudera和Hortonworks也同样引人注目。Cloudera的和Hortwornworks现今也致力于提高开源项目,但其代码是专有的。
这些初创企业对Hadoop的完善都有自身独到之处的一面,同时由于各自产品面临市场激烈的竞争,也不可避免的会对其他厂商的产品不足有所批评。而M.C. Srivas对MapR发展制定透明的计划则有力的驳斥了周围所有指责的声音。同时他表示Hadoop虽然以足够强大,但仍需不断精雕细琢。
MapR与Google发展轨迹相似
实际上Google并没有实际使用Hadoop(Google的云计算基础架构模式包括四个相互独立又紧密结合在一起的系统,包括Google建立在集群之上的文件系统Google File System、针对Google应用程序特点提出的MapReduce编程模式、分布式锁机制Chubby以及Google开发的模型简化的大规模分布式数据库BigTable),而Yahoo!和Facebook的大数据处理平台就是从基于Google研究论文中的内容发展而来的。
Cloudera的COO Kirk Dunn向《连线》表示“Google、Facebook和Yahoo!都已经证明了Hadoop平台正处在黄金时期。Google、Facebook和Yahoo!公司内部的成千上万的节点已经运行多年。虽然Yahoo!和Facebook使用基于Hadoop的成千上万台普通服务器来处理前所未有的海量数据,但大多数企业需要处理的数据量并没有Yahoo!或Facebook那么多,较小的集群平台就足以满足大多数企业的业务的需要。”
同时M.C. Srivas再次强调了开源版Hadoop的不足,例如至今仍然困扰开源版Hadoop的“单点故障(即如果主节点异常,任务执行情况会丢失,数据可能会损坏)”。Yahoo!和Facebbok可以聘请了50至70名工程师来处理诸如此类的事件,而其他公司却没有相关的人员。
M.C. Srivas表示在成立MapR之前他曾经会见过Cloudera的创始人并考虑加入其中。但Cloudera希望像Red Hat做Linux那样围绕Hadoop平台提供支持、服务和更多软件盈利。而这与M.C. Srivas的理念并不相符。他认为Hadoop还有非常多漏洞需要弥补。
于是他通过熟人与Calista Systems(虚拟化软件商,2008年初被Microsoft收购)的CEO John Schroeder相识,并于2009年共同创建了MapR公司。现今,MapR的产品已为存储巨头EMC推出的Greenplum HD企业版Hadoop提供技术。
Hadoop的未来
据M.C. Srivas和Schroeder介绍,他们的Hadoop发行版在许多特性上领先其他基于开源Hadoop的发行版。虽然其他人并不这么认为,但这是不争的事实,MapR的产品克服了其他开源版Hadoop的固有缺陷。
Hadoop实现了被称之为HDFS(Hadoop Distributed File System)的分布式文件系统和被称之为MapReduce的大数据运算平台。MapReduce依赖于HDFS实现。通常MapReduce会将目标的计数的数据分为许多小块,HDFS将每个块复制若干份以确保系统的可靠性,同时按照一定的规则将数据块放置在集群中不同的机器上,以便MapReduce在数据宿主机器上进行最快捷的计算。
M.C. Srivas表示在2年的发展期间,MapR基本上重构了文件系统。同时改进了Hadoop的“job tracker”使其能跨机器的任务分配并管理其执行。改进了Namenode,这是一个中心服务器,负责管理文件系统的Namespace以及客户端对文件的访问。而开源版本的Hadoop仍存在单点故障和Namenode处理文件数量受限的状况。
Cloudera的Kirk Dunn也承认M.C. Srivas提到的开源Hadoop存在的缺陷,但他表示在评价开源Hadoop具备的优势时,还有一些其他的因素需要考虑。同时开源版的Hadoop也会最终克服固有的缺陷,最终所有代码因为开放而变得独具优势!众所周知,开源的优势可得到社区的广泛支持。你是愿意依靠成百上千的工程师在重要问题上给予支持?还是依靠只有少数精英工程师的公司?
从本质上讲,Hadoop是主要还是一个“批处理”系统。Hadoop需要一段时间处理数据以便得到结果。Hadoop现今还不具备实时生成信息的能力。随着搜索引擎需求的发展,Google已经放弃了MapReduce,并转移到被称之为“Caffeine”的平台之上,新平台可使搜索引擎的速度更快。John Schroeder暗示MapR也在朝类似的“方向”努力,尽管其“解决方案”可能看起来与“Caffeine”非常不同。
M.C. Srivas指出现今的Hadoop与在谷歌内部运行的版本完全不同。除了GFS和MapReduce以外,Google还在其软件层运行着被称之为“Borg”的作业调度和监控系统,其主要负责管理数据中心内的服务器群集。Google现在还没公布“Borg”的相关信息。和所有Google的前员工一样,M.C. Srivas不能透露其详细信息。但M.C. Srivas表示你不能错误地认为Hadoop就是Google的基础设施。像Google这样的公司,他们肯定有他们自己且尚未公布的秘密武器。
Hadoop要想成功就必须继续发展。而MapR已经具备了一切。
本文采用「CC BY-SA 4.0 CN」协议转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请给「我们」留言处理。