再见Hadoop之父,大数据应用新认知

有机会再次见到Hadoop之父——Doug Cutting先生,与2014年见面稍有不同的是,这次Doug Cutting先生身份变为了Cloudera首席架构师。结合Hadoop、大数据和人工智能等热点,记者对他进行了深入采访。

Hadoop之父,Cloudera首席架构师Doug Cutting先生

问:作为Hadoop创始人,请您回顾一下Hadoop历史和初衷?

Doug Cutting:创建Hadoop的时候,当时我正在做一个项目,这个项目的代号叫Nutch。当时希望能够基于开源去创建出一种网络搜索的引擎,实现一种具有可扩展性、可收缩性的数据技术。

同期我看到了来自于Google的几篇论文,我觉得他们的想法和我们的想法是完全一致的,所以我们把Google的想法放到了Nutch项目当中来实施了。当时我个人有这样的一个需要,就是要做好手上的项目,当时我确实是没有预想到一旦创建出来这个技术以后,它具有如此之广的用途,没有预见到它在制造、银行、电信等很多行业的价值。它让我感觉到非常惊喜。

问:如今Hadoop的进展,有没有和最初设想不太一样的地方?

Doug Cutting:当初也没有一个关于Hadoop将来如何发展的计划,Hadoop发展的演进范围、规模大大超出了我当初的预想。而且最让我惊喜的就是围绕着Hadoop以及基于Hadoop所有的项目和技术,并不是基于某一个单独的技术。而是基于多种技术组成的系列家族,整个技术系列是在不断发展和演进之中,也就是说围绕着Hadoop现在已经形成了非常强大的生态系统,Hadoop整体生态系统的演进和发展并不受制于其中的任何一种组成的技术。

问: Hadoop常常和大数据联系在一起,和人工智能也有关联吗?

Doug Cutting :我觉得Hadoop和AI之间是非常适合、非常匹配的一项技术,因为AI本身就是一种大数据的应用。

特别对于AI系统进行训练的时候,使用的数据越多,AI系统就越先进。上周Google发表了一篇文章,主要讲的是基于AI的图像识别,也就是说,在用数以十亿计的图像识别的深度智能系统培训基础之上,图像越多,识别能力就越强。因此,从这个意义上来说,AI就是一种大数据应用。

问:如何看待Hadoop和开源软件之间的演变关系?

Doug Cutting: Hadoop作为一项基础仍然是在发挥着关键作用,与此同时spark对于像IoT和AI的应用,也在起到越来越重要的作用。

除此之外,我们也会看到新的技术会涌现出来,这样能够使得开源的整个生态系统进一步得到发展和改进。这对于整个开源的生态系统来说是一件好事,比方说如果有了更好的存储技术或者是更好的分析技术,毫无疑问Cloudera会采用这些技术。因为在开源的世界当中,竞争的逻辑是不一样的,没有哪个公司是拥有开源的技术。每当开源的技术有了新的发明或进展,开源群体的每一分子都会受益于其中。比方说如果在有一些领域会出现新的技术,在某些方面会优于Hadoop,那Cloudera也会毫无疑问去采纳这样的技术放到我们的解决方案当中去交付给客户,例如kudu,它是一个非常强大的存储引擎,它既具备了像Hbase的随机访问能力,同时又具有HDFS快速查询能力,两者兼而有之。再例如Kafka,它有很强的实时应用支持能力和流处理能力,Cloudera已经把这两个技术采纳到平台当中,更好地满足需求。

另外我们也在构建一些更多基于Spark机器学习的工具,与之相关的有一个项目叫Apache Spot,它帮助我们的客户保护他们的网络安全,免遭黑客的攻击,这是我们在Hadoop和Spark基础之上的进一步发展。

问:对于Hadoop分布式存储来说,在处理速度、网络延时和成本几个要素之间如何取得比较好的平衡?

Doug Cutting:在很多案例当中,我们看到处理器很多但也能够做到低延迟,关键在于对于要处理的问、处理任务怎样划分,比如通过Hbase或通过很多交互式的系统像Solr 搜索,在节点越多的情况下反而能降低延迟,这是因为任务处理有很好的并行性。可以说现在大部分情况下,节点的数量或处理器的数量和延迟之间的平衡是不难找到的。

接下来就要讲成本,成本确实是一个考虑因素,首先我们的软件是开源的,而且我们所有解决方案能够使用普通的商用硬件,所以和上一代相比成本有大幅度降低。而且我们认为今天这种低成本的架构是可以去运行很多其他的应用,只不过有很多其他的应用暂时还没有用上低成本的架构,还有进一步降低成本的潜力。

