欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

spark运行架构和基础

时间:2023-06-23

目录

基本 概念

架构设计

 spark运行的基本流程


基本 概念 RDD:(官方概念)弹性分布式数据集,就是一个个的在内存里的数据。就是数据的基本单位,所有spark都是来操作他的DAG 是有向无环图,它的作用主要是反应rdd之间的关系。Excutor 就是一个容器,就像Hadoop的node一样,用来运行的应用 顾名思义来编写spark程序的任务 运行的excutor单元

架构设计

如图

整个图一目了然,spark的架构,关于hdfs和hebase是一种可以读取的源数据类型,除此之外还有很多类型也会被这个读取比如Kafka,或者套接字流,当然这些数据源大概率都会在sparkstreaming里体现。

 不止一次说过继续强调一遍,与Hadoop相比,spark读写基本上都是发生在内存里,所以更快。

 spark运行的基本流程

1.当一个spark被提交时,driver会先创造一个sparkcontext的对象,由它向资源管理器进行资源的申请,然后他就辉获得Excutor的资源,总而言之一个sparkcontext就像中场球员串联全场。

2.资源管理器--->excutor分配资源,excutor——>资源管理器运行的信息。

3.sparkcontext 根据rdd的依赖关系构建dag图,由dag图让所有资源得以利用。

 这个图摘自林子雨主编的spark

总而言之,spark框架有以下集中特点

1.每个应用都有自己专属的excutor,而且每个任务都是多线程而不是多进程从而节省很多资源,

2.还有一点我一直强调的就是spark的运行速度快是因为把东西都放在内存里了,此时就有一个BlockManager的模块类似于hdfs的模块从而实现的数据的读取.

3.计算向数据靠拢(具体在后面的文章讲

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。