0
並列タスクと順次タスクの時間を確認したいと思います。Apache SparkとScalaの並列実行時間と順次実行時間を測定するには
あなたは私のコードを以下に見つけるでしょうが、並列タスクは連続した時間よりも時間がかかります。どうすれば解決できますか?私の主な目的は、Sparkコンテキストを使用して並列実行を達成することです:
object PrlAndSeqCheck {
def main(args: Array[String]): Unit = {
prlFunction()
seqFunction()
}
def prlFunction(): Unit ={
var list=List(2,6,8,9,6,8,9,8,100,1001,12,49,484,48,29,39,49);
val conf=new SparkConf().setMaster("local[2]").setAppName("word count")
val sc=new SparkContext(conf)
val t1=System.nanoTime()
val rdd= sc.parallelize(list)
val rdd2=rdd.map(r=>r*1000)
var n=rdd2.reduce((a,b)=>if(a>b) a else b)
println(" parrallel result "+n)
val t2=System.nanoTime()
println("Parralle Time "+(t2-t1))
}
def seqFunction(): Unit ={
val t1=System.nanoTime()
var list=List(2,6,8,9,6,8,9,8,100,1001,12,49,484,48,29,39,49);
//var list2=List();
var list2= list.map(a=>a*1000)
val n=list2.reduce((a,b)=>if(a>b) a else b)
println("Sequence result "+n)
val t2=System.nanoTime()
println("Sequence Time "+(t2-t1))
}
こんにちはラファエル、あなたの答えをありがとう。私はあなたが意味することを理解した。そして、私は上に書かれた私のコードはApache Sparkの並列プログラミングとシーケンスプログラミングに適していると知りたかったのですか?他のデータリソース(HDFSのデータまたは大きなデータのローカルテキストファイル)を使用して大規模なデータにも使用できますか? –
SparkとScalaの新機能です –