Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我需要集群的每个节点从 hdfs 检索一个 1GB 的文件。我使用 FileSystem 的 copyToLocalFile 方法。但不是整个文件(1GB),每个节点检索大约 50MB 的文件,然后代码继续。结果我的工作失败了。为什么会这样?有没有办法“等待”直到整个文件被复制到本地 fs?
编辑:我的映射器类检查文件是否存在于节点的本地 fs 中,如果不存在,则检索它。这是在 setup() 函数中完成的。
从您上次编辑:
您所描述的正是 DistributedCache 的设计用途——它将确保在您的任何 map / reduce 任务在该节点上运行之前将文件复制到每个任务跟踪器。