2

キーと値のペアを渡したり発行したりするための MapReduce の基本情報。何を渡し、何を放出するかを少し明確にする必要があります。ここで私の懸念: MapReduce 入力と出力:

1.Map() メソッド - キーと値のペアの単一またはリストを取り、何を出力しますか? 2.各入力キーと値のペアに対して、マッパーは何を出力しますか? 同型か異型か?3.各中間キーに対して、リデューサーは何を出力しますか? 型の制限はありますか?4.Reducer は、同じキーに関連付けられたすべての値を受け取ります。値は、並べ替えられた順序やオービタル順序のようにどのように並べられますか? その順序は実行ごとに異なりますか? 5.シャッフルとソートの段階で、キーと値はどの順序で表示されますか?

4

2 に答える 2

5
  • 各入力 k1、v1 マップは、0 個以上の k2、v2 を出力します。
  • 各 k2 レデューサーは k2、list(v1,v3,v4..) を受け取ります。
  • 各入力 k2 に対して、list(v) レデューサーは 0 個以上の k3、v3 を発行できます。

値はステップ 2 で任意に並べ替えられます。キー、値 - マッパーとリデューサーの出力は同じ型である必要があります。つまり、すべてのキーが同じ型で、すべての値が同じ型である必要があります。

于 2014-01-01T16:08:35.403 に答える
0

Map メソッド: 入力 (K1,V1) として受け取り、(K2,V2) を返します。つまり、出力キーと値は、入力キーと値とは異なる場合があります。

レデューサー法: マッパーの出力が正しくシャッフルされた後 (同じキーが同じレデューサーに送られる)、レデューサーの入力は (K2, LIST(V2)) であり、その出力は (K3,V3) です。シャッフル処理の結果、キーはキー K2 によってソートされてリデューサーに到着します。

特定の方法でキーを並べたい場合は、キー K3 の compareTo メソッドを実装できます。

Referring your questions:

1. Answered above.
2. You can emit whatever you want as long it consists of a key and a value. 
   For example, in the WordCount you send as key the word and as value 1.
3. In the WordCount example, the reducer will receive a word and list of number. 
   Then, it will sum up the numbers and emit the word and its sum.
4. Answered above.
5. Answered above.
于 2012-09-07T13:42:30.830 に答える