Spark:Scala実装アクション
1489 ワード
コードは次のとおりです.
package cn.spark.study.core
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
object ActionOperation {
def main(args: Array[String]){
//reduce()
//collect()
//count()
take()
//saveAsTextFile()
//countByKey()
//foreach
}
def reduce(){
val conf =new SparkConf().setAppName("reduce").setMaster("local");
val sc = new SparkContext(conf);
val numberArray = Array(1,2,3,4,5,6,7,8,9,10);
val numbers = sc.parallelize(numberArray, 1);
val sum = numbers.reduce(_+_);
println(sum)
}
def collect(){
val conf =new SparkConf().setAppName("reduce").setMaster("local");
val sc = new SparkContext(conf);
val numberArray = Array(1,2,3,4,5,6,7,8,9,10);
val numbers = sc.parallelize(numberArray, 1);
val doubleNumbers = numbers.map(num =>num *2)
val doubleNumberArray = doubleNumbers.collect()
for(numnum *2)
doubleNumbers.saveAsTextFile("E://BigData//sparkdata//doule_number_scala")
}
def countByKey(){
val conf = new SparkConf().setAppName("countByKey").setMaster("local");
val sc = new SparkContext(conf);
val studentList = Array(Tuple2("class1","leo"),Tuple2("class2","jack"),Tuple2("class1","tom"),Tuple2("class2","mike"))
val students = sc.parallelize(studentList, 1)
val studentCounts = students.countByKey();
println(studentCounts)
}
}