最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。
メモリに収まらないデータセットを解析するプログラミング手法
は、前述の任意の構文を用いて、1 つ以上の outds
= mapreduce(___,Name,Value
)Name,Value
のペアの引数を使用して追加オプションを指定します。たとえば、'OutputFolder'
の後に、出力フォルダーへのパスを指定する文字ベクトルを指定できます。
mapreduce
アルゴリズムをデバッグする場合、キーと値のペアが異なるフェーズでどのように移動するかを確認するのは有益なことです。データの移動を確認するには、map 関数と reduce 関数内にブレークポイントを設定します。ブレークポイントは mapreduce
の実行を停止して、KeyValueStore
または ValueIterator
のような関連する変数の現在の状態を確認できるようにします。詳細については、MapReduce アルゴリズムのデバッグを参照してください。
任意のプラットフォーム上で mapreduce
のパフォーマンスを最適化するには、以下の推奨事項を実装してください。
map 関数への呼び出し回数を最小限に抑えます。一番簡単な方法は、入力データ ストアの ReadSize
プロパティの値を大きくすることです。その結果、mapreduce
が map 関数に渡すデータのブロック サイズが大きくなり、データストアの最後に到達するまでの読み取り回数が少なくなります。
map 関数と reduce 関数の間で受け渡される中間データの量を減らします。たとえば、map 関数内に unique
を使用して、類似したキーを組み合わせることができます。この手法の例は、MapReduce を使用するグループごとの平均の計算を参照してください。
datastore
| gcmr
| KeyValueStore
| mapreducer
| tall
| ValueIterator