sparkcore的基本知識(shí)點(diǎn)

makeRdd的創(chuàng)建
RDD的創(chuàng)建
rdd的創(chuàng)建方式大致分為3種:從集合中創(chuàng)建rdd,從外部存儲(chǔ)恨搓,從其他rdd創(chuàng)建

從集合中創(chuàng)建
分為parallelize和makeRdd的2種方式痹换,異同點(diǎn)在于makeRdd還可以指定數(shù)據(jù)的分區(qū)位置
val rdd = sc.parallelize(Array(1,2,3,4,5,6,7,8))

val rdd = sc.makeRdd(Array(1,2,3,4,5,6,7,8))

val seq = List((1, List("slave01")),| (2, List("slave02")))
val guigu3 = sc.makeRDD(seq)
//scala>guigu3.preferredLocations(guigu3.partitions(1))
//res26: Seq[String] = List(slave02)

TransFormation
def map[U:classTag](f: T => U)
一對(duì)一轉(zhuǎn)換

def filter(f: T=>Boolean): RDD[T]
傳入一個(gè)Boolean的方法蝗羊,過濾數(shù)據(jù)

def flatmap[U:ClassTag](f: T => TraversableOnce): RDD[U]
一對(duì)多 并且將多壓平

def mapPartition[U:ClassTag](f:Iterator[T] => Iterator[U],preservesPartitioning: Boolean = false):RDD[U]
對(duì)于一個(gè)分區(qū)的數(shù)據(jù)執(zhí)行一個(gè)函數(shù),性能比map要高

def mapPartitionsWithIndex[U:ClassTag](f:(Int,Iterator[T])=>Iterator[U],preservesPartitioning:Boolean = false):RDD[U]
指定某一個(gè)分區(qū)

def sample(withReplacement:Boolean,fraction:Double,seed: Long = Utils.random.nextLong):RDD[T]
有放回和無放回抽樣

def union(other: RDD[T]): RDD[T]
聯(lián)合一個(gè)RDD统翩,返回組合的RDD

def intersection(other: RDD[T]):RDD[T]
rdd求交集

def distinct():RDD[T]
去重

def partitionBy(partitioner: Partitioner):RDD[(k,v)]
用提供的分區(qū)器分區(qū)

def reduceByKey(func:(v,v) => v):RDD[(k,v)]
根據(jù)Key進(jìn)行聚合 預(yù)聚合

def groupByKey(partitioner:Partitioner):RDD[(k,Iterable[v])]
將key相同的value聚合在一起

def combinByKey[C]( createCombiner:V => C, mergeValue:(C,V) => C, mergeCombiners:(C,C) => C, numPartitions: Int):RDD[(K,C)]

def aggregateByKey[U:ClassTag](zeroValue:U,partitioner:Partitioner)(seqOp:(U,V)=>U,combOp:(U,U)=>U):RDD[(k,u)]
是CombineByKey的簡(jiǎn)化版仙蚜,可以通過zeroValue直接提供一個(gè)初始值

def foldBykey(zeroValue:V,partitioner:Partitioner)(func:(v,v)=>v):RDD(K,V))
該函數(shù)為aggeregateByKey的簡(jiǎn)化版,seqOp和combOp一樣,相同

def sortByKey
根據(jù)Key來進(jìn)行排序厂汗,如果key目前不支持排序委粉,需求with Order接口,實(shí)現(xiàn)compare方法娶桦,告訴spark key的大小判定

def sortBy[K](f:(T)=>K,ascending:Boolean=true,numPartitons:Int = this.partitions.length):RDD[(K,V)]
根據(jù)f函數(shù)提供可以排序的key

def join[W](other:RDD[(K,W)],partition:Partitioner):RDD[K,(V,W)]
連接二個(gè)RDD的數(shù)據(jù)

def cogroup[W](other:RDD[(K,W)],partitioner:Partitioner):RDD[K,(Iterable[V],Iterable[W]))]
分別將相同key的數(shù)據(jù)聚集在一起

def cartesian[U:ClassTag](other:RDD[U]):RDD[(T,U)]
做笛卡爾積 n*m

def pipe(command:String):RDD[]String
執(zhí)行外部腳本

def coalesce(numPartitions:Int,shuffle:Boolean = false,partitionCoalescer:Option[PartitionCoalescer] = Option.empty)(impliciatord:Order[T] = null): RDD[T]
縮減分區(qū)數(shù)贾节,用于大數(shù)據(jù)集過濾后。提高小數(shù)據(jù)集的執(zhí)行效率

def repartition(numPartitions:Int)(implicit ord: Ordering[T] = null): RDD[T]
重新分區(qū)

def glom():RDD[Array[T]]

def mapValues[U](f: V => U):RDD[(K,U)]
對(duì)于kv結(jié)構(gòu)RDD,只處理value

def subtracte(other: RDD[T]): RDD[T]
去掉和other重復(fù)的元素

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末趟紊,一起剝皮案震驚了整個(gè)濱河市氮双,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌霎匈,老刑警劉巖戴差,帶你破解...
    沈念sama閱讀 219,110評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異铛嘱,居然都是意外死亡暖释,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門墨吓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來球匕,“玉大人,你說我怎么就攤上這事帖烘×敛埽” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵秘症,是天一觀的道長(zhǎng)照卦。 經(jīng)常有香客問我,道長(zhǎng)乡摹,這世上最難降的妖魔是什么役耕? 我笑而不...
    開封第一講書人閱讀 58,881評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮聪廉,結(jié)果婚禮上瞬痘,老公的妹妹穿的比我還像新娘故慈。我一直安慰自己,他們只是感情好框全,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評(píng)論 6 392
  • 文/花漫 我一把揭開白布察绷。 她就那樣靜靜地躺著,像睡著了一般竣况。 火紅的嫁衣襯著肌膚如雪克婶。 梳的紋絲不亂的頭發(fā)上筒严,一...
    開封第一講書人閱讀 51,698評(píng)論 1 305
  • 那天丹泉,我揣著相機(jī)與錄音,去河邊找鬼鸭蛙。 笑死摹恨,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的娶视。 我是一名探鬼主播晒哄,決...
    沈念sama閱讀 40,418評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼肪获!你這毒婦竟也來了寝凌?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,332評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤孝赫,失蹤者是張志新(化名)和其女友劉穎较木,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體青柄,經(jīng)...
    沈念sama閱讀 45,796評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡伐债,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評(píng)論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了致开。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片峰锁。...
    茶點(diǎn)故事閱讀 40,110評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖双戳,靈堂內(nèi)的尸體忽然破棺而出虹蒋,到底是詐尸還是另有隱情,我是刑警寧澤飒货,帶...
    沈念sama閱讀 35,792評(píng)論 5 346
  • 正文 年R本政府宣布魄衅,位于F島的核電站,受9級(jí)特大地震影響膏斤,放射性物質(zhì)發(fā)生泄漏徐绑。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評(píng)論 3 331
  • 文/蒙蒙 一莫辨、第九天 我趴在偏房一處隱蔽的房頂上張望傲茄。 院中可真熱鬧毅访,春花似錦、人聲如沸盘榨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽草巡。三九已至守呜,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間山憨,已是汗流浹背查乒。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留郁竟,地道東北人玛迄。 一個(gè)月前我還...
    沈念sama閱讀 48,348評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像棚亩,于是被迫代替她去往敵國(guó)和親蓖议。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評(píng)論 2 355

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