对话Hadoop之父Doug Cutting:大数据和开源的未来

前言

对中国大数据产业来说,2016年是从垂直领域野蛮生长到爆发全国范围关注热潮的一个转折点。不论是人山人海巨头云集的贵阳数博会,还是首次在华举办的全球顶级大数据会议Strata + Hadoop World,都揭示了中国大数据产业发展的澎湃动力。

在Hadoop生态领域,Cloudera是规模最大、知名度最高的企业,也是当前大数据领域最强有力的解决方案服务商之一。带着对中国大数据市场的满满诚意,Cloudera创始人、董事长兼首席战略官Mike Olson以及Hadoop之父、Cloudera首席架构师Doug Cutting日前到访清华,讲述了Hadoop的发展历程,并与清华大学软件学院副院长、党委书记王建民及现场的同学们展开了深刻而有趣的对话。

相关新产品的涌现对于大数据技术的未来会有什么样的影响?大数据服务的云平台未来应该如何选择?怎样去发现中国真正的大数据市场?中国的开源发展目前是什么情况?大数据文摘今日推送对话三位大师关于以上问题的对话实录。

对话人物简介

Doug Cutting:毕业于美国斯坦福大学,Lucene、Nutch等开源项目的发起人,打造了目前在云计算和大数据领域里如日中天的Hadoop,让大数据推动业务的数字化转型有了开源的技术平台。他擅于把高深莫测的搜索技术形成产品并贡献于市场及大众,现任Cloudera首席架构师,同时也在Apache软件基金会董事会任职。

Mike Olson:毕业于加利福利亚大学,曾作为Sleepycat软件公司CEO主导开发了全球应用广泛的开源数据库Berkeley DB,后被甲骨文收购,任甲骨文嵌入式技术副总裁。2008年与其他三位合伙人创立Cloudera,将其打造成国际领先的大数据数据管理和分析平台的服务商,2014年12月Cloudera进入中国。

王建民:清华大学软件学院副院长、清华大学软件学院大数据中心主任,国家科技部中青年科技领军人才,国家基金委杰出青年基金获得者,国家“核高基”科技重大专项总体组成员,国家863计划先进制造领域专家、国家卫计委信息化专家委专家、我国第一个大数据专项“核高基”-“非结构化数据管理系统”负责人;工信部“中国制造2025”:“操作系统与工业软件”工作组组长。

一、 关于HADOOP与Spark、GPU,及商业化未来

1、面对Spark这类新兴技术的发展,以及MapReduce市场萎缩的情况,你们如何看待这种市场变化?

迈克:Hadoop由很多部分构成,第一层是HDFS,完全做分布式存储,此外MapReduce用来做分布式处理;有分布式地面向列的开源数据库技术HBase;Impala可以在支持Hadoop的HDFS系统上,直接做SQL的查询;也有Cloudera做的Kudu这样的新型存储技术。

Spark只是其中的新技术之一,并不是好像全世界都只用Spark。当然,我们如果要去比较Spark和MapReduce,从现在的情况来看,Spark的确会胜出,但基于Hadoop还会不断涌现出更多新技术。

道克:没错,Spark的确非常好。在实时批处理上表现优异,但它不是全能的,比如它不具备SQL访问查询、Solr和Lucence搜索倒排索引、HDFS、Kudu的数据存储能力等。Spark仅仅是Spark,它不代表Hadoop所有的技术,Hadoop将会孕育更多新技术出来。

2、计算机和大数据技术都在日新月异的变化,特别在硬件方面,我们看到很多下一代硬件不断的涌现,这些新产品的涌现对于大数据技术的未来会有什么样的影响?

迈克:像网络、CPU在未来会出现非常多的变化,正确的方法是软件去适配硬件,而不是无视硬件的变化。硬件的升级并不会妨碍未来大数据技术的发展,反而大数据系统会更好的去利用这些新硬件去改变世界,两者不存在替代关系。

过去十年,我们已经看到了很多这类变化。Cloudera有着非常深厚的英特尔背景,我们的很多员工来自于英特尔,英特尔也是我们的投资人之一。我相信我们和英特尔的密切关系,未来会更多的帮助下一代软硬件技术的融合与适配。

道克:很多人在问我,怎么把GPU和Hadoop结合,这其实是一个错误的命题。Hadoop实际上是基于IO Intensive的系统,它整个系统的瓶颈是在系统的IO上,包括磁盘IO、网络IO,所以它需要解决的根本并不是CPU的问题。未来当IO不再困扰我们的时候,也许那时再来谈怎么用CPU加速的技术解决更多问题更有意义。

