載入外部資料集
val rddtext=sc.textfile("hellospark.txt")
val:變數值不可修改,一旦分配不能重新指向別的值
var:分配後,可以指向型別相同的值
val lines=sc.textfile("hellospark.txt")lines=sc.textfile("hellospark.txt")
var lines=sc.textfile("hellospark.txt")
lines=sc.textfile("hellospark2.txt")
lines.filter(line=>line.contains("world"))定義乙個匿名函式,接受乙個引數line,使用line這個string型別變數上的contains方法,並且返回結果。line的型別不需要指定,能夠推斷出來。
transformations(轉換),從之前的rdd
構建乙個新的rdd,像map()和filter()
val lines=sc.parallelize(array("hello","spark","hello","world","!"))lines.foreach(println)
hello
spark
hello
world
!
val lines2=lines.map(word=>(word,1))lines2.foreach(println)
(hello,1)
(spark,1)
(hello,1)
(world,1)
(!,1)
inputs.foreach(println)rdds支援數學集合的計算,例如並集,交集計算。hello !
hello spark
hello world
val lines=inputs.flatmap(line=>line.split(" "))
lines.foreach(print)
hellosparkhelloworldhello! #拆開打散壓扁了
val rdd1=sc.parallelize(array("caffe","caffe","panda","monkey","tea"))val rdd2=sc.parallelize(array("caffe","monkey","kitty"))
val rdd_distinct=rdd1.distinct()rdd_distinct.foreach(println)
monkey
coffe
panda
tea
rdd_union=rdd1.union(rdd2)cafferdd_union.foreach(println)
caffe
panda
monkey
teacaffe
monkey
kitty
val rdd_inter=rdd1.intersection(rdd2)rdd_inter.foreach(println)
monkey
coffe
val rdd_sub=rdd1.subtract(rdd2)rdd_sub.foreach(println)
teapanda
Spark學習鏈結 Scala
spark初學者學習鏈結 1.scala 官方 2.spark官方指南 3.spark 機器學習庫官方指南 4.spark rdd程式設計指南 2中也有 官方 5.spark dataframe dataset程式設計指南 2中也有 6.pyspark程式設計指南 7.工具書 learning sp...
Scala學習筆記
scala學習筆記 一.scala中集合的常用方法 首先定義兩個陣列集合,用於測試 scala val arr1 array 1,2,3,4 arr1 array int array 1,2,3,4 scala val arr2 array 3,4,5,6 arr2 array int array ...
Scala學習筆記
1 閉包 var a 3 var addfun x int x a var b addfun 10 println b addfun 就是個和物件無關的函式,區域性變數,使用方法和函式一樣,但是好像不推薦這種寫法。2 類的建立,簡單使用abstract class bparent 構造函式引數會自動...