我是Hadoop的新手。我用单输入文件和单输出文件完成了字数统计程序。现在我想将2个文件作为输入并将该输出写入单个文件。我试过这样:
FileInputFormat.setInputPaths(conf, new Path(args[0]), new Path(args[1]));
FileOutputFormat.setOutputPath(conf, new Path(args[2]));
这是终端中的命令:
hadoop jar test.jar Driver /user/in.txt /user/sample.txt /user/out
当我运行它时,它将sample.txt作为输出目录并说:
Output directory hdfs://localhost:9000/user/sample.txt already exists
任何人都可以帮我吗?
答案 0 :(得分:2)
可能是因为它将驾驶员作为你的第一个参数。你为什么不这样试试呢。
hadoop jar test.jar /user/in.txt /user/sample.txt /user/out
答案 1 :(得分:1)
如果您提到的所有输入文件都在一个文件夹中(/user
),则替换
hadoop jar test.jar Driver /user/in.txt /user/sample.txt /user/out
用这个
hadoop jar test.jar Driver /user /user/out
这会将/user
目录中的所有文件作为HDFS中user/out
文件夹中的输入和输出。