1.5.1.4 Spark算子詳解(總覽)

總目錄:http://www.itdecent.cn/p/e406a9bc93a9

Hadoop - 子目錄:http://www.itdecent.cn/p/9428e443b7fd

算子的分類

從大方向來(lái)說(shuō),算子有兩種類型,對(duì)應(yīng)著sparkRDD的兩種操作--轉(zhuǎn)換類型操作和動(dòng)作類型操作。也就是:

  • Transformation
    轉(zhuǎn)換類型操作,這種變換并不觸發(fā)提交作業(yè),完成作業(yè)中間過(guò)程處理。
    Transformation算子是延遲計(jì)算的,也就是說(shuō)從一個(gè)RDD 轉(zhuǎn)換生成另一個(gè) RDD 的轉(zhuǎn)換操作不是馬上執(zhí)行,需要等到有 Action 操作的時(shí)候才會(huì)真正觸發(fā)運(yùn)算。

  • Action
    動(dòng)作類型操作,這類算子會(huì)觸發(fā) SparkContext 提交 Job 作業(yè)。
    Action 算子會(huì)觸發(fā) Spark 提交作業(yè),并將數(shù)據(jù)輸出 Spark系統(tǒng)。

如果在細(xì)致劃分一下,轉(zhuǎn)換類型算子由兩種類型:針對(duì)于value數(shù)據(jù)的Transformation算子和針對(duì)K-V數(shù)據(jù)的Transformation算子。


Value數(shù)據(jù)類型的Transformation算子

輸入分區(qū)與輸出分區(qū)一對(duì)一型
  • map算子
  • flatMap算子
  • mapPartitions算子
  • glom算子
輸入分區(qū)與輸出分區(qū)多對(duì)一型
  • union算子
  • cartesian算子
輸入分區(qū)與輸出分區(qū)多對(duì)多型
  • grouBy算子
輸出分區(qū)為輸入分區(qū)子集型
  • filter算子
  • distinct算子
  • subtract算子
  • sample算子
  • takeSample算子
Cache型
  • cache算子
  • persist算子

Key-Value數(shù)據(jù)類型的Transfromation算子

輸入分區(qū)與輸出分區(qū)一對(duì)一
  • mapValues算子
對(duì)單個(gè)RDD或兩個(gè)RDD聚集
單個(gè)RDD聚集
  • combineByKey算子
  • reduceByKey算子
  • partitionBy算子
兩個(gè)RDD聚集
  • Cogroup算子
連接
  • join算子
  • leftOutJoin和 rightOutJoin算子

Action算子

無(wú)輸出
  • foreach算子
HDFS
  • saveAsTextFile算子
  • saveAsObjectFile算子
聚合算子
  • collect算子
  • collectAsMap算子
  • reduceByKeyLocally算子
  • lookup算子
  • count算子
  • top算子
  • reduce算子
  • fold算子
  • aggregate算子
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容