No Hadoop, como mostrar o processo atual de -copyFromLocal

10

Eu ainda sou um aprendiz novato no Hadoop, e dessa vez eu estava tentando processar um arquivo de 106GB. Eu usei -copyFromLocal para copiar esse arquivo grande para meu Hadoop DFS, mas como o arquivo é grande, tenho que esperar por um longo tempo sem uma pista sobre o status atual da cópia.

Existe alguma maneira de mostrar o estado atual da cópia de arquivos com este comando?

Obrigado antecipadamente por sua ajuda!

    
por Bang Dao 11.04.2014 / 06:15

4 respostas

12

CopyFromLocal não tem a capacidade de exibir o progresso da cópia de arquivos. Como alternativa, você pode abrir outro shell e executar o $ watch hadoop fs -ls <filenameyouarecopying> . Isso exibirá o arquivo e seu tamanho uma vez a cada 2,0 segundos.

    
por 24.09.2014 / 05:30
1

Não parece haver uma opção detalhada para nenhum dos comandos de cópia (copyFromLocal, copyToLocal, get, put). Sua melhor aposta é provavelmente olhar o tamanho do arquivo em seu destino no HDFS para avaliar seu progresso.

    
por 21.04.2014 / 18:49
1

Você pode usar "nohup &" para executar a cópia como um processo em segundo plano. nohup fará com que o processo seja executado mesmo depois de você sair do servidor. Sempre que você precisar, você pode verificar o processo usando "hadoop fs -ls.

    
por 15.03.2015 / 09:47
1

Também é possível rastrear o progresso da leitura do arquivo local usando o comando pv e enviar o conteúdo do arquivo para hdfs dfs stdin:

pv mylargefile.txt | hdfs dfs -put - /path/to/file/on/hdfs/mylargefile.txt

    
por 08.11.2016 / 21:14

Tags