像谷歌Tenzing的机器学习系统就可以很好的利用GPU,而不是现在吧的大数据系统来加速。但我相信在这个领域将来会有更多的机会,我们将看到很多数据结构、系统结构,会适应新硬件的变化趋势而发生转变。

3、Hadoop3.0的关键特性

迈克:Hadoop3.0的确会有一些侧重,排在首位的就是多租户技术,将来我们会在Hadoop 3.0的平台上看到更多不同的像MapReduce、Spark这样的技术,可以同时在一个平台上被不同的用户运行,就像Yarn正在做的一样。所以Hadoop 3.0的特点就是支持更多的系统可以更好的运行,更好的去实现多租户这个概念。

另外,Hadoop3.0更多的是适配新硬件技术的改变,比如英特尔新推出的优化存储、CPU的新技术,特别是SSD技术。硬件价格的走低,让我们更有可能去利用这些技术。Cloudera新启动的一个Apache开源项目叫Apache Kudu,这是一个新型的存储系统,Kudu就正在利用这样一些这样的新硬件技术。

道克:现在还有另一个我们在做的项目,内容是基于HDFS和新型硬件结合做系统复制。这种复制技术,不只能加快系统的速度,还会提升系统的容量。这个项目的开发者就在英特尔中国公司,中国已经出现了很多很好的创新技术。

4、CDH商业产品的未来怎么样?

迈克:Cloudera一直在保持这个系统的开源,虽然上面有很多收费的工具,但是这样做的目的并不是阻止用户。因为现在有很多商业软件巨头会利用我们的开源系统,把它作为商业软件,去获得更多的市场机会,去赢取更多的利润。所以我们一方面会保持底层数据存储、处理引擎系统的开源,让用户可以把这个技术用得更好、让系统变得更易用;同时,坚持收费的举措也让我们能够有能力在大数据系统市场上和大型商业软件公司竞争。

开源将有利于更多人参与系统的开发,让更多的大学可以参与学习,让更多的用户可以接受新知识。所以大家看到了Impala和Spark。我很高兴看到作为一家公司Cloudera在大数据市场上越来越多的成长机会。

道克:开源平台上,Apache仅仅是把所有技术囊括在一起,但Apache上面可能有二十多种不同的打包方式,怎么去安装?怎么去配置?怎么去打包?这些其实对很多用户来讲都非常具有挑战性。所以我们推出CDH Commercial版,已经帮大家把对应的系统打包好了,通过CDH我们会帮助大家更好的管理数据,管理大数据系统。

如果用户愿意去使用免费开源系统这没有任何问题,但是如果用户需要我们的帮助,可以去订购Cloudera的商业版。这就是硅谷现在的开源文化,有越来越多的公司在做开源。开源的东西是免费的,但我们在不断提供增值服务。我们也需要有更多的客户认可这样的服务价值并愿意帮助Cloudera这样的公司在市场上存活下去,跟我们建立更长期的合作关系,支持我们的业务。

二、 关于大数据系统的应用,选择与困扰

5、如果我们现在有一个项目刚开始,面对这么多大数据系统,应该怎么选择一个合适的平台?

道克:这的确很难,我们可能需要去熟悉所有的系统和工具,需要更多的实验,去测试这些系统。在满足工作负载的前提下,比较在哪个系统工具上工作得更好。但幸运的是,这类测试的确越来越容易了,现在有越来越多的工具可以进行辅助。

但是真正在设计的过程中需要去考虑很多技术细节,比如系统处理速度和系统吞吐的平衡。这个过程更像是一门艺术,而不像一个技术。

迈克:你选Cloudera就行了,不用去想更多的(哈哈)。

6、我们现在碰到的很大问题是面对系统的版本升级,用户需要不断去升级他们建好的系统,Cloudera怎么看待这样的挑战?

迈克:当然,商业版的更新很简单,一键安装新的系统就好了。如果是开源的系统就会很难,因为开源你需要去选择一个适合的文件包,需要自己去重新搭建,需要自己去测试,而这些在Cloudera商业版里都已经帮你做好了。

道克:如果不兼容,就只能来找Cloudera,这样我们的商业服务就能有发展空间了(哈哈)。

王建民:看来这样的机会、这样的服务对于Cloudera而言是一个很有价值的业务。

迈克:我们是一家创新公司,所以首先我们是一群创新者,我们的首要工作是设立未来大数据系统发展的方向。第二件事,我们的确做商业软件,我们会把这些开源系统打包、测试,会在上面做很多工具,我们也会利用它来提供服务。

7、大数据服务的云平台未来应该如何选择?

