0
作业完成时,是否有任何方法更改与distributedCache关联的文件的内容,并在另一个地图/缩减作业中用作新的DistributedCache?如何在作业完成时更改distributedCache的内容?
作业完成时,是否有任何方法更改与distributedCache关联的文件的内容,并在另一个地图/缩减作业中用作新的DistributedCache?如何在作业完成时更改distributedCache的内容?
检查TrackerDistributedCacheManager.java代码的更多细节。 Hadoop会保留一个引用计数,说明分布式缓存中有多少个任务正在使用这些文件。如果计数降至0,则标记为删除的文件。因此,在作业结束时,将清理DistributedCache中的文件,否则它们将继续在作业上的节点上堆积。
因此,您不能更改分布式缓存中的文件并将其用于连续作业。
+1为链接 –
所以,我有一个循环内的map-reduce作业。也就是说,根据减速器的输出值,它决定再次重复整个过程。但是,映射器从distributedCache中读取一个值。 distributedCache中的值在每次迭代中发生变化。有没有办法做到这一点? –