1、簡介
DistributedCache是Hadoop為MapReduce架構提供的一種分布式緩存機制,它會将需要緩存的檔案分發到各個執行任務的子節點機器中,各個節點可以自行讀取本地檔案系統上的資料進行處理。
2、符号連結
可以在原本HDFS檔案路徑上+“ #somename”來設定符号連接配接(相當于一個快捷方式)。
這樣在MapReduce程式中可以直接通過:
File file = new File("somename");
來獲得這個檔案。
3、注意事項
(1)需要分發的檔案必須是存儲在HDFS上了。預設的路徑是hdfs://的,不是file://。
(2)檔案隻讀。
(3)不緩存太大的檔案,執行task之前會對檔案進行分發,影響task的啟動速度。