大量のデータを並列に処理するために、入力データから中間キーと値の組みを生成する処理と、同じ中間キーをもつ値を加工する処理との2段階で実行するプログラミングモデルはどれか。
2相コミット
KVS
MapReduce
マルチスレッド