Spark学习方法:不断重复,28原则(使用80%时间完成20%重要内容)
Spark风雨十年s
Spark 是什么
扩展阅读:Spark VS Hadoop
- Spark和Hadoop对比
- 面试题:Hadoop的基于进程的计算和Spark基于线程方式优缺点?
答案:Hadoop中的MR中每个map/reduce task都是一个java进程方式运行,好处在于进程之间是互相独立的,每个task独享进程资源,没有互相干扰,监控方便,但是问题在于task之间不方便共享数据,执行效率比较低。比如多个map task读取不同数据源文件需要将数据源加载到每个map task中,造成重复加载和浪费内存。而基于线程的方式计算是为了数据共享和提高执行效率,Spark采用了线程的最小的执行单位,但缺点是线程之间会有资源竞争。
Spark 四大特点
1-速度快
2-非常好用
3-通用性
4-运行在很多地方
Spark 框架模块了解
基本原理
1-Spark的Local模式使用的是单机多线程的方式模拟线程执行Spark的计算任务
2-Spark的local[1] 1个线程执行计算 local[*]本地的所有线程模拟
安装包下载
1-搞清楚版本,本机一定得搭建Hadoop集群(Hadoop3.3.0)
2-上传到Linux中,spark3.1.2-hadoop3.2-bin.tar.gz
3-解压Spark的压缩包
tar -zxvf xxx.tar.gz -C /export/server
ln -s spark-3.1.2-bin-hadoop3.2/ /export/server/spark
4-更改配置文件
这里对于local模式,开箱即用
5-测试
spark-shell方式 使用scala语言
pyspark方式 使用python语言
上午回顾:
为什么要学习Spark?
- 答案:首先Spark是基于Hadoop1.x改进的大规模数据的计算引擎,Spark提供了多种模块,比如机器学习,图计算
- 数据第三代计算引擎
什么是Spark?
- Spark是处理大规模数据的计算引擎
- 1-速度快,比Hadoop块100倍(机器学习算法) 2-易用性(spark.read.json) 3-通用性 4-run anywhere
Spark有哪些组件?
- 1-SparkCore—以RDD(弹性,分布式,数据集)为数据结构
- 2-SparkSQL----以DataFrame为数据结构
- 3-SparkStreaming----以Seq[RDD],DStream离散化流构建流式应用
- 4-结构化流structuredStreaming—DataFrame
- 5-SparkMllib,机器学习,以RDD或DataFrame为例
- 6-SparkGraphX,图计算,以RDPG弹性分布式属性图
Spark有哪些部署方式?
- local模式
- standalone模式(独立部署模式)
- standaloneHA模式(高可用模式)
- Yarn模式(Hadoop中分布式资源调度框架)
注意: