在线客服
扫描二维码
下载博学谷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运行架构的知识点,有没有帮助?
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
大数据面试:数据仓库工具hive面试题集锦
进入DATE时代,大数据技术成为互联网发展的核心要素之一。与此同时大数据开发工程师的薪资也成为行业内高薪的代表。想从事大数据开发需要掌握多种核心技术:Hadoop、Hive、Storm、Spark、Scala等等。而且这些技术知识点已经成为大数据工程师进入职场时面试中必备的考点。这里主要和大家分享一下数据仓库工具hive相关的面试题!
15767
2019-07-05 17:30:53
大数据面试题 Hadoop/MapReduce,Spark,Strom,Hive 的特点及适用场景
随着移动互联网的发展,云计算大数据开发求职者越来越多,面对如此激烈的市场竞争,小编特为大家整理了大数据面试题:Hadoop/MapReduce,Spark,Strom,Hive 的特点及适用场景。
8969
2019-07-09 15:08:42
大数据面试要注意哪些方面?大数据面试准备三大攻略
大数据面试要注意哪些方面?一般来说,求职者要做好自我介绍、面试提问和专业考题三大方面的准备。下面是小编专门为大数据求职者整理的面试攻略,希望对大家找工作有所帮助。
6909
2019-09-08 19:36:29
程序员必须掌握的大数据分析核心技术有哪些?
程序员必须掌握的大数据分析核心技术有哪些?大数据分析技术现是一种传统的技术分析模型,主要对数据进行筛选、过滤之后进行分析。随着银行业、保险业,电子商务的不断发展,非结构数据的数量越来越多,增加了大数据分析的难度,对于大数据方面的程序员要求越来越高。
5875
2020-03-05 15:19:17
大数据分析的方法有几种?
大数据分析的方法有几种?大数据分析六种方法:数字和趋势、维度分解、用户分群、转化漏斗、行为轨迹、留存分析。看数字及趋势是最基础进行展示相关数据管理信息的方法,对于谁符合一定的行为或背景资料,分类处理用户。
4958
2020-07-22 15:59:31