Hadoop hdfs 无法定位文件

标签 hadoop

我正在尝试使用以下命令将文件复制到 hdfs。文件名是 googlebooks-eng....等等....

当我尝试在 hdfs 中列出文件时,我没有看到列出的文件名。实际文件名是什么?

hadoop-user@hadoop-desk:~/hadoop$ bin/hadoop dfs -put /home/hadoop-user/googlebooks-eng-all-1gram-20120701-0 /user/prema
hadoop-user@hadoop-desk:~/hadoop$ bin/hadoop dfs -ls /user/prema
Found 1 items
-rw-r--r--   1 hadoop-user supergroup  192403080 2014-11-19 02:43 /user/prema

最佳答案

几乎所有的 hadoop dfs 实用程序都遵循 unix 风格。 hadoop dfs -put 的语法是

hadoop dfs -put <source_file> <destination> .这里的 destination 可以是目录或文件。在您的情况下/user 目录存在但目录 prema 不存在,因此当您将文件从本地复制到 hdfs 时,prema 将用作文件名。 googlebooks-eng-all-1gram-20120701-0/user/prema是同一个文件。

如果你想持久化文件名。复制前需要先删除已有文件,新建目录/user/prema;

bin/hadoop dfs -rm /user/prema;
bin/hadoop dfs -mkdir /user/prema;
bin/hadoop dfs -put /home/hadoop-user/googlebooks-eng-all-1gram-20120701-0 /user/prema

现在您应该能够在 hdfs 目录/user/prema 中看到该文件

bin/hadoop dfs -rm /user/prema

关于Hadoop hdfs 无法定位文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27023516/

相关文章:

python - 重用两个 MapReduce 作业的输出并将结果连接在一起

java - 使用 Hadoop 分布式缓存时出现 FileNotFoundException

sql-server - 我可以使用 Hadoop 加速慢速 SQL 存储过程吗?

sql-server - freebcp 因大量数据而停滞不前

oracle - 不使用 Scoop 将 Oracle 数据存储到 hadoop 层

hadoop - Splunk:HDFS 容量 N/A

python - 具有一些空值的数组上的 Spark Stats

hadoop - 无法从 Pig Latin 的 Hadoop HDFS 加载文件

hadoop - 在Hbase Shell中运行命令时的“The node/hbase is not in ZooKeeper”

hadoop - 以下示例在 Hadoop 中创建了多少个 block ?