成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何解析Spark和MapReduce任務(wù)計(jì)算模型

本篇文章為大家展示了如何解析Spark和MapReduce任務(wù)計(jì)算模型,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

成都創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),先為察雅等服務(wù)建站,察雅等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為察雅企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

從整體上看,無(wú)論是Spark還是MapReduce都是多進(jìn)程模型。如,MapReduce是由很多MapTask、ReduceTask等進(jìn)程級(jí)別的實(shí)例組成的;Spark是由多個(gè)worker、executor等進(jìn)程級(jí)別實(shí)例組成。但是當(dāng)細(xì)分到具體的處理任務(wù),MapReduce仍然是多進(jìn)程級(jí)別。而Spark處理任務(wù)的單位task是運(yùn)行在executor中的線程,是多線程級(jí)別的。

對(duì)于多進(jìn)程,我們可以很容易控制它們能夠使用的資源,并且一個(gè)進(jìn)程的失敗一般不會(huì)影響其他進(jìn)程的正常運(yùn)行,但是進(jìn)程的啟動(dòng)和銷毀會(huì)占用很多時(shí)間,同時(shí)該進(jìn)程申請(qǐng)的資源在進(jìn)程銷毀時(shí)也會(huì)釋放,這就造成了對(duì)資源的頻繁申請(qǐng)和釋放也是很影響性能的,這也是MapReduce廣為詬病的原因之一。
對(duì)于MapReduce處理任務(wù)模型,有如下特點(diǎn):

1.每個(gè)MapTask、ReduceTask都各自運(yùn)行在一個(gè)獨(dú)立的JVM進(jìn)程中,因此便于細(xì)粒度控制每個(gè)task占用的資源(資源可控性好)
2.每個(gè)MapTask/ReduceTask都要經(jīng)歷申請(qǐng)資源 -> 運(yùn)行task -> 釋放資源的過(guò)程。強(qiáng)調(diào)一點(diǎn):每個(gè)MapTask/ReduceTask運(yùn)行完畢所占用的資源必須釋放,并且這些釋放的資源不能夠?yàn)樵撊蝿?wù)中其他task所使用

3.可以通過(guò)JVM重用在一定程度上緩解MapReduce讓每個(gè)task動(dòng)態(tài)申請(qǐng)資源且運(yùn)行完后馬上釋放資源帶來(lái)的性能開(kāi)銷

但是JVM重用并不是多個(gè)task可以并行運(yùn)行在一個(gè)JVM進(jìn)程中,而是對(duì)于同一個(gè)job,一個(gè)JVM上最多可以順序執(zhí)行的task數(shù)目,這個(gè)需要配置參數(shù)mapred.job.reuse.jvm.num.tasks,默認(rèn)1。

對(duì)于多線程模型的Spark正好與MapReduce相反,這也決定了Spark比較適合運(yùn)行低延遲的任務(wù)。在Spark中處于同一節(jié)點(diǎn)上的task以多線程的方式運(yùn)行在一個(gè)executor進(jìn)程中,構(gòu)建了一個(gè)可重用的資源池,有如下特點(diǎn):

1.每個(gè)executor單獨(dú)運(yùn)行在一個(gè)JVM進(jìn)程中,每個(gè)task則是運(yùn)行在executor中的一個(gè)線程。很顯然線程線程級(jí)別的task啟動(dòng)速度更快
2.同一節(jié)點(diǎn)上所有task運(yùn)行在一個(gè)executor中,有利于共享內(nèi)存。比如通過(guò)Spark的廣播變量,將某個(gè)文件廣播到executor端,那么在這個(gè)executor中的task不用每個(gè)都拷貝一份處理,而只需處理這個(gè)executor持有的共有文件即可
3.executor所占資源不會(huì)在一些task運(yùn)行結(jié)束后立即釋放掉,可連續(xù)被多批任務(wù)使用,這避免了每個(gè)任務(wù)重復(fù)申請(qǐng)資源帶來(lái)的開(kāi)銷

但是多線程模型有一個(gè)缺陷:同一節(jié)點(diǎn)的一個(gè)executor中多個(gè)task很容易出現(xiàn)資源征用。畢竟資源分配最細(xì)粒度是按照executor級(jí)別的,無(wú)法對(duì)運(yùn)行在executor中的task做細(xì)粒度控制。這也導(dǎo)致在運(yùn)行一些超大數(shù)據(jù)量的任務(wù)并且資源比較有限時(shí),運(yùn)行不太穩(wěn)定。相比較而言,MapReduce更有利于這種大任務(wù)的平穩(wěn)運(yùn)行。

上述內(nèi)容就是如何解析Spark和MapReduce任務(wù)計(jì)算模型,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享文章:如何解析Spark和MapReduce任務(wù)計(jì)算模型
分享網(wǎng)址:http://jinyejixie.com/article20/ggicjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、云服務(wù)器、軟件開(kāi)發(fā)、企業(yè)建站、面包屑導(dǎo)航、域名注冊(cè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司