在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Spark作为一种分布式的计算框架,类似于大数据开发中Hadoop生态圈的MapReduce,计算思想和MR非常相似,两者都是分而治之的思想,但使用率要比MR高很多。本文整理了关于Spark运行架构的大数据面试题,内容包括Spark运行的基本流程、架构特点、优势。
1、Spark 运行基本流程:
(1)构建 Spark Application 的运行环境(启动 SparkContext),SparkContext 向资源管理器(可以是 Standalone、Mesos 或 YARN)注册并申请运行 Executor 资源;
(2)资源管理器分配 Executor 资源并启动 Executor,Executor 运行情况将随着心跳发送到资源管理器上;
(3)SparkContext 构建成 DAG 图,将 DAG 图分解成 Stage,并把 Taskset发送给 Task Scheduler。Executor 向 SparkContext 申请 Task,Task Scheduler 将Task 发放给 Executor 运行同时 SparkContext 将应用程序代码发放给 Executor。
(4)Task 在 Executor 上运行,运行完毕释放所有资源。
2、Spark 运行架构特点:
(1)每个 Application 获取专属的 executor 进程,该进程在 Application 期间一直驻留,并以多线程方式运行 tasks。
(2)Spark 任务与资源管理器无关,只要能够获取 executor 进程,并能保持相互通信就可以了。
(3)提交 SparkContext 的 Client 应该靠近 Worker 节点(运行 Executor 的节点),最好是在同一个 Rack 里,因为 Spark 程序运行过程中 SparkContext 和Executor 之间有大量的信息交换;如果想在远程集群中运行,最好使用 RPC 将SparkContext 提交给集群,不要远离 Worker 运行 SparkContext。
(4)Task 采用了数据本地性和推测执行的优化机制。
3、Spark的优势:
(1)计算效率高
资源复用;粗粒度的资源调度。
(2)使用方便
支持使用多门语言来编写;提供了超过80多种方法来供我们使用。
(3)通用性强
Spark生态圈中的组件都是基于SparkCore封装起来的。
(4)适应性强
可以接受上百种数据源;可以运行在各种各样的资源调度框架上。
以上就是大数据面试题,所有关于Spark运行架构的内容,不知道对大家梳理Spark运行架构的知识点,有没有帮助?
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
5分钟掌握Hadoop环境搭建流程
Hadoop是大数据技术的基础,它在大数据技术体系中的地位是非常重要的。目前Hadoop是主流的分布式系统基础架构之一,用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储。所以对于Hadoop基础知识的掌握的扎实程度,会决定你在大数据技术道路上走多远。首先我们来学习一下Hadoop环境搭建流程吧。
7022
2019-08-14 10:19:35
大数据面试题 Hadoop的联邦机制
大数据学习需要掌握很多技术知识点,包括Linux、Zookeeper、Hadoop、Redis、HDFS、MapReduce、Hive、lmpala、Hue、Oozie、Storm、Kafka、Spark、Scala、SparkSQL、Hbase、Flink、机器学习等。今天主要和大家分享一下Hadoop的联邦机制。
9546
2019-07-18 23:40:42
大数据Hbase经典面试题汇总
本文是根据市场需求和许多程序员面试的反馈而整理出来的,里面汇总了近些年来有关Hbase知识点的大数据经典面试题。希望本文能帮助求职者梳理Hbase知识点,让求职者在面试过程中胸有成竹。
8744
2019-08-05 19:10:38
Hive数据仓库层级划分介绍
本文就Hive数据仓库层级划分进行详细介绍,全文大概分为数据仓库的四个操作和四逻辑架构层次两个部分。这些都是Hive数据仓库的基础知识,大家一定要掌握哦!
10698
2019-08-09 19:31:31
云计算的核心技术有哪些?五大核心技术深入分析
云计算在技术上是通过虚拟化技术架构起来的数据服务中心,实现对存储、计算、内存、网络等资源化,按照用户需求进行动态分配。用户不再是在传统的物理硬件资源上享受服务,而改变为在虚拟资源层上构建自己的应用。
25307
2019-10-22 09:00:44