前期工作
scala
一、介绍
1.1、RDD介绍
1.2、缓存策略
- cache persist, StorageLevel
- Lineage , 如果Lineage过长,为了容错,就需要进行缓存或者checkpoint
- 宽窄依赖
- Spark中控制算子也是懒执行的,需要Action算子触发才能执行,主要是为了对数据进行缓存。
控制算子有三种,cache,persist,checkpoint,以上算子都可以将RDD持久化,持久化的单位是partition。cache和persist都是懒执行的。必须有一个action类算子触发执行。checkpoint算子不仅能将RDD持久化到磁盘,还能切断RDD之间的依赖关系。
1.3、Spark之任务流程和角色
- job的切分
- 任务的调度
- 执行架构
1.4、在Eclipse上调试Spark项目
二、安装
- 配置HA
- DAG Visualization 点击之后没有任何反应?, 做各种尝试,都没有作用, 最后发现的确是浏览器问题(换成chrome就可以了)。
- Ambari上spark2.1.1的Spark History ServerUI无法显示appliation信息, 这个也是浏览器问题
- spark源码编译
2.1、yarn-cluster
2.2、Spark升级注意事项
三、算子
3.1、算子的使用
四、简单案例
4.1、spark 简单案例
4.2、Spark SQL
4.3、Spark Streaming
- sparkSteaming介绍
-
从一个监听端口读取数据流
- 算子
五、优化
5.1、常规性能调优
5.2、JVM调优
- 5.2.1、JVM调优之原理概述以及降低cache操作的内存占比
- 5.2.2、调节executor堆外内存与连接等待时长