Командная строка Hadoop

Рассмотрим разницу между командами hadoop fs {args}, hadoop dfs {args} и hdfs dfs {args}.

Параметр fs относится к общей файловой системе, которая может указывать на любую файловую систему, например, локальную, HDFS и т.д. Таким образом, fs можно использовать при работе с различными файловыми системами, такими как Local FS, (S)FTP, S3 и другими.

HadoopFSLayers dark
Уровни Hadoop FS
HadoopFSLayers light
Уровни Hadoop FS

Когда вы используете параметр dfs, вы напрямую указываете взаимодействие с HDFS. Так, если необходимо работать только с HDFS, используйте команду hdfs dfs. Если же требуется получить доступ/перенести данные между различными файловыми системами, используйте команду hadoop fs.

Чтобы взаимодействовать с оболочкой HDFS, пользователь должен обладать соответствующими правами на чтение/запись к директории(-ям) HDFS. Директории могут быть созданы пользователями, принадлежащими группам hadoop или hdfs. В демонстрационных целях в примере ниже используется пользователь hdfs.

Можно предоставить права root текущему пользователю, как показано ниже:

$ sudo -s

Затем нужно переключиться на пользователя hdfs:

$ su - hdfs

Теперь можно выполнять команды в оболочке HDFS.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней