在开源领域,Hadoop算得上是最成功的项目之一。这个诞生于2006年的开源项目,如今几乎成了大数据的代名词,越来越多的企业正在将Hadoop应用到他们的业务中。Hadoop已成为各类企业解决海量数据的通用处理平台,被广泛运用到医疗、教育、交通等多个行业,用来对数据进行分析处理、对未来进行预测。尽管如此,作为一个开源项目,Hadoop也面临着架构复杂、技术门槛高等诸多挑战,特别是随着人工智能热的出现以及Spark等新一代大数据处理框架的崛起,企业对Hadoop出现了很多需求。在这种情况下,Hadoop会做出哪些调整?即将发布的Hadoop 3.0会有哪些改进?就显得尤为引人瞩目。就此话题,在不久前举行的Strata+Hadoop新加坡大会期间,记者专访了Hadoop的一个重要玩家Cloudera 的创始人兼CTO Amr Awadallah。
Cloudera 的创始人兼CTO Amr Awadallah
Hadoop成为海量数据处理的通用平台
在Amr Awadallah看来,过去的10年来,Hadoop的发展归为三个阶段,2008年之前Hadoop是证明了其可用性,给使用者以信心;2008年到如今,Hadoop是证明了其扩展性,逐渐占据海量数据处理市场;2008年之后,Hadoop进入了快速扩展阶段,其用户群开始从美国本土进入更多的国家扩散。
作为Hadoop生态圈中的重要一员,Cloudera的整体发展也基本保持这种节奏。他透露,如今Cloudera客户数迅速扩展到全球,已拥有1500多家客户(美国本土1000多家),合作伙伴也多达2600多个。其中IaaS的供应商就有100多家,这也说明Hadoop越来越多地和云计算绑定到了一起。
“这10年来,Hadoop接受了一个又一个案例的考验,已经被证明是可以满足企业级应用需求的,包括其稳定性、可扩展性都是足以满足严苛的企业用户需求的。”Amr Awadallah强调说,对于一个开源项目这很关键,是一笔重要的财富。
对于Hadoop而言,这10年另一个关键成绩就是围绕Hadoop已经形成了一个庞大的生态系统,一方面,在这个生态系统中有IaaS这样的云平台供应商、各类工具提供商,还有帮助最终客户完成部署并达成项目的众多合作伙伴,他们共同打造出一个繁荣的Hadoop生态。另一方面,Hadoop项目也从最初的HDFS、HBase、MapReduce等不多的项目扩展到包括Spark在内的众多开源项目的集合,展示出强大的包容能力。
“有人认为Spark会取代Hadoop,这种说法是不科学的。”Amr Awadallah特别强调这两者是相互依存的关系不是取代。他说,目前仅他所知道的同时使用Spark+Hadoop的项目就不下30个。这些项目中Hadoop很多被作为一个底层,来支撑其上运行的Spark,毕竟Spark只是一个框架,它需要HDFS来存储底层数据。
Amr Awadallah进一步解释说,需要Hadoop+ Spark的场景很多,比如,这样可以处理的数据来源可以更丰富,或者可扩展性也更强,或者这种组合可以满足多种目的的使用需求。
“根据目前的使用经验来看,基于内存计算的Spark还有一些不足,而这些不足借助Hadoop可以帮助克服。比如,Spark目前最大的应用案例是100-200个节点,而Hadoop可以达到4000个节点。另外,稳定性与Hadoop相比也有不足。”Amr Awadallah表示。
Hadoop 3.0值得期待
Hadoop是开源软件,这使得它天生地带有创新速度快等特点,与此同时,开源软件易用性不足、工具相对缺乏也如影相随。这是因为开源软件的开发人员往往愿意把精力用在那些关键功能上,而对于边缘的、非业务关键功能则关注不够。正因为如此,开源软件特别需要一些像Cloudera这样的商业公司来帮忙,包括为用户提供咨询服务、开发周边的使用工具、提供完整的Hadoop打包套件等。
实际上,即便是那些具有丰富经验的工程师有时仍会面对诸多复杂纷繁的问题而挠头,对Hadoop初学者和普通用户而言这个挑战就更大了。对此,Amr Awadallah表示,这是开源软件面临的一个普遍性问题,好在市场上还存在不少像Cloudera这样的公司可以为用户提供帮助。比如,Cloudera采用开源+闭源结合的方式,既提供有自己的Hadoop发布版,同时也提供不少商业化的工具来帮助用户更好地发挥Hadoop的价值。另一方面,它们也会联合社区来共同推动Hadoop功能的改进,使其更好用、易用。
他透露,即将发布的Hadoop 3.0在上述方面就有不少的改进,其中引入了一些重要的功能和优化,而最大改变的就是HDFS,包括HDFS 可擦除编码、多Namenode支持,也会支持Spark等。这些改进的一个直接后果是能更快,同时,也会减少存储空间。
采访中Amr Awadallah提醒说,与传统的基于数据库和数据仓库的应用相比,大数据是一种完全不同的应用类型。对于企业而言,在部署大数据系统之前,首先是要了解大数据能解决哪些问题?自己准备用大数据来解决哪些问题。否则,很容易导致为用大数据而用大数据的结局,这会影响项目的成功。其次,要积极学习新知识,同时也要结合过去掌握的数据库方面的知识。
展望未来,Amr Awadallah表示,当下Hadoop面临一个非常好的历史机遇,这就是人工智能的兴起,而很多人工智能背后都离不开Hadoop。
“人工智能最后拼的就是数据,数据量越大越最准确,最后的决策就越科学,在这种海量数据的处理平台中,Hadoop是最有竞争力的一个。”Amr Awadallah说。
另外,Amr Awadallah提到还有一些新的热门应用也会是Hadoop的机会,比如,眼下大热的区块链。一些区块链供应商选用Hadoop取代传统数据库来作为底层数据平台。在大会期间,记者遇到了来自上海万达网络金融服务有限公司的蔡栋,他是该公司总裁助理兼网络数据中心副总经理、首席架构师,上海万达网络金融服务有限公司区块链项目的直接负责人。他们所做的正好可以佐证Amr Awadallah的观点。
上海万达网络金融服务公司总裁助理兼网络数据中心副总经理、首席架构师蔡栋
大会期间,上海万达网络金融服务有限公司联合Cloudera重磅发布一站式“大数据+区块链”解决开源方案 – Project Hercules大力神项目。蔡栋介绍说,Project Hercules突破性地实现了基于各种数据中心或云环境的大数据+区块链基础架构服务,为行业用户提供集成的大数据处理、分析支持以及区块链应用的构建与管理。
“考虑到区块链项目的未来应用前景,我们认为,区块链一定就是基于大数据的。这是我们选择Cloudera Hadoop版的主要原因之一。”蔡栋表示,他对Hadoop落地到区块链的项目充满的信心和期待。