Spark与Hadoop的相爱相杀,企业并不在乎谁取代谁

       随着大数据逐渐走下神坛,逐渐的与各个行业相对接,也逐渐的开始展现出其驱动一切的魅力。而在这些实际的应用当中,spark与hadoop无疑是最受开发者、企业、商家所关注的。那么在大数据技术领域,spark与hadoop相爱相杀,真的存在谁取代谁的情况吗?


       关于spark与hadoop的关系我们可以通过一个简单的例子来了解,Hadoop是一家大型包工队,可以组织一大堆人合作(HDFS)搬砖盖房(用MapReduce),但是速度比较慢。Spark是另一家包工队,虽然成立得晚一些,但是搬砖很快、很灵活,可以实时交互地盖房子,比Hadoop快得多。Hadoop开始升级,指定调度专家YARN调度工人。Spark从多个仓库(HDFS、Cassandra、S3、HBase)搬砖,还允许不同专家如YARN/ MESOS对人员和任务进行调度。然而这两者并不是水火不容。Spark经常和Hadoop团队合作,这让问题变得更加复杂。不管怎么说,Spark和Hadoop都是两个独立的包工队,都有着各自的优缺点和特定的业务用例。

       Hadoop最大的优势就是可处理的数据量庞大且运行稳定。在节点资源不增加的情况下,Hadoop的运行速度虽然不占优势,但却是十分稳定的。在海量数据处理方面,Hadoop依旧是目前为止可以找到的最合适的解决方案。既是优势也是劣势,Hadoop在批处理方面的强大无法掩盖其在实时处理以及流处理方面的缺憾。同时Hadhoop核心组件——MapReduce、Hive和HDFS与边缘组件的边界正在变得越来越清晰,Spark、Flink正在逐渐成长,生态渐渐庞大,可供选择的组件越来越多。作为后来者的Spark和Flink正是弥补了Hadoop的这些劣势,在大数据市场分得了一方天下。那么,Spark会替代Hadoop,还是与Hadoo合作?

       Spark的优势在于速度,在内存中运行速度比Hadoop快100倍,在磁盘上运行速度快10倍。这样,Spark在数量只有十分之一的电脑上,对100TB数据进行排序的速度比Hadoop MapReduce快3倍。此外,Spark在机器学习应用中的速度同样更快,例如Naive Bayes和k-means。

       如今有很多的大型企业在利用Hadoop 做大数据平台,但并不代表商spark被忽略了。Spark 是运行于 Hadoop 顶层的内存处理方案。Hadoop 最大的用户eBay 和雅虎都在 Hadoop 集群中运行着 Spark。所以,将 Spark 置于和 Hadoop 对立的位置,就好像是说你的新电动汽车看起来很高级,所以你的车就不需要充电一样。如果电动汽车真的普及的话,那只会带来更多的用电需求。Hadoop与spark二者虽然总有人在强调谁会取代谁,但是他们相爱相杀的关系已经决定了他们能够产期协同发展,虽然互相看不顺眼,但却势均力敌。

       其实,对于企业而言,hadoop与spark谁取代谁都没有太大意义,毕竟企业是要看到的就是大数据所带来的结果,而对于大数据开发领域的从业者,二者都需要学习,毕竟再很多实际应用中,两种模式一起应用,混合搭配能够取得更好的结果。

本文转自:海牛学院


猜你喜欢

转载自blog.csdn.net/hainiubuluo/article/details/80941382