rdd的概念以及生成rdd的兩種方式


什么是RDD
RDD(Resilient Distributed Dataset)叫做分布式數(shù)據(jù)集,是Spark中最基本的數(shù)據(jù)抽象恕刘,
它代表一個(gè)不可變香追、可分區(qū)固额、里面的元素可并行計(jì)算的集合。
RDD具有數(shù)據(jù)流模型的特點(diǎn):自動(dòng)容錯(cuò)伏钠、位置感知性調(diào)度和可伸縮性钩杰。
RDD允許用戶在執(zhí)行多個(gè)查詢時(shí)顯式地將工作集緩存在內(nèi)存中,
后續(xù)的查詢能夠重用工作集苛萎,這極大地提升了查詢速度奠伪。

RDD的屬性
1、一組分片(Partition)首懈,即數(shù)據(jù)集的基本組成單位绊率。
對于RDD來說,每個(gè)分片都會(huì)被一個(gè)計(jì)算任務(wù)處理究履,并決定并行計(jì)算的粒度滤否。
用戶可以在創(chuàng)建RDD時(shí)指定RDD的分片個(gè)數(shù),如果沒有指定最仑,那么就會(huì)采用默認(rèn)值藐俺。
默認(rèn)值就是程序所分配到的CPU Core的數(shù)目。

2泥彤、一個(gè)計(jì)算每個(gè)分區(qū)的函數(shù)欲芹。
Spark中RDD的計(jì)算是以分片為單位的,每個(gè)RDD都會(huì)實(shí)現(xiàn)compute函數(shù)以達(dá)到這個(gè)目的吟吝。
compute函數(shù)會(huì)對迭代器進(jìn)行復(fù)合菱父,不需要保存每次計(jì)算的結(jié)果。

3剑逃、RDD之間的依賴關(guān)系浙宜。
RDD的每次轉(zhuǎn)換都會(huì)生成一個(gè)新的RDD,所以RDD之間就會(huì)形成類似于流水線一樣的前后依賴關(guān)系蛹磺。
在部分分區(qū)數(shù)據(jù)丟失時(shí)粟瞬,Spark可以通過這個(gè)依賴關(guān)系重新計(jì)算丟失的分區(qū)數(shù)據(jù),而不是對RDD的所有分區(qū)進(jìn)行重新計(jì)算萤捆。

4裙品、一個(gè)Partitioner,即RDD的分片函數(shù)俗或。
當(dāng)前Spark中實(shí)現(xiàn)了兩種類型的分片函數(shù)市怎,一個(gè)是基于哈希的HashPartitioner,
另外一個(gè)是基于范圍的RangePartitioner蕴侣。
只有對于key-value的RDD焰轻,才會(huì)有Partitioner,
非key-value的RDD的Parititioner的值是None昆雀。
Partitioner函數(shù)不但決定了RDD本身的分片數(shù)量辱志,也決定了parent RDD Shuffle輸出時(shí)的分片數(shù)量。

5狞膘、一個(gè)列表揩懒,存儲(chǔ)存取每個(gè)Partition的優(yōu)先位置(preferred location)。
對于一個(gè)HDFS文件來說挽封,這個(gè)列表保存的就是每個(gè)Partition所在的塊的位置已球。
按照“移動(dòng)數(shù)據(jù)不如移動(dòng)計(jì)算”的理念,Spark在進(jìn)行任務(wù)調(diào)度的時(shí)候辅愿,會(huì)盡可能地將計(jì)算任務(wù)分配到其所要處理數(shù)據(jù)塊的存儲(chǔ)位置智亮。

生成rdd的兩種方式

#cd training/spark/bin
# ./spark-shell --master spark://hadoop21:7077 --executor-memory 512m --total-executor-cores 2
scala> val rdd1 = sc.textFile("hdfs://192.168.56.21:9000/wc")
rdd1: org.apache.spark.rdd.RDD[String] = hdfs://192.168.56.21:9000/wc MapPartitionsRDD[1] at textFile at <console>:24

scala> rdd1.collect
res0: Array[String] = Array(hello tom, hello jerry, hello tom, hello kitty, hello tom, hello jerry, hello tom, hello jerry, hello lilei, hello hanmeimei, hello tom, hello tom, hello jerry, hello tom, hello tom, hello jerry, hello lilei, hello hanmeimei, hello tom, hello tom, hello jerry, hello tom)

scala> val rdd2 = sc.parallelize(Array(1,2,3,4,5,6,7,8))
rdd2: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[2] at parallelize at <console>:24

scala> rdd2.collect
res1: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市点待,隨后出現(xiàn)的幾起案子阔蛉,更是在濱河造成了極大的恐慌,老刑警劉巖癞埠,帶你破解...
    沈念sama閱讀 210,978評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件状原,死亡現(xiàn)場離奇詭異,居然都是意外死亡苗踪,警方通過查閱死者的電腦和手機(jī)颠区,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來通铲,“玉大人毕莱,你說我怎么就攤上這事÷幔” “怎么了央串?”我有些...
    開封第一講書人閱讀 156,623評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長碗啄。 經(jīng)常有香客問我质和,道長,這世上最難降的妖魔是什么稚字? 我笑而不...
    開封第一講書人閱讀 56,324評(píng)論 1 282
  • 正文 為了忘掉前任饲宿,我火速辦了婚禮,結(jié)果婚禮上胆描,老公的妹妹穿的比我還像新娘瘫想。我一直安慰自己,他們只是感情好昌讲,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評(píng)論 5 384
  • 文/花漫 我一把揭開白布国夜。 她就那樣靜靜地躺著,像睡著了一般短绸。 火紅的嫁衣襯著肌膚如雪车吹。 梳的紋絲不亂的頭發(fā)上筹裕,一...
    開封第一講書人閱讀 49,741評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音窄驹,去河邊找鬼朝卒。 笑死,一個(gè)胖子當(dāng)著我的面吹牛乐埠,可吹牛的內(nèi)容都是我干的抗斤。 我是一名探鬼主播,決...
    沈念sama閱讀 38,892評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼丈咐,長吁一口氣:“原來是場噩夢啊……” “哼瑞眼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起棵逊,我...
    開封第一講書人閱讀 37,655評(píng)論 0 266
  • 序言:老撾萬榮一對情侶失蹤伤疙,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后歹河,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體掩浙,經(jīng)...
    沈念sama閱讀 44,104評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年秸歧,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了厨姚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,569評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡键菱,死狀恐怖谬墙,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情经备,我是刑警寧澤拭抬,帶...
    沈念sama閱讀 34,254評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站侵蒙,受9級(jí)特大地震影響造虎,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜纷闺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評(píng)論 3 312
  • 文/蒙蒙 一算凿、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧犁功,春花似錦氓轰、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春靴庆,著一層夾襖步出監(jiān)牢的瞬間时捌,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評(píng)論 1 264
  • 我被黑心中介騙來泰國打工撒穷, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留匣椰,地道東北人裆熙。 一個(gè)月前我還...
    沈念sama閱讀 46,260評(píng)論 2 360
  • 正文 我出身青樓端礼,卻偏偏與公主長得像,于是被迫代替她去往敵國和親入录。 傳聞我的和親對象是個(gè)殘疾皇子蛤奥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容