作者:三毛 | 来源:互联网 | 2023-07-31 09:41
上一学期的云计算课上,也有spark的实验任务。对它有一个初步的了解,但是当时因为时间紧任务重,在完成实验任务后就没有再详细研究。趁着寒假重新开始学习spark,这次希望可以对它掌
上一学期的云计算课上,也有spark的实验任务。对它有一个初步的了解,但是当时因为时间紧任务重,在完成实验任务后就没有再详细研究。
趁着寒假重新开始学习spark,这次希望可以对它掌握的更加全面,首先从基本的概念入手。
包括Spark特点、 Scala特性、BDAS架构、Spark组件的应用场景、Spark基本概念、Spark运行架构、 Spark架构设计的优点 、Spark各种概念之间的相互关系
Hadoop 是基于磁盘的大数据计算框架
Spark是基于内存计算的大数据并行计算框架
这是hadoop与spark的基本概念
Spark特点
Scala特性
BDAS架构
MapReduce 软件适用于做复杂的批量数据处理(数十分钟到数小时)
Cloudera Impala 软件(类似于hive)基于历史数据的交互式查询(数十秒到数分钟)
Storm 软件基于实时数据流的数据处理( 数百毫秒到数秒)
Spark可以同时满足企业各种应用需求(同时支持批处理 交互式查询 和流数据处理 )
希望这种架构可以满足企业不同类型的需求
最底层(Mesos Hadoop Yarn )是资源的虚拟化层
Spark基于内存计算功能依靠Spark Core实现
Spark SQL提供交互式查询分析
Spark Streaming 提供了流计算功能
MLlib 提供机器学习算法库的组件
Graphx提供图计算
Spark组件的应用场景
Spark基本概念
RDD (弹性分布式数据集)(分布式 内存的抽象概念 提供了一种高度受限的共享内存模型)
DAG(有向无环图)
Executor 运行具体Task的一个节点
Spark运行架构
Cluster Manager 集群资源管理器
Worker Node运行作业任务的工作节点
Driver 每个应用的任务控制节点
Executor 每个工作节点上负责具体任务的的执行进程
Spark架构设计的优点
1.利用多线程来执行具体的任务 减少任务的启动开销
2.Executor 中有一个BlockManager存储模块 会将内存和磁盘共同作为存储设备 有效减少磁盘IO开销(优先写到内存)
Spark各种概念之间的相互关系
今天了解到的都是很抽象难以理解的名词,说实话还是有些懵懵懂懂,接下来需要通过亲自动手安装软件和编代码来感受它的实际功能。打卡第一天٩(*´◒`*)۶