Spark是什么

Spark是什么?

引用官网(官方网址:http://spark.apache.org/)的一段话:

Apache Spark™ is a fast and general engine for large-scale data
processing.

Apache Spark is an open source cluster computing system that aims to
make data analytics fast

both fast to run and fast to wrtie

大概翻译下就是:Apache下的Spark是一种快速、通用的大规模数据处理引擎。Apache Spark一个开源的集群计算系统,其目标进行快速地数据分析,不但运行得快,写得也快。
下面看这张图:

The Berkeley Data Analytics Stack:
​​​​在这里插入图片描述

这是伯克利大学的AMP实验室对数据进行分析所使用到的技术栈,从中可以看到Spark集群包括:
1、SparkCore
2、SparkStreaming
3、SparkSQL
4、SparkMLib

其中,SparkCore是用于大数据的批处理(类似于MapReduce), SparkStreaming是用于大数据的流处理,SparkSQL是用于交互式处理,类似Hive工具,SparkMLib则是用于机器学习

Spark的宗旨是One stack rule them all !(所有大数据的处理场景都可以在Spark中一栈式处理)
在这里插入图片描述
我们知道大数据处理的计算框架有很多,针对不同的场景搭建不同的集群会带来一些问题:比如资源抢占,搭建成本高等,维护成本也高。而spark的目的就是解决这个问题,搭建一个spark集群即可以解决所有的大数据处理场景。

Spark演变历史:

Spark是美国加州大学伯克利分校的AMP实验室(主要创始人lester和Matei)开发的通用的大数据处理框架
2009伯克利大学开始编写最初的源代码
2010年才开放的源码
2012年2月发布了0.6.0版本
2013年6月进入了Apache孵化器项目
2013年年中Spark的主要成员成立的DataBricks公司
2014年2月成为了Apache的顶级项目(8个月的时间)
2015年5月底Spark1.0.0发布
2014年9月Spark1.1.0发布
2014年12月spark1.2.0发布
2015年3月Spark1.3.0发布
2015年6月Spark1.4.0发布
2015年9月Spark1.5.0发布
2016年1月Spark1.6.0发布
2016年5月Spark2.0.0预览版发布
2016年7月Spark2.0.0正式版发布
2016年12月Spark2.1.0正式版发布

Spark与MapReduce不同之处是Spark计算是基于内存迭代的,而MapReduce是基于磁盘迭代的,下图第一行MapReduce计算示意图,第二行是Spark计算示意图:
在这里插入图片描述

Spark比MapReduce快不仅仅是因为其基于内存迭代,还有一部分原因是Spark的DAG机制。

Spark的运行模式有四种:

Local 多用于测试
Standalone
YARN 最具前景
Mesos
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值