我的问题是我有一个 5 节点的 Hadoop 集群,集群上的文件需要 350 GB。我正在运行一个 Pig 脚本,它连接三个不同的文件并加入它们。该作业每次运行不到 30 分钟即可完成所有 map 任务,然后 6 小时完成 reduce 任务,所有这些 reduce 任务在最好的情况下最终都会失败。在最坏的情况下,我的 hadoop 卡住了,这是由于进入安全模式的名称节点导致它没有足够的空间(超出配额)。
tmp 目录占用大厅可用空间(7TB!!)引起的问题。我的脚本如下所示:
info_file = LOAD '$info' as (name, size, type,generation,streamId);
chunks_file = LOAD '$chunk' as (fp, size);
relation_file = LOAD '$relation' as (fp, filename);
chunks_relation = JOIN chunks_file BY fp, relation_file BY fp;
chunks_files= JOIN chunks_relation BY $3, info_file BY $0;
result = FOREACH chunks_files GENERATE $0,$1,$3,$5,$6,$7,$8;
STORE result INTO '$out';
任何想法 ??