MRベースではMR起動時に変数定義と値を設定してするが、Sparkでは共有変数機能を提供してある。
Broadcast Variables:
Accumulators:
programming-guide
Broadcast Variables:
- 読み取り専用の値を全体に拡散させて他のノードから参照出来る。
- SparkContext.broadcast(v)で生成。
Accumulators:
- 追加(added)のみ可能は変数で MRのCounterまたはSumとして利用できる。
SparkContext.accumulator(v)
で生成出来る。
- 各ノードではaddまたは+=のオペレーターで足し算ができる。
- AccumulatorParamのサブクラスとして独自の型を生成出来る。
- この変数のupdateはActions(reduce, collect, countなど)の処理の中でのみ実行される。Sparkは各Taskで1回のみ実行されることを保証する。
programming-guide
0 件のコメント:
コメントを投稿