Подтвердить что ты не робот

Как скопировать файл из HDFS в локальную файловую систему

Как скопировать файл из HDFS в локальную файловую систему. Нет физического расположения файла под файлом, даже не каталога. как я могу перенести их в свой локальный для дальнейших валидаций. Я пробовал через winscp.

4b9b3361

Ответ 1

  • bin/hadoop fs -get /hdfs/source/path /localfs/destination/path
  • bin/hadoop fs -copyToLocal /hdfs/source/path /localfs/destination/path
  • Наведите свой веб-браузер на HDFS WEBUI (namenode_machine:50070), перейдите к файлу, который вы собираетесь скопировать, прокрутите страницу вниз и нажмите загрузить файл.

Ответ 2

В Hadoop 2.0,

hdfs dfs -copyToLocal <hdfs_input_file_path> <output_path>

где

  • hdfs_input_file_path может быть получен из http://<<name_node_ip>>:50070/explorer.html

  • output_path - это локальный путь к файлу, в который должен быть скопирован файл.

  • вы также можете использовать get вместо copyToLocal.

Ответ 3

Чтобы скопировать файлы из HDFS в локальную файловую систему, можно выполнить следующую команду:

hadoop dfs -copyToLocal <input> <output>

  • <input>: путь к каталогу HDFS (например,/mydata), который вы хотите скопировать
  • <output>: путь к каталогу назначения (например, ~/Documents)

Ответ 4

вы можете выполнить оба этих способа.

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

Пример:

Мои файлы находятся в /sourcedata/mydata.txt Я хочу скопировать файл в локальную файловую систему по этому пути /user/ravi/mydata​​strong >

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

Ответ 5

Это сработало для меня на моем виртуальном экземпляре Ubuntu.

hdfs dfs -copyToLocal [каталог hadoop] [локальный каталог]

Ответ 6

Если ваш исходный "файл" разделен между несколькими файлами (возможно, в результате map-Reduce), которые находятся в одном и том же дереве каталогов, вы можете скопировать его в локальный файл с помощью:

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

Ответ 7

Если вы используете Docker, вам нужно выполнить следующие шаги:

  1. скопируйте файл из hdfs в namenode (hadoop fs -get output/part-r-00000/out_text).  "/out_text" будет храниться в namenode.

  2. скопируйте файл из namenode на локальный диск (docker cp namenode: /out_text output.txt)

  3. output.txt будет там в вашем текущем рабочем каталоге

Ответ 8

bin/hadoop fs -put /localfs/destination/path /hdfs/source/path