大数据学习(22)-spark

&&大数据学习&&

🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门

💖如果觉得博主的文章还不错的话,请点赞👍+收藏⭐️+留言📝支持一下博主哦🤞


Spark是一个基于内存计算的大数据并行计算框架,具有快速、易用、通用等特点。它支持多种数据处理模式,包括批处理、迭代算法、交互式查询、流处理等,可以一站式地完成大数据领域的离线批处理、交互式查询、流式计算、机器学习、图计算等常见的任务。Spark内置了Spark Core、Spark SQL、Spark Streaming、MLlib、GraphX等技术组件,可以高效地处理大规模数据。相比于MapReduce,Spark的中间输出结果可以缓存到内存中,从而不再需要读写HDFS,减少了磁盘数据交互,能够更好地适应机器学习和数据挖掘等需要迭代的算法。

核心概念

  1. RDD(弹性分布式数据集):RDD是Spark的基本计算单元,一组RDD可形成执行的有向无环图(RDD Graph),并且具有"弹性"的特征,既可以在内存优先存储并计算,如果内存不够,再拿磁盘顶上。
  2. 执行器(Executor):在worker节点上启动的进程,负责执行任务。
  3. Worker:从节点,负责控制计算节点,启动Executor。
  4. Driver:运行Application的main()函数并创建SparkContext(应用程序的入口)。和集群的executor进行交互。
  5. SparkContext:整个应用的上下文,控制应用的生命周期。
  6. Stage:Spark基本概念总结中的一个阶段,由hdfs block或者hbase regioin数目决定。一个job可以划分为多个stage,stage之间是并行关系。每个stage可以有多个task。
  7. ClusterManager:在standalone模式中是Master(主节点),控制整个集群,监控Worker。在YARN模式下是资源管理器。
  1. Application:Spark应用程序,是用户提交的Spark任务,包含了应用程序的名称、集群的URL、提交的类名等信息。
  2. Application jar:Spark应用程序打包后的jar文件,包含了应用程序的代码和依赖项。
  3. Driver program:Spark的驱动程序,负责启动和管理应用程序的执行。在Spark中,每个应用程序都有一个对应的驱动程序。
  4. Cluster manager:Spark集群管理器,负责在集群中分配和管理资源。Spark支持多种集群管理器,例如Apache Mesos、YARN和Kubernetes等。
  5. Deploy mode:Spark应用程序的部署模式,它决定了应用程序如何在集群中运行。Spark支持三种部署模式:client、cluster和client+cluster。
  6. Worker node:Spark集群中的工作节点,它负责运行Spark应用程序中的任务(Task)。
  7. Executor:Spark应用程序运行在Executor上,它是一个进程,负责执行任务并管理应用程序的资源。每个Executor都有其自己的JVM和内存空间。
  8. Task:Spark任务是工作单元,它负责处理数据集中的一个分片(partition)。每个任务都被调度到一个Executor上执行。
  9. Job:Spark作业是一组相关的任务,它们被一起调度和执行。一个作业可以包含多个阶段(Stage)。
  10. Stage:Spark阶段是作业的一部分,它包含一组任务(Task)。阶段之间通过shuffle进行划分,每个阶段都会进行一次shuffle操作。

总结来说,Spark应用程序(Application)是用户提交的任务,驱动程序(Driver program)负责启动和管理应用程序的执行,集群管理器(Cluster manager)负责在集群中分配和管理资源,部署模式(Deploy mode)决定了应用程序如何在集群中运行。工作节点(Worker node)是负责运行任务的节点,而Executor进程负责执行任务和管理应用程序的资源。任务(Task)是工作单元,作业(Job)是一组相关的任务,阶段(Stage)则是作业的一部分,包含一组任务。

之后会持续更新spark,hive已经学完啦!

相关推荐
nvd112 小时前
Flink 批处理驱动的湖仓 AI 财务研报流水线:从双流广播汇聚到 Agent 智能决策与原生 Iceberg 落盘全景实战
大数据·人工智能·flink
别动我齐刘海3 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
计算机编程指导师4 小时前
【计算机毕设推荐】基于Hadoop+Spark的公共交通运营数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·计算机·数据分析·spark·交通
QYR_115 小时前
机械制造用固体润滑涂层市场分析:2032年全球市场规模预计达8.78亿元,CAGR为6.2%
大数据·人工智能·物联网
数字化顾问6 小时前
(144页PPT)数字化转型汽车企业数智化战略规划(附下载方式)
大数据
gjf05_056 小时前
人该怎样活着呢?版本75.8
学习
智慧物业老杨7 小时前
数字底座,重构小区治理秩序
大数据
计算机编程指导师7 小时前
【计算机毕设选题推荐】基于Hadoop的宫颈癌变进程光谱数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·数据分析·spark·毕业设计·宫颈癌变
li星野8 小时前
【学习记录】PCB与PCBA核心知识全解析:从设计到制造的关键细节
学习·制造
guhunyihan8 小时前
无代码系统搭建平台,探索恐象 AI 带来的开发新范式
大数据·人工智能