迈克:在商业层面上各种主流的云平台Cloudera都支持,我们在北美和AWS、谷歌等都有合作,在中国将和腾讯、百度等有更多的合作,可以看到云服务市场增长非常快。

道克:如何选择云服务有很多因素要考虑。第一个是经济角度上,到底哪种方式更具性价比,并不是所有的公有云都比私有云更便宜。第二个是安全,虽然我们可以用多种加密的方式解决这个问题,让别人更安心,但是安全永远是影响抉择的重要因素。还有另一个问题,我们需要考虑得非常清楚,通常我们迁移大数据系统是非常昂贵的,所以我们在选择一个云的运营商之前,首先要意识到,这个运营商给我们提供的技术是不是我们需要的。一旦需要在这个平台上进行转换,是不是很容易操作。我能见到的最大错误就是选择了某个云平台之后被吃定,无法迁移转换。

迈克:我们选择开源有一个非常大的好处,因为底层的技术其实都是一样的,是完全兼容的。如果我们选择了不合适的云运营商,或者不合适的大数据商业软件合作伙伴,我们可以比较容易完成系统迁移。

道克:还有一个融合的问题。比如企业内部有架构存储一部分数据,同时在公有云上也存储一部分数据,如果我们选择混合云的方式,可能会让我们在处理数据时非常困难,因为这两个架构之间任一方向的数据迁移,都非常昂贵。是否需要把数据放在不同的地方,这也是我们在选择云计算架构时必须要非常认真考虑的一个问题。

8、如何去发掘Hadoop系统的应用性领域,尤其在中国?怎样去发现中国真正的大数据市场?

迈克:大数据分析、机器学习等技术发展,都在真实发生着,这些事情触发了我们会有更多的数据,需要更多的处理能力,需要有更多的分析应用,这样正是我们希望看到的市场需求。

2006年我代表Oracle来中国,当时正好是中国“十一五”开端的第一年,中国政府第一次在“十一五”的五年规划中开始强调创新,今年是2016年,是“十三五”的开局之年,中国政府不但强调创新,还强调了创业,我认为中国现在有一个非常好的开端。

对于Cloudera而言,在中国市场需要寻找更多的合作伙伴。我们看到像GM跟上汽合作为全球市场设计新车,中国已经出现越来越多的垂直细分领域,比如像电信、保险,有越来越多的中国公司在使用大数据,成为很好的行业范例。中国大数据的应用前景非常好,已经取得了令人刮目相看的成就。中国市场的体量非常大,增量也会很大,不只是大数据市场,中国在其它细分领域一定会出现更多更好的创新,会孵化出更多大数据的技术与应用。

三、 关于开源及未来

9、事实上,人们对开源还有困惑,很多中国团队的想要致力于开源,你们有什么建议给那些想要参与进来的人?

道克:第一件事是找到一个恰当的领域,现在的开源项目不是那么容易做好,首先要确保你的产品是有用的。

提问:这个领域是什么?

道克:这个很难去做预测,每个细分行业都有不同的现实情况,但相信大家是可以找发掘的。第二点,明确领域后,我们要建立对应的大数据系统;第三点,系统做出来之后我们需要有更多的参与者,需要让大家意识到这个系统的价值,并愿意投入去改进你现在做的系统,愿意加入这个的社区团队。这就是我们讲到的开源文化。

这三步做到之后,你的项目规模自然而然就会增长,就会吸引更多的人参与,而且在这个过程中,所有参与项目的人需要非常开放,乐于帮助,更多这样的人加入才会促使这件事成功。反之,如果我们做的是非常狭隘的一个领域,并希望它控制在一个什么样的范围内,通常这样的项目就难以成功。

迈克:在成为Cloudera的Leader之前,我曾是一个开发人员,做伯克利的数据库。在我的经验中,社区是最重要的。并不是说一个开源社区做出来就是为了免费,关键是有更多人参与。现在中国的团队不只是参与到既有的项目中,有的已经开始去创造自己的新项目。

比如说来ebay中国的一群人创造了麒麟这个项目,这个项目现在已经变成了Apache的一个典型项目。所以我非常乐于见到更多来自中国的技术可以贡献在全球。

王建民:现在中国有非常好的开源文化,很多年轻一代都非常热情,愿意去做这件事情,但苦于我们没有找到正确的门路和方法。清华正在做这方面的努力,清华数科院和Cloudera的战略合作,其中非常重要的部分就是如何帮助中国开源社区的成长,我们也希望通过这样的方式,培养更多的中国本土的Leader,将来他们可以去创建多样化的开源社区,去领导更多的项目。

