一、你是怎么理解Spark,它的特点是什么?
Spark是一个基于内存的,用于大规模数据处理(离线计算、实时计算、快速查询(交互式查询))的统一分析引擎。
它内部的组成模块,包含SparkCore,SparkSQL,SparkStreaming,SparkMLlib,SparkGraghx等...
它的特点:
快
Spark计算速度是MapReduce计算速度的10-100倍
易用
MR支持1种计算模型,Spsark支持更多的计算模型(算法多)
通用
Spark 能够进行离线计算、交互式查询(快速查询)、实时计算、机器学习、图计算
兼容性
Spark支持大数据中的Yarn调度,支持mesos。可以处理hadoop计算的数据。
二、Spark有几种部署方式,请分别简要论述
1) Local:运行在一台机器上,通常是练手或者测试环境。
2)Standalone:构建一个基于Mster+Slaves的资源调度集群,Spark任务提交给Master运行。是Spark自身的一个调度系统。
3)Yarn: Spark客户端直接连接Yarn,不需要额外构建Spark集群。有yarn-client和yarn-cluster两种模式,主要区别在于:Driver程序的运行节点。
4)Mesos:国内大环境比较少用。