可能很多的程序员朋友做开始转向大数据开发方向时,了解Hadoop的开始的,于是自然而然就从Hadoop相关的开始了。而且一旦用上了Hadoop相关的MapReduce以后,基本就是就依赖于在这上面从事开发,而不愿意了解其它的。Hadoop MapReduce有很多优点,比如:高可靠性,高扩展性,高效性,高容错性等,但还是有些缺点,而这些缺点也让很多大数据单位转向Spark。
Spark和hadoop
Spark是一个快速、通用的大规模数据处理引擎,Spark中的SparkSQL、Spark Streaming、MLlib、Graph等等,可以说很好的解决了大数据中的Batch Processing、Stream Processing、Ad-hocQuery这三大核心问题。是一个分布式内存型计算框架,将中间数据放到内存中,让地带运算效率更高,更适合于实时计算以及交互式计算、计算量大、效率要求高的场合。它已经成为一个轻量级大数据快速处理的统一平台,各种不同应用,如实时流出来、机器学习、交互式查询能够,都可以通过Spark建立在不同的存储和运行系统上。
Spark
所以特别是要求快速计算的大数据分析,Spark比Hadoop更具有优势,工作负载更加优越比如内存计算下快很多倍,只是循环数据流,提供很多高级运算符易用,提供多语言的API,能快速实现应用,代码简洁,而且安装部署简单。可运行在YARN上, 读取Hadoop的任何数据。
Spark
特别是速度问题,很多公司很看重Spark,也转向利用Spark。比如某些广告投放系统,借助Spark快速迭代的优势,快速实现实时采集、分析、预测等,每天可以达到支持上百亿的数据量请求,而且日志数据即使查询也是非常的快速,交互响应很快。
速度是一个大问题,未来Spark取代Hadoop也是有可能的,而且可能很快。所以作为大数据程序员朋友,尽快多了解学习Spark个人认为是必要的,不能对Spark视而不见。
领取专属 10元无门槛券
私享最新 技术干货