成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Apache Spark三種分布式部署方式比較

數據庫 數據庫運維 分布式 Spark
目前Apache Spark支持三種分布式部署方式,分別是standalone、spark on mesos和 spark on YARN。

其中,***種類似于MapReduce 1.0所采用的模式,內部實現了容錯性和資源管理,后兩種則是未來發展的趨勢,部分容錯性和資源管理交由統一的資源管理系統完成:讓Spark運行在一個通用的資源管理系統之上,這樣可以與其他計算框架,比如MapReduce,公用一個集群資源,***的好處是降低運維成本和提高資源利用率(資源按需分配)。本文將介紹這三種部署方式,并比較其優缺點。

standalone模式,即獨立模式,自帶完整的服務,可單獨部署到一個集群中,無需依賴任何其他資源管理系統。從一定程度上說,該模式是其他兩種的基礎。借鑒Spark開發模式,我們可以得到一種開發新型計算框架的一般思路:先設計出它的standalone模式,為了快速開發,起初不需要考慮服務(比如master/slave)的容錯性,之后再開發相應的wrapper,將stanlone模式下的服務原封不動的部署到資源管理系統yarn或者mesos上,由資源管理系統負責服務本身的容錯。目前Spark在standalone模式下是沒有任何單點故障問題的,這是借助zookeeper實現的,思想類似于Hbase master單點故障解決方案。將Spark standalone與MapReduce比較,會發現它們兩個在架構上是完全一致的:

1)  都是由master/slaves服務組成的,且起初master均存在單點故障,后來均通過zookeeper解決(Apache MRv1的JobTracker仍存在單點問題,但CDH版本得到了解決);

2) 各個節點上的資源被抽象成粗粒度的slot,有多少slot就能同時運行多少task。不同的是,MapReduce將slot分為map slot和reduce slot,它們分別只能供Map Task和Reduce Task使用,而不能共享,這是MapReduce資源利率低效的原因之一,而Spark則更優化一些,它不區分slot類型,只有一種slot,可以供各種類型的Task使用,這種方式可以提高資源利用率,但是不夠靈活,不能為不同類型的Task定制slot資源。總之,這兩種方式各有優缺點。

Spark On Mesos模式。這是很多公司采用的模式,官方推薦這種模式(當然,原因之一是血緣關系)。正是由于Spark開發之初就考慮到支持Mesos,因此,目前而言,Spark運行在Mesos上會比運行在YARN上更加靈活,更加自然。目前在Spark On Mesos環境中,用戶可選擇兩種調度模式之一運行自己的應用程序(可參考Andrew Xia的“Mesos Scheduling Mode on Spark”):

1)   粗粒度模式(Coarse-grained Mode):每個應用程序的運行環境由一個Dirver和若干個Executor組成,其中,每個Executor占用若干資源,內部可運行多個Task(對應多少個“slot”)。應用程序的各個任務正式運行之前,需要將運行環境中的資源全部申請好,且運行過程中要一直占用這些資源,即使不用,***程序運行結束后,回收這些資源。舉個例子,比如你提交應用程序時,指定使用5個executor運行你的應用程序,每個executor占用5GB內存和5個CPU,每個executor內部設置了5個slot,則Mesos需要先為executor分配資源并啟動它們,之后開始調度任務。另外,在程序運行過程中,mesos的master和slave并不知道executor內部各個task的運行情況,executor直接將任務狀態通過內部的通信機制匯報給Driver,從一定程度上可以認為,每個應用程序利用mesos搭建了一個虛擬集群自己使用。

2)   細粒度模式(Fine-grained Mode):鑒于粗粒度模式會造成大量資源浪費,Spark On Mesos還提供了另外一種調度模式:細粒度模式,這種模式類似于現在的云計算,思想是按需分配。與粗粒度模式一樣,應用程序啟動時,先會啟動executor,但每個executor占用資源僅僅是自己運行所需的資源,不需要考慮將來要運行的任務,之后,mesos會為每個executor動態分配資源,每分配一些,便可以運行一個新任務,單個Task運行完之后可以馬上釋放對應的資源。每個Task會匯報狀態給Mesos slave和Mesos Master,便于更加細粒度管理和容錯,這種調度模式類似于MapReduce調度模式,每個Task完全獨立,優點是便于資源控制和隔離,但缺點也很明顯,短作業運行延遲大。

Spark On YARN模式。這是一種最有前景的部署模式。但限于YARN自身的發展,目前僅支持粗粒度模式(Coarse-grained Mode)。這是由于YARN上的Container資源是不可以動態伸縮的,一旦Container啟動之后,可使用的資源不能再發生變化,不過這個已經在YARN計劃(具體參考:https://issues.apache.org/jira/browse/YARN-1197)中了。

總之,這三種分布式部署方式各有利弊,通常需要根據公司情況決定采用哪種方案。進行方案選擇時,往往要考慮公司的技術路線(采用Hadoop生態系統還是其他生態系統)、服務器資源(資源有限的話就不要考慮standalone模式了)、相關技術人才儲備等。

原文鏈接:http://dongxicheng.org/framework-on-yarn/apache-spark-comparing-three-deploying-ways/

責任編輯:彭凡 來源: 董的博客
相關推薦

2023-09-13 09:52:14

分布式鎖Java

2024-09-02 22:49:33

2009-07-03 18:32:18

JSP頁面跳轉

2014-07-30 17:10:38

LVS集群負載均衡

2019-11-04 08:38:45

分布式事務主流TCC

2024-10-29 21:17:25

2014-05-21 11:00:55

Windows Azu分布式部署

2022-05-26 10:27:41

分布式互聯網

2020-03-31 16:13:26

分布式事務方案TCC

2025-06-30 04:00:00

2016-09-18 22:47:57

分布式存儲GFSAFSLustre

2017-02-20 17:15:43

分布式存儲文件系統

2009-10-27 09:08:01

接入網方式

2018-07-17 08:14:22

分布式分布式鎖方位

2023-11-27 13:50:00

ELK日志架構

2015-10-15 14:05:51

StormSparkMapReduce

2021-07-09 05:49:53

分布式代碼算法

2017-07-04 16:18:15

分布式云應用導圖

2023-11-03 14:42:36

異步執行開發架構

2012-08-07 10:02:06

JSP
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99自拍视频| 欧产日产国产精品视频 | 亚洲高清在线观看 | 91欧美激情一区二区三区成人 | 精品久久99 | 国产一区久久久 | 毛片一区二区三区 | 国产成人精品一区二区三区视频 | 精品久久99 | 亚洲精品毛片av | 超级乱淫av片免费播放 | 日本电影韩国电影免费观看 | 91av在线视频观看 | 亚洲成人三区 | 91久久夜色精品国产网站 | 视频一区二区在线观看 | 精品一二区 | 欧美性生交大片免费 | 国产精品观看 | 亚洲国产精品一区二区第一页 | 在线三级电影 | 爱爱免费视频网站 | 精品亚洲一区二区三区 | 久久久久一区二区三区四区 | 伊人伊成久久人综合网站 | 欧美激情五月 | 亚洲一区二区三区免费视频 | 日韩中文字幕网 | 亚洲国产精品久久久久秋霞不卡 | 日韩成人免费av | 欧美精品一区二区三区四区五区 | 亚洲一区二区三区高清 | 四虎影院在线观看av | 日韩综合| 黄频视频| 国产精品激情在线 | 亚洲日本激情 | 成人欧美日韩一区二区三区 | 亚洲欧美视频在线观看 | 色综合视频在线 | 中文字幕动漫成人 |