gpt4 book ai didi

java - hadoop编译——在dfs文件中

转载 作者:可可西里 更新时间:2023-11-01 16:50:41 25 4
gpt4 key购买 nike

我想用下面的命令编译hadoop的例子,但是出现了错误: enter image description here

$ mkdir wordcount_classes
$ javac -classpath ${HADOOP_HOME}/hadoop-${HADOOP_VERSION}-core.jar -d wordcount_classes WordCount.java
$ jar -cvf /usr/joe/wordcount.jar -C wordcount_classes/ .

Assuming that:

/usr/joe/wordcount/input - input directory in HDFS
/usr/joe/wordcount/output - output directory in HDFS

Sample text-files as input:

$ bin/hadoop dfs -ls /usr/joe/wordcount/input/
/usr/joe/wordcount/input/file01
/usr/joe/wordcount/input/file02

$ bin/hadoop dfs -cat /usr/joe/wordcount/input/file01
Hello World Bye World

$ bin/hadoop dfs -cat /usr/joe/wordcount/input/file02
Hello Hadoop Goodbye Hadoop

最佳答案

/usr/joe 是本地的,正如您在第一行执行 ls 命令时所见。第二个命令需要在 HDFS 位置进行输入和输出,但 /usr/joe 在 HDFS 上不存在。您需要将数据移动到 HDFS 上,然后执行命令。例如:

#This creates a folder "wordcount/input" in your HDFS home directory
hdfs dfs -mkdir -p wordcount/input
hdfs dfs -put /usr/joe/wordcount/input/* wordcount/input

关于java - hadoop编译——在dfs文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33566005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com