Spark-core &Spark-sql &SparkStreaming复习总结

SparkCore

架构设计图
在这里插入图片描述
名词解释
1.RDD(Resilient Distributed DataSet)
弹性分布式数据集,是对数据集在spark储存和计算过程中的一种抽象
是一组只读可分区的分布式数据集合
一个RDD包含多个分区Partition(类似mapreduce中的inputSplit,文件大小超过128mb时,默认切分),分区是按照一定规则,将具有相同规则的属性数据放在一起
横向上可切分并行计算,以分区partition为切分后的最小储存和计算单元
纵向上可以进行内存/外存切换使用,当数据在内存不足时,使用外存补充
2.partition(分区)
partition类似hadoop的split,计算是以partition为单位进行的,提供了一种划分数据的方式
partition的划分依据有很多,常见的有hash分区,范围分区等,也可以自己定义的,像hdfs文件,划分的方式就和MR一样,以文件的block来划分不同的partition
一个partition交给一个task去计算处理
3.算子
简称:Operator ,Op
广义上讲,对任何函数进行某一项操作都可以认为是一个算子
通俗上讲,算子即为映射,关系,变换
MR算子,主要分为两个,一个是Map,一个是Reduce两个主要操作的算子,导致灵活可用性比较差
spark算子分为两大类(scala算子),行动算子-转换算子:Action op和 Transformation op 合计有80多个
并且支持链式调用,所以强大
4.Transformation Operator
操作是延迟计算的,也就是说从一个RDD转换生成另一个RDD的转换运算不是马上执行,而是需要等到有action操作的时候才会真正触发操作-联想记忆法:类比spring 框架的 lazy init 懒加载单例初始化对象配置,单例模式中的懒汉模式
细分:
value数据类型的transformation算子
key-value数据类型的transformation算子
5.Action类算子
会触发spark提交作业,并将数据输出到spark系统
6.窄依赖
如果一个父RDD的每个分区只被一个RDD分区使用,一对一关系
7.宽依赖
如果一个父RDD的每个分区都要被子RDD的多个分区使用,一对多关系
8.Application
spark Application的概念和mr中的job或者yarn中的application manager下的application类似,指的是用户编写spark应用程序,包含了一个driver工鞥呢的代码块,和分布在集群中多个节点上运行的executor代码
一般是指整个spark项目从开发,测试.部署,运行的全部抽象
9.Driver
运行main函数并创建sparkContext:连接器(中枢神经)
被称为驱动程序:driver program类似于hadoop的wordcount程序中的driver类的main函数
10.Cluster Manager
集群的资源管理器,在集群上获取资源的服务,如yarn mesos,spark Standalone等
以yarn为例,驱动程序会向yarn申请计算我这个任务需要多少内存,多少cpu,然后由cluster manager调度告诉驱动程序可以使用多少,然后驱动程序将任务分配到既定的worker node节点上执行
11.WorkerNode
集群中任何一个可以运行spark应用代码的节点
worker node就是物理机器节点.可以在上面启动executor进程

12.Executor
Applicationyunxing

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值