【发布时间】:2014-06-24 12:39:28
【问题描述】:
正如标题所说,我很困惑何时使用以“hdfs dfs”和“hadoop fs”开头的命令
仅供参考,我是使用 cloudera 4.6 quickstart vm 的 hadoop 新手。
【问题讨论】:
-
你在这里有一个答案(第一个答案):stackoverflow.com/questions/11715082/…
正如标题所说,我很困惑何时使用以“hdfs dfs”和“hadoop fs”开头的命令
仅供参考,我是使用 cloudera 4.6 quickstart vm 的 hadoop 新手。
【问题讨论】:
以下是三个看似相同但有细微差别的命令
hdfs dfs {args}
hadoop fs <args>
FS 涉及到一个通用文件系统,它可以指向任何文件系统,如本地、HDFS 等。因此,当您处理不同的文件系统时,如 Local FS、HFTP FS、S3 FS 等,可以使用它
hadoop dfs <args>
dfs 非常特定于 HDFS。将适用于与 HDFS 相关的操作。这已被弃用,我们应该改用 hdfs dfs。
hdfs dfs <args>
与 2nd 相同,即适用于与 HDFS 相关的所有操作,并且是推荐的命令,而不是 hadoop dfs
下面是归类为 HDFS 命令的列表。
**#hdfs commands**
namenode|secondarynamenode|datanode|dfs|dfsadmin|fsck|balancer|fetchdt|oiv|dfsgroups
因此,即使您使用 Hadoop dfs,它也会查找 hdfs 并将该命令委托给 hdfs dfs
【讨论】:
hdfs fs -put /home/user/localfile.txt hdfs://nameservice1/parent/child 而不是hdfs dfs -put ... 吗?