2016-08-19 3 views
1

я создал файл в HDFS с помощью следующей командыКак файлы или каталоги становятся хранятся в Hadoop HDFS

hdfs dfs -touchz /hadoop/dir1/file1.txt 

Я мог видеть созданный файл с помощью следующей команды

hdfs dfs -ls /hadoop/dir1/ 

Но, не удалось найти местоположение с помощью команд linux (используя поиск или локализацию). Я искал в Интернете и нашел следующую ссылку. How to access files in Hadoop HDFS?. В нем говорится, что hdfs является виртуальным хранилищем. В этом случае, как его взять раздел, какой он или сколько его нужно использовать, где хранятся метаданные

Занимает ли место размещения данных виртуального хранилища, которое я упомянул в hdfs-site.xml, чтобы сохранить все данные?

Я просмотрел местоположение datanode и доступны файлы. Но я не мог узнать ничего, что связано с моим файлом или папкой, которую я создал.

(я использую Hadoop 2.6.0)

ответ

4

HDFS файловая система представляет собой распределенную систему хранения, в котором место хранения виртуальных и создан с использованием дискового пространства от всех DataNodes. При установке hadoop вы должны иметь указанные пути для dfs.namenode.name.dir и dfs.datanode.data.dir. Это те места, где все файлы, связанные с HDFS, хранятся на отдельных узлах.

При хранении данных на HDFS он сохраняется как блоки заданного размера (по умолчанию 128 МБ в Hadoop 2.X). Когда вы используете команды hdfs dfs, вы увидите полные файлы, но внутри HDFS сохраняет эти файлы в виде блоков. Если вы проверите вышеупомянутые пути в своей локальной файловой системе, вы увидите кучу файлов, которые соответствуют файлам на вашем HDFS. Но опять же, вы не увидите их в качестве реальных файлов, поскольку они разбиты на блоки.

Проверьте приведенный ниже вывод команды, чтобы получить более подробную информацию о том, сколько пространства из каждого DataNode используется для создания виртуального хранилища HDFS.

hdfs dfsadmin -report #Or

sudo -u hdfs hdfs dfsadmin -report

НТН

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