问:Cloudera在Hadoop、Spark领域竞争的优势是什么?

Doug Cutting :首先IBM、微软等几家ISV对于Hadoop也是大力支持的,比方说微软是Cloudera的合作伙伴,Oracle是Cloudera的分销商。而且我们看到在大数据领域,采用最多的还是开源的系统。

尽管在亚马逊、微软和谷歌的云平台之上会有一些用户,他们的大数据应用使用的是专有的商用软件服务。但是我认为假以时日,这些客户会再次认识到在云中使用开源的大数据解决方案,具备成本更低、质量更高的优势,因为使用开源的解决方案使客户可以在不同的云环境之间自由迁移。将来如果有这样的必要性,可以选择把这个软件本地安装来使用。

迄今为止,这些在大数据领域的商业或者专有软件对Cloudera来说,我认为并不构成威胁。

问:如何看待Hadoop和云计算的关系?

Doug Cutting:云计算或云模式使得客户在使用Hadoop的方式上具有了更大的灵活性,比方说他们可以在云环境中来使用Hadoop。如果他们把Hadoop用本地安装运行的形式来使用的话,他们往往是建一个单个很大的集群来支持各种不同的应用,并且拥有一个统一的数据拷贝。如果在云环境当中来运行Hadoop,他们的数据会在亚马逊存储之类的系统当中,云环境供应商已经帮助他们管理了数据的拷贝。

在云环境当中使用Hadoop,客户可以针对不同的应用创建应用不同的集群,而这样的集群开关或者是规模的伸缩,都可以按需进行,这样对于客户来说,可以实现更好控制和灵活性。

我们从整个IT长远的发展趋势来看,过去IT在一个企业当中往往是集中在一个部门的手中,但是现在我们看到很多的企业的数据和数字技术,是在整个企业当中得到了扩散和广泛使用,并不是所有IT的事项像过去一样要找IT部门解决,各个非IT的部门具有越来越大的能力,在IT方面进行自我管理、自我服务,也有越来越多的工具能够帮助他们做到这一点。而云计算是促进和推动了这一趋势的发展,由于有云计算使得一个公司当中非IT部门,例如运营、制造、市场营销部门都能够自行采购一些服务并且加以运行,他们的控制能力和灵活性都大大增加了。

云计算本身也是促进了IT和数据的分散化、自助化,而不是像过去那种集中化的模式。

问:有数据专家现在趋向于把Hadoop当作数据仓库架构的补充,请问您是怎么理解的?对于有一些数据量极小的应用, Hadoop会是杀鸡用牛刀吗?

Doug Cutting:我们是可以把整个数据仓库都建立在Hadoop之上的。五年前我们和Ralph Kimball博士,他是数据仓库架构主要的创建人,一起搞清楚了,也是证实了可以完全基于Hadoop来建立数据仓库。而且也有很多用户确实是把他们的数据仓库完全建立在Hadoop的基础之上。

当然就建立数据仓库的技术而言,有其他的一些技术或者是工具,和Hadoop相比,这些存在的年头更长,可能已经有了数十年的历史。而事实上对于这些时间更加长久的技术,Hadoop并没有能够具备其中所有的功能、所有的性能。但即使如此,很多用户选择把他们的数据仓库构建在Hadoop的架构之上,他们是为了能够实现更加优越的可扩展性、更高的性价比,以及更好的灵活性。

就第二个问而言,是不是杀鸡用牛刀,这主要看用户完成任务当中需要使用什么样的工具。有的时候也许在规模上、在扩展性上是超出了需求,但是仍然能够带来灵活性的优势。比方说使用基于Spark的机器学习的工具。在这些情况下,用户仍然发现Hadoop的平台对于完成他们的任务非常有用,虽然他的规模可能是过大的。当然我们讲的也很清楚,我们并不认为Hadoop是一种通用的工具能够解决所有的问。

在实际应用中,即使是规模很小的集群,比方说5个节点的集群,客户也发现使用Hadoop与其他技术选项相比能够产生更好的产出,带来更多的价值与竞争。

问:对于大数据应用发展的速度,您感觉满意吗?

Doug Cutting:整个大数据的发展是在非常早期的阶段,而且大数据是保持着稳步持续地增长。我们看到很多公司在自己的大数据项目上都取得了成功,虽然目前这些大数据的项目规模还比较小,就大数据解决方案而言,我们的大数据解决方案客户的也是也是在稳步增长,他们用于大数据解决方案集群的规模也是在稳步增长。至少自从Cloudera诞生以来,我们看到整个的数据的应用是处在稳步增长的曲线之中,而并没有出现停滞不前或者是失去动力的情况。

