关于Hadoop生死的讨论已经进入后半场,KPI当前,企业继续专注自己的业务发展,厂商继续包装自己的产品,重心都不再是Hadoop的命运走向。在这之中,我们可能忽略了一些问题,比如Hadoop核心组件与边缘组件的边界正在变得越来越清晰;Spark、Flink正在逐渐成长,生态渐渐庞大;可供选择的组件越来越多,企业对于如何选择毫无头绪。
本期走访嘉宾:刘译璟,百分点集团技术副总裁兼首席架构师。作为Hadoop生态的直接使用者,百分点对Hadoop的命运如何看待?层出不穷的Hadoop生态组件,百分点是如何选择的呢?
所谓专注:Hadoop的优势恰恰是它最大的劣势!
2011年,Hadoop在百分点正式上线。起初,百分点主要是应用MapReduce、Hive和HDFS三大核心组件做数据仓库相关的工作。随后,组件越来越丰富,功能也越来越强大。但总体来讲,Hadoop在百分点大数据架构中还是扮演着一个基础平台的角色。
基于多年Hadoop生态的应用经验,刘译璟认为,Hadoop最大的优势就是可处理的数据量庞大且运行稳定。在节点资源不增加的情况下,Hadoop的运行速度虽然不占优势,但却是十分稳定的。在海量数据处理方面,Hadoop依旧是目前为止可以找到的最合适的解决方案。
既是优势也是劣势,Hadoop在批处理方面的强大无法掩盖其在实时处理以及流处理方面的缺憾。作为后来者的Spark和Flink正是弥补了Hadoop的这些劣势,才在大数据市场分得了一方天下。
与其讨论庞大的Hadoop生态的命运,不如先看看各组件都过得如何!
Gartner在《2017年数据管理技术成熟度曲线》中指出,尽管企业对大数据解决方案的需求在不断增长,但对Hadoop的需求并没有像预期那样加速,企业对Hadoop的热情很低。刘译璟认为,企业对Hadoop的关注度降低是正常的,概念炒作阶段结束,企业将关注点移回业务和解决方案本身,部分厂商又开始将焦点对准下一轮新兴技术,准备着新一波的技术炒作。
Gartner认为,Hadoop到达生产成熟期前即被淘汰
单就Gartner报告,我们很难对Hadoop判死刑。毕竟,事实上,它已经存在于国内很多企业的大数据架构中,每天都会有成千上万的任务运行在Hadoop之上,这其中不免核心任务。既然我们对庞大的Hadoop生态的命运摇摆不定,不如先来看看Hadoop各大组件的生存现状,一旦这些组件逐渐被外来者替换,整个生态自然无法称之为“Hadoop生态”。
虽然,Hadoop生态历史悠久且成熟,企业没有必要将运行良好的整个底层架构替换掉。但是,Hadoop生态中各个组件的可替换性还是很高的,Hadoop生态的概念被慢慢淡化是有可能的。比如,不少企业会在机器学习任务中使用Spark或者Tensorflow,甚至尝试类似Flink这样的新技术。
至于各大组件的生命力,刘译璟认为企业需要判断组件之间的差异性,选择生命力相对较长的组件。他表示,HBase、HDFS以及ZooKeeper这类组件的生命力还是挺长的,短期内不会消失。毕竟,类似HDFS这样的基础组件消失是很困难的,无论是Spark还是Flink,底层的文件系统都是HDFS,很少有第三方厂商基于开源再造一个文件系统,HDFS在某种程度上奠定了大数据的基础。
其次,应用极其广泛的Hive也是Hadoop生态表现比较好的组件之一,类SQL的做法易于学习,企业可进一步增加自定义的函数和方法。
最后,ZooKeeper和HBase也是可以放心的两个选择。目前,不少系统集成了ZooKeeper,因为它是分布式应用程序协调服务很关键的工具。在海量数据存储方面,刘译璟认为,目前看起来比较靠谱的方案依旧是HBase。无论是时间序列数据库还是图数据库底层往往都是HBase,这也说明其性能的优异。
但是,MapReduce、Hive这类组件确实可能被Spark等替换掉,随着硬件越来越成熟,Spark的优化工作越来越好,企业很可能倾向于在内存中计算。此外,Hadoop在机器学习方面确实不太擅长,Mahout等组件表现不佳,成为不少企业选择Spark的原因之一。最后,资源管理器Yarn与Hadoop的绑定过于紧,而实际上,我们有很多资源调度管理方法可供选择,比如Kubernetes等,对各种应用的支持某种程度上比Yarn更完善,无论是外部类型应用,大数据应用还是机器学习应用均可处理。
不少用户都在讨论:这么多组件,企业如何搭配才是正确的。其实,组件的选取肯定与具体完成的业务相关,除上述讨论,刘译璟也分享了百分点的大数据操作系统图,希望对从业者有所帮助。
大数据天下咋分?被热捧的Spark和Flink或许会先大战一场!
对于现在比较热门的两大Hadoop替补队员——Spark和Flink,刘译璟认为,整体来看,Spark确实还有很大的发展空间。作为后来者,Spark在功能与效果上确实比Hadoop更好。随着Flink的逐渐完善,Spark与Flink之间的竞争关系会更为直接明显,因为二者的理念和方法十分相像,都弥补了Hadoop在实时处理和流式处理方面的缺憾。
但是,一项技术要想真正发展起来不单单取决于技术本身的价值。想要与Hadoop平起平坐,Flink和Spark还需要来自厂商、开发者甚至是资本方面的支持,暂时无法预测未来的大数据市场会是什么样的现象。
总之,Hadoop生态可能走向衰落,但核心组件的生命力依然旺盛!