Я получаю следующее исключение:Hadoop MapReduce Streaming для Flume моек файлов - FileNotFoundException
java.io.FileNotFoundException: File does not exist: /log1/20131025/2013102509_at1.1382659200021.tmp
at org.apache.hadoop.hdfs.DFSClient$DFSInputStream.fetchLocatedBlocks(DFSClient.java:2006)
at org.apache.hadoop.hdfs.DFSClient$DFSInputStream.openInfo(DFSClient.java:1975)
...
пока MR задание выполняется. Flume изменяет имя файла с xxx.tmp
на xxx.
, а задача MR не может найти файл (MR пытается прочитать xxx.tmp
) и выдает ошибку.
Я понятия не имею, как я могу избежать FileNotFoundException.
Я бегу MR работу через Hadoop потоковом ($hadoop jar contrib/streaming/hadoop-streaming-1.2.1.jar...
)
Имеет это любой вариант для исключения файла xxx.tmp?
Хммм. поэтому я должен перемещать или копировать файлы (не .tmp-файл) в другое место для MR. правильно? Благодарю. – user2918147
Я обновил свой ответ с помощью примера конфигурации того, как вы можете сделать flum сделать это за вас – fd8s0