我已经成功安装了ubuntu 12.04和hadoop 2.4.0.
输入JPS命令后,我发现输出如下
4135 jps
2582 SeconadaryNameNode
3143 NodeManager
2394 Namenode
2391 Datanode
3021 ResourceManager
现在我想运行wordcount的例子。
我创建了一个.txt文件,里面有一些内容
现在每当我尝试通过以下命令将其复制到hadoop HDFS时
hdfs -copyFromLocal /app/hadoop/tmp/input.txt /wordcount/input.txt
(路径中的"wordcount"是我创建的目录)
但是它显示
unrecognised option: -copyFromLocal
could not create the java virtual machine
我做错了什么?
您正在使用的命令是旧的。试,
hadoop fs -mkdir -p /wordcount/input
hadoop fs -put /app/hadoop/tmp/input.txt /wordcount/input/input.txt
在本例中,您需要将输出目录指定为/wordcount/output
,并且在运行作业之前该目录不应该存在。如果是这样,工作就会失败。所以你可以删除目录
hadoop fs -rm -R /wordcount/output
编辑:查看输出文件,检查:
hadoop fs -ls /wordcount/output
要查看控制台上的输出,使用以下命令:
hadoop fs -cat /wordcount/output/part*
Edit 2:更新的Hadoop CLI使用:
hdfs dfs <your_command_here>
例如,hdfs dfs -ls /
同样,如果你想读取gzip
文件,你可以使用这个,
hdfs dfs -cat /wordcount/output/part* | gzip -d -u
你忘了dfs
hdfs dfs -copyFromLocal /blar /blar