0

分散キャッシュ機能を使用して追加したいファイルのリストがあります。さまざまなreduceタスクにはさまざまなファイルが必要です。たとえば、ファイルAはreduce 1で必要になり、ファイルBはreduce2で必要になります。Job Confでは、両方のファイルがDistributedCache.addCacheFile()メソッドを使用して追加されます。reduce class configureメソッドでは、DistributedCache.getCacheFiles()を使用してファイルを取得します。削減1のメモリにファイルAのみ、削減2のメモリにファイルBのみを含めることができる可能性はありますか。または、削減タスクが開始する前に、両方のファイルがメモリに追加されます。

これを理解すれば、プログラムに分散キャッシュを使用できます。私の懸念はスケーラビリティについてです。ファイルは大きいです。したがって、reduceタスクで両方のファイルをメモリに含めることはできません。ただし、ファイルの1つを保持できます。

plsは助けます!!!

ありがとう

4

1 に答える 1

0

キャッシュファイルを返すメソッドは、キャッシュしたファイルのすべての名前の配列を、追加した順序で返します。したがって、reducer1にarray[0]ファイルを取得するように指示し、reduce2にarray[1]ファイルを取得するように指示することができます。このキャッシュには、非常に大きなファイルを含めないこともお勧めします。

于 2012-10-23T16:50:21.300 に答える