Spark学习笔记(一)基础概念

1.Spark
Spark是一个用于实现快速而通用集群计算平台
Spark使用内存进行计算,只读取一次,大量的迭代工作放入内存,所以Spark内存开销大,速率也快
计算模型:MapReduce(速度快)

2.MapReduce(key-value)
MapReduce 主要包含三个功能:map、group by、reduce
map:对读取的文件进行逐个扫描,并获取我们所需要的数据
group by:根据一定的规则进行排序
reduce:数据的聚合、合并等处理

3.RDD(开发中的主体)
弹性分布式数据集(resilient distributed dataset)
RDD表示分布在多个计算节点上可以并行操作的元素集合,也是Spark主要的编程抽象。

4.driver 程序驱动器
每一个Spark应用都由一个driver发起集群上的各种并行操作。驱动程序包含main函数,定义了集群上的分布式数据集,对这些数据集进行操作。
在Spark书中由一个pySpark shell的例子:
>>>lines=sc.textFIle('README.md') #创建一个名为lines的RDD
driver程序就是Spark Shell本体,后续实际java开发中所写的程序,我理解为也是变相的编写shell,虽然还是java代码,但似乎与我们之前运行的逻辑有所不同。实际应该是代码由spark提交部署后,被读取,去创建SparkContext对象访问Spark,后续的操作也只是在代码中被定义了,提交到了Spark上运行。而不是程序的main方法就是最终运行,脱离于原有的java -jar的方式。

5.executor执行器
SparkContext对象的各种操作,比如count(),集群模式下,不同的节点会统计去操作不同的数据,Spark能够在集群上并行执行操作(方法),而执行这些操作,driver需要管理多个executor执行器节点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值