DistributedCache に関する Apache および Yahoo のチュートリアルを読みました。私はまだ一つのことについて混乱しています。すべてのデータノードにコピーしたいファイルがあるとします。DistributedCache.addCacheFile(new URI(hdfsPath),job)
そのため、ジョブ Driver で使用
して、ファイルを使用できるようにします。次に、DistributedCache.getLocalCacheFiles(job)
Mapper 内で呼び出します。
ここで、このファイルの内容に基づいてデータ ノードに配列を作成し、map() が実行されるたびに配列の要素にアクセスできるようにします。これはできますか?キャッシュされたファイルを読み取って Mapper クラス内で配列を作成すると、Mapper ごとに 1 回ではなく、Mapper への新しい入力ごとに配列が作成されるように見えるため、混乱しています。この部分は実際にどのように機能しますか (つまり、いつどこで配列を作成する必要があるか)。