第14课:Spark RDD解密
以下為Spark RDD解密課程學(xué)習(xí)心得:
????在介紹Spark RDD之前,先簡單的說下Hadoop MapReduce,它是基于數(shù)據(jù)流的方式進(jìn)行計算,從物理存儲上加載數(shù)據(jù),然后操作數(shù)據(jù),
最后寫入到物理存儲設(shè)備上,這樣的模式會產(chǎn)生大量的中間結(jié)果。
????MapReduce不適合場景:1.不適合大量迭代計算場景,2.交互式查詢(重點(diǎn)是:基于數(shù)據(jù)流的方式不能復(fù)用中間的計算結(jié)果)
而Spark RDD是基于工作集的方式,RDD名稱叫:彈性式分布式數(shù)據(jù)集。
????RDD的彈性式主要分為以下幾點(diǎn):
?????? 1.自動進(jìn)行內(nèi)存和磁盤數(shù)據(jù)的存儲切換;
?????? 2.基于Lineage的高效容錯;
???????3.Task如果失敗會自動進(jìn)行特定次數(shù)的重試;
?????? 4.Stage如果失敗會自動進(jìn)行特定次數(shù)的重試,而且只會計算失敗的分片;
?????? 5.Checkpoint和persist的容錯
?????? 6.數(shù)據(jù)調(diào)度彈性,和DAG、JobScheduler等無關(guān)
?????? 7.數(shù)據(jù)分片的高度彈性,可以手動設(shè)定分片的數(shù)量,設(shè)定分片函數(shù):repartition默認(rèn)進(jìn)行???? shuffle機(jī)制,可以選擇coalesce函數(shù)進(jìn)行分片設(shè)置
????RDD是數(shù)據(jù)分片的集合,分布在集群上,每個分片的計算邏輯是一樣的。
????RDD常規(guī)容錯方式:checkpoint和記錄數(shù)據(jù)更新方式
????RDD通過記錄更新數(shù)據(jù)方式為何高效?
????????1.RDD集合是不可變的,計算是Lazy模式
????????2.RDD的更新是粗粒度操作,寫操作可以是粗粒度也可以是細(xì)粒度模式
????RDD的缺陷:1.不支持細(xì)粒度的更新操作;
?????????????? 2.不支持增量迭代計算;
????
備注:
資料來源于:DT_大數(shù)據(jù)夢工廠(IMF傳奇行動絕密課程)-IMF
更多私密內(nèi)容,請關(guān)注微信公眾號:DT_Spark
如果您對大數(shù)據(jù)Spark感興趣,可以免費(fèi)聽由王家林老師每天晚上20:00開設(shè)的Spark永久免費(fèi)公開課,地址YY房間號:68917580
Life is short,you need to Spark.
轉(zhuǎn)載于:https://blog.51cto.com/18610086859/1771134
總結(jié)
以上是生活随笔為你收集整理的第14课:Spark RDD解密的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: svn 主干和分支项目代码更新与同步
- 下一篇: 线上使用zabbix报警脚本(含图片)