Spark的核心RDD(弹性分布式数据集)
先热下身😜 Hadoop
Hadoop的核心技术都是为了把传统的单点式结构转变为分布式结构:
- 把单机文件存储转变为分布式存储——HDFS;
- 把单机计算转变为分布式计算——MapReduce;
- 把单机数据库转换为分布式数据库——Hbase和Hive
Scala基础
1 | Scala和Java很像. 用过java8中lambda表达式的(我之前博客中有写), 上手会更快的. |
Spark核心概念–RDD(弹性分布式数据集)
1 | 1. 一个RDDS是一个不可改变的分布式集合对象. |
RDD的基本操作
1 | Transformations(转换): |
RDDs中的集合运算
1 | 示例数据: |
RDD的Action操作.
上面我们对RDD的操作都是一个转换的操作.
Action: 这里我们要在RDD计算出一个结果
1 | 1. reduce() |
RDDs的特性
Spark维护着RDDs之间的依赖关系和创建关系, 称之为血统关系图.
Spark使用血统关系图来计算每个RDD的需求和恢复丢失的数据.
1 | 如: rdd经过filter产生了rdd1, rdd1经过map产生rdd2, rdd1和rdd2经过union操作产生了rdd3. |
RDDs的KeyValue对
1 | 1. 创建keyvalue |
1 | combineByKey(); |
结尾:
Spark是一个基于内存的计算, 因此计算速度很快.
Spark的基础知识点差不多都涵盖了.
后面就要深入学习Spark. 如Spark的架构和运行原理以及部署程序等等.
一起加油吧!