道克:需要强调一下,开源并不是一件容易的事情,它意味着我们需要投入更多的努力。我们需要有大量来自全球的有关需求的沟通,可能你的团队在中国,你的需求来自于英国或者是美国,语言障碍会带来挑战。此外,选择做开源,选择一个更多人可以用的东西,一定意味着需要有更多付出。

举一个例子,我和我孩子做饭,可以选择我自己做,让我的孩子做,或者教我的孩子做。让我做饭很简单,但是让我的孩子做饭一定是个灾难。如果让我选择,教我的孩子如何做饭,虽然培养的过程需要花很多的精力,但最终当孩子学会做饭之后,就能一劳永逸。

开源社区也是这样,开始阶段需要投入比我们现有项目更多的努力,但是一旦我们很好的建立一个社区和社区文化,这个项目就会有一种自我生长、自我繁殖的能力。

10、中国另一个现状就是天赋的缺失,你们有什么建议?

道克:这个的确很难,因为现在大数据技术的变化演进非常快,如果你希望成为一个大数据人才,就必须有非常强的学习新技术的能力。技术变化太快了,只有最好的人才能做到。真正能够解决的方式只有自我不断的学习,以及可以有第三方提供的培训来帮助大家。Cloudera提供了一些课程出来,这个课程对大学是免费的。

王建民:为了解决大数据人才的问题,中国已经有很多大学开设了大数据教育的课程,清华数科院就有相关的硕士计划,第一届已经有150名以上的学生,来自清华不同院系的师资支持这个课程,但是这个课程到底应该怎么去上呢?

参与授课的学生基本上可以分成三类,第一类是有很强的IT背景,可以做很多数据工程的事情;第二类来自社会信息学的领域,在他的工作中有很大部分就是在处理数据。第三类人是来自传统行业,比如像机械工程这样的领域,他们以前没有足够的IT知识和处理数据的技能。

我们在去年的授课过程中也在不断的调整课程,我们认为更好的解决方法,是理论和实践结合,让大家在学习理论课程的同时有更多的实践机会,能够更好的去解决技能问题。Cloudera提供的这些免费课程将会被引进到清华大数据硕士教育的计划中。

11、大数据技术在中国未来会怎样发展?

王建民:第一点,大数据在中国的进步会非常好,数据来源会非常多,中国有越来越多的人、越来越多的机器、越来越多的在线交易,都在产生大量的数据。但是在这个过程中我们要改变现在的文化,让决策听从数据驱动。第二点,不要把大数据神化,认为大数据可以做更多的事情,要有耐心把大数据和我们的业务更好的结合起来。第三点,我们需要更多的注意安全和隐私,我们会有越来越多的数据,数据安全实际上是这个发展的前提。第四点,要更多发展中国自己的技术。

迈克:中国大数据有非常好的未来,清华这边也在做很多和大数据相关的事情,大数据在全球的发展已经非常成功,在中国经济方面、社会方面都会涌现非常多的机会。

道克:是的,中国一定会有很多的机会,而且中国的技术也已经很先进了,更重要的是现在开源社区给了我们更多的机会去参与学习。

12、大数据技术的未来又是什么样的?

道克:这个非常难预测,现在不太可能会知道,如果要知道我就去做了。我认为更可能知道的是在座的各位,如果大家有什么样非常好的想法,可以去积极尝试。

迈克:在中国,小米正在使用Kudu,而Spark社区现在也变得越来越热,这个情况在五年前我们都是见不到的。所以现在开源社区给我们一个非常好的环境和生态系统,像Hadoop这样,可以帮助大家更好的去发展更多新的技术。

王建民:我们能够看到的是,大数据系统对于中国的很多用户来讲,非常难使用,已有的开源技术并不能被很好的利用起来。在我们实验室现在就有这样一个项目,可以帮助大家更简化的使用今天Hadoop的系统,是一种用机器学习的方法更多去完成自动化的参数、自动化的控制,我们正在做更多的努力。

迈克:这个方向很好,机器学习一定是未来的趋势,我们应该思考怎么在更多方面结合这项技术。

欢迎加入本站公开兴趣群

软件开发技术群

兴趣范围包括:Java,C/C++,Python,PHP,Ruby,shell等各种语言开发经验交流,各种框架使用,外包项目机会,学习、培训、跳槽等交流

QQ群:26931708

Hadoop源代码研究群

兴趣范围包括:Hadoop源代码解读,改进,优化,分布式系统场景定制,与Hadoop有关的各种开源项目,总之就是玩转Hadoop

QQ群:288410967

;