Spark--高效的分布式計算架構ppt課件.ppt

Spark--高效的分布式計算架構ppt課件.ppt

ID:59139388

大小:487.00 KB

頁數:40頁

時間:2020-09-25

Spark--高效的分布式計算架構ppt課件.ppt_第1頁
Spark--高效的分布式計算架構ppt課件.ppt_第2頁
Spark--高效的分布式計算架構ppt課件.ppt_第3頁
Spark--高效的分布式計算架構ppt課件.ppt_第4頁
Spark--高效的分布式計算架構ppt課件.ppt_第5頁
資源描述:

《Spark--高效的分布式計算架構ppt課件.ppt》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。

1、spark----高效的分布式計算架構----何奇14112852181Lifeisshort,youneedspark!Lifeisshort,youneedspark!目標Scope(解決什么問題)在大規(guī)模的特定數據集上的迭代運算或重復查詢檢索官方定義:aMapReduce-likeclustercomputingframeworkdesignedforlow-latencyinterativejobsandinteractiveusefromaninterpreter目的理解首先,MapReduce-like是說架構上和多數分布式計算框架類似,Spar

2、k有分配任務的主節(jié)點(Driver)和執(zhí)行計算的工作節(jié)點(Worker)其次,Low-latency基本上應該是源于Worker進程較長的生命周期,可以在一個Job過程中長駐內存執(zhí)行Task,減少額外的開銷然后對interative重復迭代類查詢運算的高效支持,是Spark的出發(fā)點了。最后它提供了一個基于Scala的Shell方便交互式的解釋執(zhí)行任務小小示意圖那是如何實現(xiàn)的?核心思路或架構:RDD:Spark的核心概念是RDD(resilientdistributeddataset),指的是一個只讀的,可分區(qū)的分布式數據集,這個數據集的全部或部分可以緩存在內

3、存中,在多次計算間重用。RDD--分布式彈性數據集可以把數據集保持在內存中,而不是在磁盤中,這樣每次計算只需要從內存中讀取數據,而不是通過IO讀取磁盤,跨過了系統(tǒng)IO瓶頸,大大節(jié)省了數據傳輸時間.Scala語言的簡潔的特點,所以,Spark非常合適做機器學習的工作中頻繁的迭代計算.RDD可以從本地數據集中通過輸入轉換產生,也可以使用已保存的RDD,也可以從別的RDD轉換而來,需要使用時,可以把RDD緩存在內存中(如果內存不夠大,會自動保存到本地).RDD通過血統(tǒng)來實現(xiàn)容錯機制,每一次轉換,系統(tǒng)會保存轉換日志,如果RDD出現(xiàn)故障,系統(tǒng)會根據轉換日志重建RDD.

4、還有呢----血統(tǒng)Lineage:利用內存加快數據加載在眾多的其它的In-Memory類數據庫或Cache類系統(tǒng)中也有實現(xiàn),Spark的主要區(qū)別在于它處理分布式運算環(huán)境下的數據容錯性(節(jié)點實效/數據丟失)問題時采用的方案。為了保證RDD中數據的魯棒性,RDD數據集通過所謂的血統(tǒng)關系(Lineage)記住了它是如何從其它RDD中演變過來的。相比其它系統(tǒng)的細顆粒度的內存數據更新級別的備份或者LOG機制,RDD的Lineage記錄的是粗顆粒度的特定數據變換(Transformation)操作(filter,map,joinetc.)行為。當這個RDD的部分分區(qū)數據

5、丟失時,它可以通過Lineage獲取足夠的信息來重新運算和恢復丟失的數據分區(qū)。這種粗顆粒的數據模型,限制了Spark的運用場合,但同時相比細顆粒度的數據模型,也帶來了性能的提升。適用領域和細節(jié)總之,Spark的核心思路就是將數據集緩存在內存中加快讀取速度,同時用lineage關聯(lián)的RDD以較小的性能代價保證數據的魯棒性。正如其目標scope,Spark適用于需要多次操作特定數據集的應用場合。需要反復操作的次數越多,所需讀取的數據量越大,受益越大,數據量小但是計算密集度較大的場合,受益就相對較小。快在哪里?使用內存緩存數據集快在以下幾個方面:首先是磁盤IO,其

6、次數據的序列化和反序列化的開銷也節(jié)省了,最后相對其它內存數據庫系統(tǒng),粗顆粒度的內存管理機制減小了數據容錯的代價(如典型的數據備份復制機制)--------------------前面也有提到!HadoopVs.Spark適用范圍大比拼1.HadoopVs.SparkHadoop/MapReduce和Spark最適合的都是做離線型的數據分析,但Hadoop特別適合是單次分析的數據量“很大”的情景,而Spark則適用于數據量不是很大的情景。這兒所說的“很大”,是相對于整個集群中的內存容量而言的,因為Spark是需要將數據HOLD在內存中的。一般的,1TB以下的數

7、據量都不能算很大,而10TB以上的數據量都是算“很大”的。比如說,20個節(jié)點的一個集群(這樣的集群規(guī)模在大數據領域算是很小的了),每個節(jié)點64GB內存(不算很小,但也不能算大),共計1.28TB。讓這樣規(guī)模的一個集群把500GB左右的數據HOLD在內存中還是很輕松的。這時候,用Spark的執(zhí)行速度都會比Hadoop快,畢竟在MapReduce過程中,諸如spill等這些操作都是需要寫磁盤的。大數據的“電光石火”這兒有2點需要提一下:1)一般情況下,對于中小互聯(lián)網和企業(yè)級的大數據應用而言,單次分析的數量都不會“很大”,因此可以優(yōu)先考慮使用Spark,特別是當S

8、park成熟了以后(Hadoop已經出到2.5了,而

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。