177 votes

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

Comment copier un fichier depuis 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 vers mon local pour d'autres validations. j'ai essayé à travers winscp.

288voto

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

41voto

Ani Menon Points 5876

Dans Hadoop 2.0,

hdfs dfs -copyToLocal <hdfs_input_file_path> <output_path>

où,

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

  • output_path est le chemin local du fichier, où le fichier doit être copié.

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

26voto

Muhammad Shafiq Points 171

Afin de copier des fichiers de HDFS vers le système de fichiers local, la commande suivante peut être exécutée :

hadoop dfs -copyToLocal <input> <output>

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

Mise à jour : Hadoop est déprécié dans Hadoop 3

utiliser hdfs dfs -copyToLocal <input> <output>

7voto

Que 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 un fichier vers le système de fichiers local dans ce chemin. /user/ravi/mydata

hadoop fs -get /sourcedata/mydata.txt /user/ravi/mydata/

7voto

Eponymous Points 577

Si votre "fichier" source est réparti entre plusieurs fichiers (peut-être à la suite d'un map-reduce) qui se trouvent dans la même arborescence de répertoires, vous pouvez le copier dans un fichier local avec :

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X