ERRO: [cat: O arquivo não existe] Não consigo abrir o arquivo de saída do hadoop em 14.04

ERRO: [cat: O arquivo não existe] Não consigo abrir o arquivo de saída do hadoop em 14.04

Eu instalei o hadoop-1.0.3 no meu sistema (14.04), seguidoeste tutorial.

E executei com êxito um programa mapreduce de amostra para contagem de palavras da seguinte maneira,

hadoopuser@arul-PC:/usr/local/hadoop$ bin/hadoop jar hadoop*examples*.jar wordcount /user/hadoopuser/SampleData /user/hadoopuser/SampleOutput
14/06/17 15:25:45 INFO input.FileInputFormat: Total input paths to process : 3
14/06/17 15:25:45 INFO util.NativeCodeLoader: Loaded the native-hadoop library
14/06/17 15:25:45 WARN snappy.LoadSnappy: Snappy native library not loaded
14/06/17 15:25:45 INFO mapred.JobClient: Running job: job_201406171444_0002
14/06/17 15:25:46 INFO mapred.JobClient:  map 0% reduce 0%
14/06/17 15:26:04 INFO mapred.JobClient:  map 66% reduce 0%
14/06/17 15:26:13 INFO mapred.JobClient:  map 100% reduce 0%
14/06/17 15:26:16 INFO mapred.JobClient:  map 100% reduce 22%
14/06/17 15:26:28 INFO mapred.JobClient:  map 100% reduce 100%
14/06/17 15:26:33 INFO mapred.JobClient: Job complete: job_201406171444_0002
14/06/17 15:26:33 INFO mapred.JobClient: Counters: 29
14/06/17 15:26:33 INFO mapred.JobClient:   Job Counters 
14/06/17 15:26:33 INFO mapred.JobClient:     Launched reduce tasks=1
14/06/17 15:26:33 INFO mapred.JobClient:     SLOTS_MILLIS_MAPS=33037
14/06/17 15:26:33 INFO mapred.JobClient:     Total time spent by all reduces waiting after reserving slots (ms)=0
14/06/17 15:26:33 INFO mapred.JobClient:     Total time spent by all maps waiting after reserving slots (ms)=0
14/06/17 15:26:33 INFO mapred.JobClient:     Launched map tasks=3
14/06/17 15:26:33 INFO mapred.JobClient:     Data-local map tasks=3
14/06/17 15:26:33 INFO mapred.JobClient:     SLOTS_MILLIS_REDUCES=21208
14/06/17 15:26:33 INFO mapred.JobClient:   File Output Format Counters 
14/06/17 15:26:33 INFO mapred.JobClient:     Bytes Written=880838
14/06/17 15:26:33 INFO mapred.JobClient:   FileSystemCounters
14/06/17 15:26:33 INFO mapred.JobClient:     FILE_BYTES_READ=2214875
14/06/17 15:26:33 INFO mapred.JobClient:     HDFS_BYTES_READ=3671899
14/06/17 15:26:33 INFO mapred.JobClient:     FILE_BYTES_WRITTEN=3775759
14/06/17 15:26:33 INFO mapred.JobClient:     HDFS_BYTES_WRITTEN=880838
14/06/17 15:26:33 INFO mapred.JobClient:   File Input Format Counters 
14/06/17 15:26:33 INFO mapred.JobClient:     Bytes Read=3671523
14/06/17 15:26:33 INFO mapred.JobClient:   Map-Reduce Framework
14/06/17 15:26:33 INFO mapred.JobClient:     Map output materialized bytes=1474367
14/06/17 15:26:33 INFO mapred.JobClient:     Map input records=77931
14/06/17 15:26:33 INFO mapred.JobClient:     Reduce shuffle bytes=1207341
14/06/17 15:26:33 INFO mapred.JobClient:     Spilled Records=255966
14/06/17 15:26:33 INFO mapred.JobClient:     Map output bytes=6076101
14/06/17 15:26:33 INFO mapred.JobClient:     Total committed heap usage (bytes)=517210112
14/06/17 15:26:33 INFO mapred.JobClient:     CPU time spent (ms)=11530
14/06/17 15:26:33 INFO mapred.JobClient:     Combine input records=629172
14/06/17 15:26:33 INFO mapred.JobClient:     SPLIT_RAW_BYTES=376
14/06/17 15:26:33 INFO mapred.JobClient:     Reduce input records=102324
14/06/17 15:26:33 INFO mapred.JobClient:     Reduce input groups=82335
14/06/17 15:26:33 INFO mapred.JobClient:     Combine output records=102324
14/06/17 15:26:33 INFO mapred.JobClient:     Physical memory (bytes) snapshot=589725696
14/06/17 15:26:33 INFO mapred.JobClient:     Reduce output records=82335
14/06/17 15:26:33 INFO mapred.JobClient:     Virtual memory (bytes) snapshot=1862012928
14/06/17 15:26:33 INFO mapred.JobClient:     Map output records=629172

Quando verifico o arquivo de saída, ele está presente na pasta de saída,

hadoopuser@arul-PC:/usr/local/hadoop$ bin/hadoop dfs -ls /user/hadoopuser/SampleOutput
Found 3 items
-rw-r--r--   1 hadoopuser supergroup          0 2014-06-17 15:26 /user/hadoopuser/SampleOutput/_SUCCESS
drwxr-xr-x   - hadoopuser supergroup          0 2014-06-17 15:25 /user/hadoopuser/SampleOutput/_logs

-rw-r--r-- 1 supergrupo hadoopuser 880838 17/06/2014 15:26 /user/hadoopuser/SampleOutput/part-r-00000

Tentei abri-lo usando o seguinte comando,

hadoopuser@avvenire-PC:/usr/local/hadoop$ bin/hadoop dfs -cat /user/hadoopuser/SampleOutput/part-r-0000

Mas estou obtendo o resultado da seguinte forma,

cat: File does not exist: /user/hadoopuser/SampleOutput/part-r-0000

Por favor, me forneça uma solução. Agradeço antecipadamente.

Responder1

Verifique o nome do arquivo. São cinco 0 e não quatro.

bin/hadoop dfs -cat /user/hadoopuser/SampleOutput/part-r-00000

Responder2

Então, percebo que uma resposta já foi aceita, mas aqui está a solução quando isso aconteceu comigo (caso alguém veja este tópico).


TLDR; certifique-se de que não haja nomes de pasta conflitantes em seu diretório hadoop (para mim era /usr/local/hadoop).

Quando eu estava gerando a saída, coloquei-a em uma pasta chamada output/, porém, antes deste programa, eu tinha outro que também estava gravando na saída e salvei os dados de saída em uma pasta chamada especificamente de saída em meu diretório hadoop. Isso estava causando problemas para mim, pois mesmo que aquela pasta não tenha aparecido quando eu executei bin/hadoop fs -ls, o comando bin/hadoop fs -cat output/*estava na verdade pesquisando na pasta que eu havia gerado antes, em vez da saída do programa que acabei de executar. Depois de excluir o diretório de saída com rm -rf output/, o problema desapareceu.

informação relacionada