私は、YelpのMRJobを使用して、AmazonのElasticMapReduceを使用して計算することを検討しています。計算量の多い作業では、大量のデータを読み書きする必要があります。各ノードはデータの一部のみを取得する必要があり、これがどのように行われるかについて私は混乱しています。現在、私のデータはMongoDBにあり、永続的なEBSドライブに保存されています。
EMRを使用する場合、データはノード上でどのように因数分解されますか?データを分割するキーをMRJobにどのように伝える必要がありますか?MRJob EMRのドキュメントでは、因数分解の手順が暗黙的に残されています。ファイルまたはS3 Key-Valueストアへの接続を開くと、どのようにキーが分割されますか?入力がシーケンスであると想定し、それに基づいて自動的に分割しますか?
おそらく誰かが、 MRJobの単語数の例を使用して、入力データがノードにどのように伝播されるかを説明できます。その例では、入力はテキストファイルです-それはすべてのノードにコピーされますか、それとも1つのノードによってシリアルに読み取られ、分割して配布されますか?