私のマッパーの 1 つは、part-0、part-1、part-2 などのファイルに分散されたいくつかのログを生成します。これらのそれぞれには、いくつかのクエリと、そのクエリに関連するいくつかのデータがあります。
part-0
q score
1 ben 10 4.01
horse shoe 5.96
...
part-1
1 ben 10 3.23
horse shoe 2.98
....
and so on for part-2,3 etc.
ここで、上記の「1 ben 10」という同じクエリ q が、part-1、part-2 などに存在します。
ここで、同じクエリを収集し、それらのスコアを集計 (合計) できる map reduce フェーズを作成する必要があります。
私のマッパー関数は ID にすることができ、reduce でこのタスクを達成します。
出力は次のようになります。
q aggScore
1 ben 10 7.24
horse shoe 8.96
...
簡単な作業のように思えますが、これをどのように進めることができるかを考えることができません (たくさん読んでも、実際には進めることができません)。一般的なアルゴリズムの問題に関して考えることができます。最初に一般的なクエリを収集し、それらのスコアを合計します。
pythonic ソリューションまたはアルゴリズム (map reduce) のヒントがあれば、本当に感謝しています。