Hadoop系列之三:技术未来

Hadoop的未来如何,一个重要的影响因素是技术的更新和进步。从最近几年Hadoop和其他大数据相关技术的发展,我们可以看出一些端倪。

数据存储 – 前景乐观

从文件存储技术来看,HDFS稳定而健壮,已然是海量文件存储的实际标准。当然也有一些分布式文件存储技术值得关注,如GlusterFS, Tachyon等等。但对HDFS尚不构成实质性的威胁。

相比文件存储的一家独大,结构化数据的存储,目前呈现出的是百花齐放的局面。我们之前提到过,在Hadoop生态系统中,结构化数据存储最成熟的实现是HBase。你可以把它想象成更灵活,可扩展性更强的MySQL。相比其他NoSQL数据库如MongoDB和Cassandra的风风火火,HBase相对低调。但个人认为HBase适用的范围更广,前景依然十分乐观。对于NoSQL数据库,我就不展开讨论了,有兴趣的可以参考NoSQL精粹一书。

数据处理 – 面临挑战

从数据处理来看,MapReduce已不再热门。最本质的原因是MapReduce的模型过于简单。其后果是使得编程十分困难。一个简单的word count程序也需要编写很多MapReduce代码。虽然有Pig和Cascade等等更高层语言工具的支持,但MapReduce编程总是一件头疼的事情。另外,简单地模型使得特定数据处理的性能优化十分困难。特别是像机器学习这样需要反复多遍处理数据的应用,文件读写成为瓶颈。目前,Spark以其简单高效的特性,大有取代MapReduce,成为通用数据处理引擎之势。当然,Hadoop自己也推出了一些新的数据处理引擎,如MRv2(YARN)、Tez,但未来恐怕还是Spark的。

资源调配 – 充满机遇

老的MapReduce 的另一个问题是它的资源配给机制存在性能缺陷。为从根本上解决旧 MapReduce 框架的性能瓶颈,从 0.23.0 版本开始,Hadoop 的 MapReduce 框架完全重构。新的 Hadoop MapReduce 框架命名为 MapReduceV2 或者叫 YARN。

虽然YARN是为了MapReduce而生的,但是它实际上也是一个独立的资源管理框架,所以理论上YARN上可以运行任何分布式应用,YARN只是配给CPU,内存等资源。实际上,Spark,Storm等非Hadoop系的应用都支持在YARN的框架中运行。这使得YARN成为Hadoop“招安”其他大数据应用成为可能。当然,YARN也不是稳坐泰山,Mesos是一个不可忽视的竞争者,Mesosphere很快就要发布他们的数据中心操作系统,看看它的Demo就知道未来资源调配是这么回事了。

从Hadoop对文件存储和资源调配支持的发展趋势,我们可以想象,未来Hadoop应该像今天操作系统一样,成为更底层的基础设施。

结语

Hadoop作为大数据的平台和生态系统,已经过了疯涨期,步入稳步理性增长的阶段。未来,和其他技术一样,面临着自身新陈代谢和周遭新技术的挑战。开源社区能够繁荣的不二法门是有更好的程序,更多人使用,更多人贡献,如此良性循环。希望Hadoop的持续繁荣,可以使各个领域的中小企业也能够轻松愉快地处理海量的数据。

更多内容
Hadoop系列之一:小象诞生
Hadoop系列之二:三足鼎立

 

你可能感兴趣的:(hadoop)