Spark運算元:RDD行動Action操作學習–countByKey、foreach、sortBy
package chen
import org.apache.spark._
object rdd_test {
System.setProperty ("hadoop.home.dir", "C:\\hadoop_home\\")
def main(args: Array[String]) {
/*
* countByKey for foreach sortBy 學習
*
*/
val sparkConf = new SparkConf().setMaster("local").setAppName("rdd")
val sc = new SparkContext(sparkConf)
val rdd1 = sc.makeRDD(Array(("A", 0), ("A", 2), ("B", 1), ("B", 2), ("B", 3)))
rdd1.foreach(println(_))
/*
(A,0)
(A,2)
(B,1)
(B,2)
(B,3)
*/
for (elem <- rdd1.countByKey) {
println(elem)
}
/*
(B,3)
(A,2)
*/
var cnt = sc.accumulator(0)
val rdd2 = sc.makeRDD(1 to 10,2)
rdd2.foreach(println(_)) //輸出: 1 2 3 4 5 6 7 8 9 10
rdd2.foreach(x => cnt += x)
println(cnt) //55
val rdd3 = sc.makeRDD(Seq(3,6,7,1,2,0),2)
rdd3.sortBy(x => x).collect.foreach(println(_)) // 0, 1, 2, 3, 6, 7 預設升序
rdd3.sortBy(x => x, false).collect.foreach(println(_)) // 7, 6, 3, 2, 1, 0 降序
//RDD[K,V]型別
//按照kye來排序
rdd1.sortBy(x=>x).collect().foreach(println(_))
//按照value的升序排列,false就降序
rdd1.sortBy(x=>x._2, true).collect().foreach(println(_))
/*
(A,0)
(B,1)
(A,2)
(B,2)
(B,3)
*/
}
}
相關文章
- 【Spark篇】---Spark中Action運算元Spark
- Spark運算元:RDD基本轉換操作map、flatMapSpark
- Spark----RDD運算元分類 DAGSpark
- 圖解Spark排序運算元sortBy的核心原始碼圖解Spark排序原始碼
- Spark RDD運算元(八)mapPartitions, mapPartitionsWithIndexSparkAPPIndex
- 【Spark Java API】Action(4)—sortBy、taSparkJavaAPI
- spark RDD運算元(五)之鍵值對聚合操作combineByKeySpark
- spark RDD textFile運算元 分割槽數量詳解Spark
- spark學習筆記--RDD鍵對操作Spark筆記
- spark學習筆記--RDDSpark筆記
- Spark運算元:統計RDD分割槽中的元素及數量Spark
- spark-運算元-分割槽運算元Spark
- Spark學習(二)——RDD基礎Spark
- Spark Basic RDD 操作示例Spark
- 【Spark Java API】Action(3)—foreach、fSparkJavaAPI
- 【Spark篇】---Spark中控制運算元Spark
- Spark運算元篇 --Spark運算元之aggregateByKey詳解Spark
- Spark運算元篇 --Spark運算元之combineByKey詳解Spark
- 【Spark篇】---SparkStreaming運算元操作transform和updateStateByKeySparkORM
- 【Spark篇】---Spark中transformations運算元二SparkORM
- 大資料學習—Spark核心概念RDD大資料Spark
- Spark常用Transformations運算元(一)SparkORM
- Spark常用Transformations運算元(二)SparkORM
- Spark效能調優-RDD運算元調優篇(深度好文,面試常問,建議收藏)Spark面試
- 【Spark篇】---SparkStreaming中運算元中OutPutOperator類運算元Spark
- Spark開發-Action操作Spark
- 【Spark篇】---Spark中Transformations轉換運算元SparkORM
- RDD轉換操作運算元 --- zip(k-v)、join(k)、cogroup(k)、lookup(k)
- spark一些常用運算元Spark
- Spark開發-spark執行原理和RDDSpark
- spark RDD的學習,filter函式的學習,split函式的學習SparkFilter函式
- 深度學習運算元優化-FFT深度學習優化FFT
- Python學習:運算元據庫Python
- 大資料教程:Transformation和Action運算元演示大資料ORM
- Spark RDD APISparkAPI
- spark-RDDSpark
- Flink -- Operator操作運算元
- Spark RDD使用詳解--RDD原理Spark