web-dev-qa-db-fra.com

Comment copier un fichier de HDFS vers le système de fichiers local

Comment copier un fichier de HDFS vers le système de fichiers local. Il n'y a pas d'emplacement physique d'un fichier sous le fichier, pas même un répertoire. comment puis-je les déplacer dans mon local pour d'autres validations.Je suis essayé par Winscp.

119
Surya
  1. bin/hadoop fs -get /hdfs/source/path /localfs/destination/path
  2. bin/hadoop fs -copyToLocal /hdfs/source/path /localfs/destination/path
  3. Pointez votre navigateur Web sur HDFS WEBUI (namenode_machine:50070), naviguez jusqu'au fichier que vous souhaitez copier, faites défiler la page et cliquez sur télécharger le fichier.
218
Tariq

Dans Hadoop 2.0,

hdfs dfs -copyToLocal <hdfs_input_file_path> <output_path>

où,

  • hdfs_input_file_path peut être obtenu de http://<<name_node_ip>>:50070/Explorer.html

  • output_path est le chemin local du fichier, vers lequel le fichier doit être copié.

  • vous pouvez également utiliser get à la place de copyToLocal.

24
Ani Menon

Afin de copier des fichiers de HDFS sur le système de fichiers local, vous pouvez exécuter la commande suivante:

hadoop dfs -copyToLocal <input> <output>

  • <input>: le chemin du répertoire HDFS (par exemple/mydata) que vous souhaitez copier
  • <output>: le chemin du répertoire de destination (par exemple ~/Documents)
14
Shafiq

vous pouvez accomplir de ces deux manières.

1.hadoop fs -get <HDFS file path> <Local system directory path>
2.hadoop fs -copyToLocal <HDFS file path> <Local system directory path>

Ex:

Mes fichiers sont situés dans / sourcedata/mydata.txt Je veux copier le fichier sur le système de fichiers local dans ce chemin / user/ravi/mydata

hadoop fs -get /sourcedata/mydata.txt /user/ravi/mydata/
5
Ramineni Ravi Teja

Cela a fonctionné pour moi sur mon instance VM d'Ubuntu.

hdfs dfs -copyToLocal [répertoire hadoop] [répertoire local]

1
Zach

Si votre "fichier" source est divisé en plusieurs fichiers (peut-être à la suite d'une réduction de carte) situés dans la même arborescence, vous pouvez les copier dans un fichier local avec:

hadoop fs -getmerge /hdfs/source/dir_root/ local/destination
1
Eponymous