博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spark 三种部署模式的区别对比
阅读量:4692 次
发布时间:2019-06-09

本文共 1102 字,大约阅读时间需要 3 分钟。

在这三种部署模式中,standalone作为spark自带的分布式部署模式,是最简单也是最基本的spark应用程序部署模式,这里就不再赘述。这里就讲一下yarn和mesos的区别:

(1) 就两种框架本身而言,mesos上可部署yarn框架。而yarn是更通用的一种部署框架,而且技术较成熟。

(2) mesos双层调度机制,能支持多种调度模式,而Yarn通过Resource Mananger管理集群资源,只能使用一种调度模式。Mesos 的双层调度机制为:mesos可接入如yarn一般的分布式部署框架,但Mesos要求可接入的框架必须有一个调度器模块,该调度器负责框架内部的任务调度。当一个framework想要接入mesos时,需要修改自己的调度器,以便向mesos注册,并获取mesos分配给自己的资源, 这样再由自己的调度器将这些资源分配给框架中的任务,也就是说,整个mesos系统采用了双层调度框架:第一层,由mesos将资源分配给框架;第二层,框架自己的调度器将资源分配给自己内部的任务。

(3) mesos可实现粗、细粒度资源调度,可动态分配资源,而Yarn只能实现静态资源分配。其中粗粒度和细粒度调度定义如下:

  粗粒度模式(Coarse-grained Mode):程序运行之前就要把所需要的各种资源(每个executor占用多少资源,内部可运行多少个executor)申请好,运行过程中不能改变。
  细粒度模式(Fine-grained Mode):为了防止资源浪费,对资源进行按需分配。与粗粒度模式一样,应用程序启动时,先会启动executor,但每个executor占用资源仅仅是自己运行所需的资源,不需要考虑将来要运行的任务,之后,mesos会为每个executor动态分配资源,每分配一些,便可以运行一个新任务,单个Task运行完之后可以马上释放对应的资源。每个Task会汇报状态给Mesos slave和Mesos Master,便于更加细粒度管理和容错,这种调度模式类似于MapReduce调度模式,每个Task完全独立,优点是便于资源控制和隔离,但缺点也很明显,短作业运行延迟大。
  从yarn和mesos的区别可看出,它们各自有优缺点。因此实际使用中,选择哪种框架,要根据本公司的实际需要而定,可考虑现有的大数据生态环境。如我司采用yarn部署spark,原因是,我司早已有较成熟的hadoop的框架,考虑到使用的方便性,采用了yarn模式的部署。

 

 

转载于:https://www.cnblogs.com/eric666666/p/11228825.html

你可能感兴趣的文章
简练软考知识点整理-规划干系人管理
查看>>
centeros iptable模板文件
查看>>
Ajax的原理和应用 (转载,资料收集,整理)
查看>>
tomcat用root权限也起不来
查看>>
黑马程序员2-成员变量的封装及类方法
查看>>
SprintBoot 实现上传下载
查看>>
笔记:非科班出身的我,如何成为了UI设计师
查看>>
关于C#堆栈的几点说明
查看>>
我们应该去努力推动每一件有利于这个社会的一些事情
查看>>
flutte项目命令行打包
查看>>
HDU-2577 How to Type(递推,DP)(水)2017寒假集训
查看>>
SQL数据库开发知识总结:提高篇
查看>>
jsp基础语言-jsp注释
查看>>
Cocos2d-x mac下eclipse开发环境的搭建, 创建跨平台的cocos2dx项目
查看>>
Java学习 · 初识 面向对象基础一
查看>>
也谈WebKit、Gecko使用图形库
查看>>
Could not write file: C:\......\.classpath
查看>>
css里关于浏览器的前缀
查看>>
HDU - 1175 连连看 DFS (记录方向)
查看>>
重头开始学23种设计模式:单例模式
查看>>