雙value型別互動
key-value型別
action行動運算元
轉換運算元不觸發提交作業,完成作業中間過程處理,懶載入運算元,需要有**action運算元
**操作的時候才會真正觸發運算
map返回乙個新的rdd
,該rdd
由每乙個輸入元素經過func
函式轉化後組成
object spark`rdd`
}
object spark`rdd`
)//5、列印
rs`rdd`.foreach(println)
}}
object spark`rdd`
)//5、列印
rs`rdd`.foreach(println)
}}
flatmap(func
)
對集合中每個元素進行操作後再扁平化
object spark`rdd`
}
glom
將沒乙個分割槽形成乙個陣列,形成新的rdd
型別時rdd[array[t]]
object sparkrdd )}
}
groupby
按照傳入函式的返回值進行分組,將相同的key
對應的值放入乙個迭代器
def main(args: array[
string])
:unit
=
filter
返回乙個新的rdd
,該rdd
由經過func
函式計算後返回值為true
的輸入元素組成
object sparkrdd
}
distinct
對rdd
中的每個元素組進行去重
object sparkrdd
}
repartition(numpartitions
)
重分割槽,更具分割槽數,重新通過網路隨機洗牌所有資料
object sparkrdd
}
sortby(func
)
使用func
先對資料進行處理,按照處理後的資料比較結果排序
object sparkrdd
}
union
對源rdd
和引數rdd
求並集後返回乙個新的rdd
object sparkrdd
}
subtract
差集,去除兩個rdd
中相同的元素,不用的rdd
將保留下來
object sparkrdd
}
intersection
交集,對源rdd
和引數rdd
求交集後返回乙個新的rdd
object sparkrdd
}
groupbykey
groupbykey
也是對每個key進行操作,但是只生成乙個事件,將所有的資料在乙個rdd中進行操作
object sparkrdd
}
reducebykey
在乙個(k,v)的rdd
上呼叫,返回乙個(k,v)的rdd
,使用指定的reduce
函式,將相同的key
的值聚合到一起,reduce任務的個數可以通過第二個可選的引數來設定
object sparkrdd
}
sortbykey
在乙個(k,v)
的rdd
上呼叫,k必須實現ordered
介面,返回乙個按照key
的正序和倒序進行排序
object sparkrdd
}
join
在型別為(k,v)
和(k,w)
的rdd
上呼叫,返回乙個相同key
對應的所有元素對在一起的(k,(v,w))
的rdd
object sparkrdd
}
這類運算元會觸發**reducesparkcontext
提交job
**作業
通過func
函式聚合rdd
中的所有元素,先聚合分區內資料,再聚合分區間資料
object sparkrdd
}
collect
在驅動程式中,以陣列的形式返回資料集的所有元素
object sparkrdd
}
count
返回rdd
中的元素的個數
object sparkrdd
}
first
返回rdd中的第乙個元素
object sparkrdd
}
take
返回乙個由rdd
的前n個元素組成的陣列
object sparkrdd
}
takeordered
返回該rdd
排序後的前n個元素組成的陣列
def main(args: array[
string])
:unit
=
countbykey
針對(k,v)
型別的rdd
,返回乙個(k,int)
的map,表示每乙個key
對應的元素個數
object sparkrdd
}
spark運算元 五 action運算元
collect package com.doit.spark.demoday05 import org.apache.spark.sparkcontext author 向陽木 date 2020 09 22 22 19 description 將資料以陣列形式收集回driver端,資料按照分割槽編...
Spark運算元詳解
目錄 spark常用運算元詳解 3.getnumpartitions 4.partitions 5.foreachpartition 6.coalesce 7.repartition 8.union,zip,join 9.zipwithindex,zipwithuniqueid 未完待續.本文主要介...
spark運算元分類
transformation運算元 不觸發提交作業,完成作業中間處理過程 value資料型別的transformation運算元 輸入分割槽與輸出分割槽一對一型 輸入分割槽與輸出分割槽多對一型 輸入分割槽與輸出分割槽多對多型 輸出分割槽為輸入分割槽子集型 cache型 key value資料型別的t...