私は巨大なファイル(ギガバイト)の中で最も一般的に使われている文字列を見つける仕事を与えられました。私はファイルにRDDを作成するために、次のスパークプログラムを書いた。大部分は大部分が巨大なリストの中で使用されています
val conf = new Sparkconf() //initializing sparkConf
val sc = new SparkContext(conf) //initializing SparkContext
val input = sc.textfile("..../input path") //load the input path
val words = input.flatMap(line=>line.split("")) //split by words
val counts = words.map(word=>(word, reducebyKey{case(x,y) => x+y}) //reducebykey to count the number of repeating words
val topcount = counts.top(5) //select top 5
しかし、このトップ5は、私が最も使用されているものをフェッチしていません。フラットマップの後で先頭の要素のみを返します。
、火花は非常におそらく完全にやり過ぎで、古き良きbashのは、多くの場合、1つのライナー高速なソリューションです。 – C4stor