2016-06-01 3 views
0

Недавно я начал изучать многопользовательский кластер с избыткомФайловая система в hadoop

Как работает файловая система в hadoop.

Для примера. Если у меня есть один файл test.txt в полном объеме сведений о фермере. Нужно ли загружать файл на главный сервер HDFS или на ведомый сервер.

ответ

2

Чтобы узнать, как Hadoop файловая система работает, пожалуйста, обратитесь к книге Hadoop: The Definitive Guide

Для времени, чтобы загрузить файл в HDFS, вам нужно всего лишь запустить -put или -copyFromLocal команды edgenode кластера (то есть от того, где вы можете запустить команду hadoop) и остальное будет Будьте внимательны с помощью системы Hadoop. Ваша команда может выглядеть

hadoop fs набор

$ hadoop fs -copyFromLocal /home/user1/farmer_details.txt /user/user1 

или

$ hadoop fs -put /home/user1/farmer_details.txt /user/user1 

Вы также можете попробовать hdfs dfs установить

$ hdfs dfs -copyFromLocal /home/user1/farmer_details.txt /user/user1 

или

$ hdfs dfs -put /home/user1/farmer_details.txt /user/user1 

где /home/user1/farmer_details.txt - это местоположение источника в локальной файловой системе, а /user/user1 - это место назначения в файловой системе hadoop.

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

$ hadoop fs -ls /user/user1 

Вы должны получить /user/user1/farmer_details.txt файл.

+0

Большое вам спасибо за ваш ответ. Вы упомянули, что/user/user1 является местом назначения в файловой системе hadoop. Где этот путь/user/user1 будет?будь то на главном сервере или подчиненном сервере. –

+0

Вы просто создаете этот каталог, используя Hadoop fs - mkdir. Это метаданные будут храниться в Namenode, т.е. Главный узел. Когда вы будете загружать данные, данные будут храниться в Datanode, т.е. Ведомый узел. – Farooque

+0

Большое вам спасибо за ваш ответ. Таким образом, файлы будут храниться в Datanode (Slave) и могут быть доступны с помощью Hadoop на главном сервере. Теперь я понимаю. Могу ли я иметь ваш адрес электронной почты: все же у меня много сомнений в хауп –

2

Прежде всего, вам необходимо загрузить файл: text.txt на один узел кластера (может быть основным сервером или подчиненным сервером), например, загрузить в/tmp foler, и вы получили: /tmp/text.txt, затем использовать команду:

# hadoop fs -put /tmp/text.txt /tmp 

затем использовать команду:

# hadoop fs -ls /tmp 

вы найдете файл: text.txt уже в этой папке HDFS:/TMP

+2

вы не можете кошка каталог – Farooque

+0

«Hadoop фс -Положите /tmp/text.txt/TMP» Предположим, если я создаю папку TMP в DataNode 1 (сервер работорговец), как это может быть доступ в главном сервере например, /tmp/text.txt и где находится папка/tmp, как в главном, так и в ведомом. Если это HDFS, то будет ли весь файл test.txt загружаться на главный сервер или метаданные этого файла. Пожалуйста, объясните мне более четко об этом –

+0

Да, пожалуйста, измените cat на ls этой команды, которая может отображать содержимое папки. Метаданные файла хранятся на сервере namenode, а содержимое файла хранится на подчиненных серверах. На главном сервере или сервере namenode вы все равно можете использовать команду Hadoop для доступа к файлу в slave severs –

Смежные вопросы