Flink提供了一個(gè)分布式緩存,類似于hadoop,可以使用戶在并行函數(shù)中很方便的讀取本地文件,并把它放在taskmanager節(jié)點(diǎn)中,防止task重復(fù)拉取。
此緩存的工作機(jī)制如下:程序注冊(cè)一個(gè)文件或者目錄(本地或者遠(yuǎn)程文件系統(tǒng),例如 hdfs 或者 s3)
通過(guò) ExecutionEnvironment 注冊(cè)緩存文件并為它起一個(gè)名稱。
當(dāng)程序執(zhí)行,F(xiàn)link 自動(dòng)將文件或者目錄復(fù)制到所有taskmanager節(jié)點(diǎn)的本地文件系統(tǒng),僅會(huì)執(zhí)行一次。
用戶可以通過(guò)這個(gè)指定的名稱查找文件或者目錄,然后從taskmanager節(jié)點(diǎn)的本地文件系統(tǒng)訪問(wèn)它。