Spark学习方法:不断重复,28原则(使用80%时间完成20%重要内容)
Spark框架概述
Spark风雨十年s
- 2012年Hadoop1.x出现,里程碑意义
- 2013年Hadoop2.x出现,改进HDFS,Yarn,基于Hadoop1.x框架提出基于内存迭代式计算框架Spark
- 1-Spark全家桶,实现离线,实时,机器学习,图计算
- 2-spark版本从2.x到3.x很多优化
- 3-目前企业中最多使用Spark仍然是在离线处理部分,SparkSQL On Hive
Spark 是什么
- 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 框架模块了解
- Spark框架通信使用Netty框架,通信框架
- Spark数据结构:核心数据RDD(弹性 分布式Distrubyte 数据集dataset),DataFrame
- Spark部署模式(环境搭建)
- local
- local 单个线程
- local[*] 本地所有线程
- local【k】 k个线程
- Spark的RDD有很多分区,基于线程执行分区数据计算,并行计算
- standalone
- StandaloneHA
- Yarn
Spark环境搭建-Local
基本原理
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模式,开箱即用
最后
🍅 硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。
🍅 技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。
🍅 面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。
🍅 知识体系:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、Python、前端等等。