大数据已经很成功应用在很多领域,像金融反欺诈应用,在医疗领域,大数据也已经有了很多成功案例,比方说美国有一家公司Cerner开发了一套大数据系统,主要是来判断患者有可能发生败血症的情况。目前通过Cerner已经对几百名有产生败血症风险的患者先期采取措施进行了治疗,预防了败血症的发生,这就是一个非常成功的案例。

在癌症治疗方面,大数据的应用也在取得很多的进展,比方说主要是在基因组学的研究方面,在取得治疗癌症方面的进展。举一个例子,加州大学的旧金山分校,他们做的大数据项目就是通过基因组的分析来找到癌细胞、肿瘤细胞突变的原因,并且来匹配相应的疗法。他们用这样的基于大数据的解决方案,已经开始对一些患者治疗。虽然接受这种治疗方法的患者人数不是太多,因为目前这种治疗方法的价格还是非常昂贵,但是价格是在逐渐下降当中的。即使用大数据的解决方案治疗癌症,我们也是在取得很大的进步。

只是治疗癌症是一个很大的难题,我们可能还要花几十年的时间。但是我确信未来癌症的治疗肯定是要基于大数据系统。

简而言之,大数据应用的普及是一个长期的过程,应该让每一家公司、每一个组织机构都能够用正确的方式来用好数据,这需要花很长的时间。不像智能手机带来的变化,把智能手机卖到人手一台,这个事情就完成了。大数据的普及,也是需要组织结构本身发生很大的变化,还需要很多的教育工作、人才的培养工作,但是这一切都是在稳步推进当中。

问:您怎么看待中国大数据应用状况?针对开发者,Cloudera有哪些计划?

Doug Cutting:从中国的角度来说,从大数据出现一直到今天,中国一直是在大量使用、采用和参与推进大数据的发展。而且在过去十年当中,Hadoop在中国也是一直得到了大力推进,取得了非常大的成功。我们可以看到中国市场和Hadoop之间有一个非常自然的契合和匹配,从数据的角度来说中国可能是世界上最大的单一市场,在中国拥有数据的数量和规模超过了世界上大部分其他的国家,这也就是为什么Hadoop在中国有着非常成功的发展。

中国Hadoop生态圈和其他国家相比有一个不同:就是在中国很多Hadoop用户习惯使用Hadoop的开源版本,而不是购买专业公司支持和帮助。对此,需要花更多的时间对市场进行教育和培育,也就是让人们能够了解到从更加长远的角度来说,在使用这些软件的过程当中如果能够得到有关方面的支持和帮助,会有更好的结果。

就培训而言,Cloudera是一直在推动各种培训的项目。对于一个零起步的开发者来说,学习Hadoop最好的方式不是通过教科书,而是要通过案例来学习,通过案例的需求在具体实施当中、具体实践当中来学,这样的学习效果是更好的。Cloudera有一个Cloudera学术计划,清华大学就是首批合作伙伴,还有其他的大学加入。在这个计划当中,Cloudera是把大数据培训的技能、教材、内容免费提供给大学合作伙伴。另外在亚洲有一个BASE Initiative(大数据分析技能培训计划)的教育项目,对潜在对象进行大数据技能的教育培训,并且招聘其中的一些人到有大数据技能需求的公司来工作。

问:您如何看待知识图谱?

Doug Cutting:在我看来知识图谱、支持工程的方法没有统计学方法那么成功。在八十年代,像知识工程就已经非常流行了,在我还当学生的时候知识工程就很流行。但是深度学习在当今取得的成功,主要依靠的是统计学的方法,也就是基于巨量数据的各种模型的训练,而不是通过知识工程的方式,而且主要是在像图像识别、语音识别以及分类任务的完成之上取得了很大的进展。

当然我也不是说像知识图谱、知识工程的方式在人工智能当中永远不会成功,只是在目前的现状当中不如统计学的方法更加有效。对于深度学习进一步发展的挑战,我认为最大的一个挑战就是深度学习的有用性、适用性、广度到底有多大。目前在一些认识、识别任务的完成当中,深度学习非常有效,比方说在大量的噪音或者是干扰的因素当中进行清晰的识别、分类、标签,做得非常好。但是有很多其他的任务,这样的任务当中对形势进行分析,并且做出决策,并不是完全依靠刚才说到的这种能力。

虽然目前人们对于深度学习能够完成很多其他的任务是非常乐观的,但是我希望这样的乐观不会是一种过度的乐观。