Resumo executivo:
Parece que você está tentando copiar os arquivos na pasta HDFS inexistente
Resposta detalhada:
Existe uma enorme diferença entre o HDFS
file-system e o sistema de arquivos regular.
Sistema de arquivos HDFS - O Hadoop Distributed File System (HDFS) foi projetado para armazenar arquivos grandes em todos os computadores de forma confiável. um grande aglomerado.
O sistema de arquivos é distribuído entre várias máquinas e pode ser acessado apenas por comandos do HDFS (ou equivalente).
Assumindo que você estava usando /user/Amit/hadoop-3.0.0/hadoop2_data/hdfs/datanode
como pasta de destino do HDFS - suspeito que a pasta não exista.
Você pode testar minha suposição ao executar os seguintes comandos:
-
Copie o arquivo para a pasta
HDFS /tmp
hadoop fs -put <LocalFileSystem_Path> /tmp
-
Copie o arquivo para a pasta padrão
HDFS
(.
)hadoop fs -put <LocalFileSystem_Path> .
Depois, você pode executar o comando ls
(list files) - para ver se os arquivos estão lá:
-
Listar arquivos na pasta
HDFS /tmp
hadoop dfs -ls /tmp
-
Listar arquivos na pasta padrão
HDFS
(.
)hadoop dfs -ls .
Mais informações sobre - Shell do sistema de arquivos HDFS pode ser encontrado aqui :
Atualização:
Para verificar se a pasta HDFS /user/Amit
realmente existe, você pode executar o seguinte comando:
hadoop dfs -ls /user/Amit
Se a pasta existir, você poderá copiar arquivos usando:
hadoop fs -put <LocalFileSystem_Path> /user/Amit
Se a pasta não existir, você precisará investigar o sistema de arquivos HDFS, usando, por exemplo:
hadoop dfs -ls /
Seguido da execução de ls
nos subdiretórios.
Se você tiver as permissões relevantes, poderá criar subpastas, por exemplo, se a pasta /user/Amit
existir, você poderá executar:
hdfs dfs -mkdir /user/Amit/newsubfolder
Note, você pode tentar usar a opção mkdir
-p
, que fará também as pastas pais (se você tiver as permissões necessárias) veja dois exemplos abaixo (eu acho que você tem as permissões necessárias para o primeiro comando ):
hdfs dfs -mkdir /tmp/Amit/fold1/fold2
hdfs dfs -mkdir /user/Amit/fold1/fold2