我的Map/Reduce程序正在从S3频繁地请求文件。在Reducer中,我非常频繁地从Amazon S3请求文件,并且我可能会多次请求相同的文件(每个文件大约10 K个文件在1 MB到12 MB之间)。使用Hadoop分布式缓存效率不高,因为它会将所有这些文件复制到所有工作节点(据我所知),但我不想在缩减阶段执行这些操作,我只能从10 K个文件请求1000个文件。此外,如果在文件之前请求减速器,如果减速器再次需要它,我不想再次请求它。我问是否有人在工作节点上实施了像ehcache或oscache这样的缓存框架?或者有什么方法只缓存工人机器磁盘上的请求文件?在Hadoop工作节点上缓存数据
感谢 叶海亚