跳至主要內容
PySpark_7

day08/09/10/11_PySpark课程笔记

今日内容:

  • 1- Spark SQL的运行机制
  • 2- 综合案例

1. Spark SQL入门案例

1.1 Spark SQL的统一入口

	从Spark SQL开始, 需要将核心对象, 从SparkContext 切换为SparkSession对象
Spark session对象是Spark2.0以后退出的一个全新的对象, 此对象将会作为整个Spark的统一入口对象,此对象不仅仅可以操作Spark SQL 同时还可以获取到SparkContext对象, 用于操作Spark Core对象

Znyoung大约 44 分钟大数据PySpark
PySpark_6

day07_PySpark课程笔记

今日内容:

  • RDD的内核调度:
    • RDD的依赖
    • DAG 与 stage
    • RDD的shuffle
    • JOB的调度流程
    • Spark的并行度处理
    • combinerByKey
  • Spark Sql 基本介绍
  • Spark SQL的入门案例

1. RDD的内核调度

RDD的内核调度的主要任务: 
	1- 确定需要构建多少个分区(线程)
	2- 如何构建DAG执行流程图
	3- 如何划分stage阶段
	4- Driver内部核心处理流程

目标: 
	对Spark底层运转能够更加清晰, 保证在实施过程中, 采用最合适的资源, 高效的完成计算任务

Znyoung大约 15 分钟大数据PySpark
PySpark_5

day05_pySpark课程笔记

今日内容:

  • 1- RDD的持久化: 缓存和检查点
  • 2- RDD的共享变量: 广播变量 和 累加器
  • 3- RDD的内核调度

1. RDD的持久化

1.1 RDD的缓存

缓存: 
	一般是当一个RDD的计算非常的耗时|昂贵(计算规则比较复杂),并且这个RDD会被重复的(多方)使用,可以尝试将计算完的结果缓存起来, 便于后续的使用, 从而提升效率
	通过缓存也可以提升RDD的容错能力, 当后续计算失败后, 尽量不让RDD进行回溯所有的计算链条, 从而减少重新计算时间


注意:
	缓存是一种临时存储, 缓存的数据可以保存到内存(executor内部的内存空间)  也可以保存到磁盘,甚至可以保存到堆外内存中(executor以外的系统内存空间)
	由于临时存储, 可能会存在丢失, 所以缓存操作, 并不会将RDD之间的依赖关系给截断掉,因为当缓存失效后, 可以通过依赖链条进行回溯计算(重新计算)
	缓存的API都是LAZY的, 如果需要触发缓存的执行, 必须在后续要跟上一个ACTION算子, 一般建议采用count

Znyoung大约 12 分钟大数据PySpark
PySpark_4

day04_PySpark课程笔记

今日内容:

  • 1- Spark Core 如何构建RDD
  • 2- RDD算子相关的操作
  • 3- 综合案例

1 如何构建RDD

构建RDD对象的方式主要有二种:

1- 通过 parallelism 并行的方式来构建RDD (程序内部模拟数据)  -- 测试

2- 通过读取外部文件的方式来获取一个RDD对象

Znyoung大约 23 分钟大数据PySpark
PySpark_3

day03 PySpark课程笔记

今日内容:

  • 1- Spark框架与PySpark交互流程 (理解)
  • 2- Spark-Submit相关参数说明 (记录)
  • 3- RDD的基本介绍 (理解)
  • 4- 如何构建RDD(操作)

1. Spark框架与PySpark交互流程

  • 将Spark程序提交到Spark集群采用Client部署模式:
image-20220830221040127.png
image-20220830221040127.png

Znyoung大约 12 分钟大数据PySpark
PySpark_2

day02_PySpark课程笔记

今日内容:

  • 1- 如何基于Spark-submit方式进行任务提交 (操作)
  • 2- Spark On Yarn 环境配置操作 (操作)
  • 3- Spark程序 与 PySpark交互流程 (核心原理)
  • 4- Spark-submit的相关参数说明(记录)

1- 基于Spark-Submit进行任务提交

​ spark-submit这个脚本是Spark框架专门用于提交Spark任务的脚本, 此脚本可以将Spark任务提交到不同的资源调度平台上, 包括local, yarn, spark集群等, 同时在提交的过程中, 还可以设置资源的相关的信息


Znyoung大约 5 分钟大数据PySpark
PySpark_1

day01-PySpark课程笔记

文档

今日内容:

  • 1- Spark 的基本介绍
  • 2- Spark的环境安装 (参考安装文档, 将其搭建成功)
  • 3- 基于pycharm完成pyspark入门案例(操作)

1. Spark的基本介绍

1.1 Spark的基本介绍

  • MapReduce: 分布式的计算分析引擎
MR: 分布式计算引擎, 处理大规模的数据, 主要是用于批处理操作, 离线计算操作

MR存在的弊端主要是什么?
	1- 执行效率比较低
	2- API相对比较底层, 开发效率比较慢
	3- 迭代计算非常的不方便

什么是迭代计算呢?  
	简单来说, 在执行过程中, 整个的计算任务需要划分为多个阶段. 每一个阶段需要依赖于上一个阶段的执行结果, 一个阶段一个阶段的进行运行, 我们可以将这样的计算过程称为迭代计算

Znyoung大约 17 分钟大数据PySpark