决策树在Eclipse Juno中完美运行。
但是当我试图在我的群集中运行它时,它显示错误。
在我的本地磁盘"n "
/user/sree
当我尝试hadoop fs -ls /user/sree/n
n中没有任何内容,我的/user/sree/n
中没有创建“中间”文件
为什么会这样?它在Eclipse中完美运行。
任何暗示。
**更新**
我将代码更新为
1.而不是
BufferedWriter bw = new BufferedWriter(new FileWriter(new File("n/intermediate"+id.current_index+".txt"), true));
Reduce.java
中的已更改为
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fs.create(new Path("n/intermediate"+id.current_index+".txt"), true)));
2.而不是
fstream = new FileInputStream("n/intermediate"+id.current_index+".txt");
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
GainRatio.java
中的已更改为
BufferedReader br = new BufferedReader(new InputStreamReader(fs.open(new Path("n/intermediate"+id.current_index+".txt"))));
正在执行,但尚未完全执行。
我无法获得最终结果。 我做错了什么。
答案 0 :(得分:2)
由于
BufferedWriter bw = new BufferedWriter(new FileWriter(new File("C45/intermediate"+id.current_index+".txt"), true));
bw.write(text);
写入本地磁盘而不是HDFS。因此,您必须在本地文件系统中查找它。