放送は、変数を示し
II。コード
1つのヴァルCONF = 新しいSparkConf() 2 conf.setMaster( "ローカル")。setAppName( "brocast" ) 3ヴァルSCは= 新しいSparkContext(CONF) 4リスト( "ハローxasxt"ヴァルリスト= ) 5 ヴァル放送=皮下。ブロードキャスト(リスト) 6ヴァルlineRDD = sc.textFile( "./ words.txt" ) 7 lineRDD.filter {X => broadCast.value.contains(X) } .foreach {}のprintln 8 sc.stop()
III。使用上の注意
図1はできません、ブロードキャスト可変ブロードキャストを使用RDD ため RDDデータが弾性分散データセットを記憶されていません[]。RDD結果は、[データがあまりにも多くのことができない、収集]放送することができます。
2. ブロードキャスト変数ができるだけで、ドライバ側定義端エグゼキュータで定義することができません。
3. では放送用可変ドライバ端子の値を変更することができ、放送キュータ端における変数の値を変更することはできません。
IV。アキュムレータのイラスト
V.コード
1つのヴァルCONF = 新しいSparkConf() 2 conf.setMaster( "ローカル")。setAppName( "アキュムレータ" ) 3ヴァルのSC = 新しいSparkContext(CONF) 4 ヴァルアキュムレータ= sc.accumulator(0) 5 sc.textFile(」。 /words.txt").foreach {X => { accumulator.add(1 ) }} 6 のprintln(accumulator.value) 7 sc.stop()
VI。使用上の注意
1. アキュムレータ割り当てられた初期値定義ドライバ端、アキュムレータは、運転席側、側更新Excutorを読み取ることができます。