多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > 服務(wù)器 > spark內(nèi)核揭秘-10-RDD源碼分析

spark內(nèi)核揭秘-10-RDD源碼分析

來源:程序員人生   發(fā)布時(shí)間:2015-02-09 08:54:06 閱讀次數(shù):4057次

RDD的核心方法:






首先看1下getPartitions方法的源碼:


getPartitions返回的是1系列partitions的集合,即1個(gè)Partition類型的數(shù)組

我們就想進(jìn)入HadoopRDD實(shí)現(xiàn):


1、getJobConf():用來獲得job Configuration,獲得配置方式有clone和非clone方式,但是clone方式 是not thread-safe,默許是制止的,非clone方式可以從cache中獲得,如cache中沒有那就創(chuàng)建1個(gè)新的,然后再放到cache中

2、進(jìn)入 getInputFormcat(jobConf)方法:


3、進(jìn)入inputFormat.getSplits(jobConf, minPartitions)方法:


進(jìn)入FileInputFormcat類的getSplits方法:




5、進(jìn)入HadoopPartition:



而getDependencies表達(dá)是RDD之間的依賴關(guān)系,以下所示:


getDependencies返回的是依賴關(guān)系的1個(gè)Seq集合,里面的Dependency數(shù)組中的下劃線是類型的PlaceHolder

我們進(jìn)入ShuffledRDD類中的getDependencies方法:


我們進(jìn)入ShuffleDependency類:


每一個(gè)RDD都會(huì)具有計(jì)算的函數(shù),以下所示:


我們進(jìn)入HadoopMapPartitionsWithSplitRDD的 compute方法:


Compute方法是針對(duì)RDD的每一個(gè)Partition進(jìn)行計(jì)算的,其TaskContext參數(shù)的源碼以下:


getPreferredLocations是尋覓Partition的首選位置:


我們進(jìn)入NewHadoopRDD的getPreferredLocations:



其實(shí)RDD還有1個(gè)可選的分區(qū)策略:


Partitioner的源碼以下:





可以看出默許使用的是HashPartitioner,要注意key為Array的情況;

spark.default.parallelism必須要設(shè)置,否則會(huì)根據(jù)partitions數(shù)據(jù)來傳輸RDD,這樣也會(huì)很容易出現(xiàn)OOM


生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 一级欧美一级日韩 | 第一福利在线观看 | 亚洲aav | 性xxxxx视频 性xxxxx外性hd | 午夜在线播放 | 亚洲一区二区三区精品国产 | 亚洲欧美成人综合在线 | 亚洲日韩精品欧美一区二区 | α片毛片免费看 | 国产亚洲精品免费 | 成年人免费观看的视频 | 欧美精品videossex17 | 日韩精品一区二区三区在线观看l | 欧美一级毛片激情 | 免费网站在线播放 | 亚洲成a人片在线v观看 | 日韩精品片| 久久色网站| 国产女人在线视频 | 久久精品免观看国产成人 | 亚洲一区二区三区精品影院 | 久久久影院亚洲精品 | 性的小视频在线观看免费 | 91久久精品都在这里 | 国产精品亚洲精品日韩已满 | 欧美日韩亚 | 精品一区二区免费视频 | 亚洲影视先锋 | 国产精品性视频免费播放 | 成人国产在线24小时播放视频 | 午夜免费播放观看在线视频 | 亚洲资源在线播放 | 99精品国产成人a∨免费看 | 亚洲第一免费 | 秋霞福利| xxxx日| 能在线观看的一区二区三区 | 国产成人综合洲欧美在线 | 久久国产精品久久久久久 | 亚洲视频精品在线 | 69视频在线观看xxxxx |