所以我做这个项目是为了一门使用mapreduce的课程。为了测试一切是否正常工作,我们必须设置Java8和Maven3.6.3。为了检查是否一切正常,我们必须运行
mvn -DskipTests install
这运行得很完美,maven输出“构建成功”。但是,当我运行讲师提供的本地测试时,它会给出一条错误消息。我跑了
mvn -Dtest=nl.uva.bigdata.hadoop.exercise1.WordCountLocalTest test
不确定测试是如何进行的,只是以防万一。下面的错误消息是
错误测试:countwords(nl.uva.bigdata.hadoop.exercise1.wordcountlocaltest):c:\users\megiel~1\appdata\local\temp\mahout-wordcountlocaltest-4945559833306780672\output\part-r-00000(系统找不到指定的文件)
我认为错误消息可以归结为输出的以下部分。
2021-02-12 20:27:32,313 warn[thread-3]mapred.localjobrunner(localjobrunner。java:run(560))-job\u local770835545\u 0001 java.lang.exception:org.apache.hadoop.mapreduce.task.reduce.shuffle$shuffleerror:org.apache.hadoop.mapred.localjobrunner$job.runtasks(localjobrunner)上localfetcher 1中的shuffle错误。java:462)在org.apache.hadoop.mapred.localjobrunner$job.run(localjobrunner。java:529)原因:org.apache.hadoop.mapreduce.task.reduce.shuffle$shuffleerror:localfetcher#1中的shuffle错误
我在stackoverflow上发现了一个类似的问题,但是那里提出的解决方案对我没有帮助。我将其添加到一个名为hadoopjob的文件中,其中配置了许多关于“job”的设置。
job.getConfiguration().setStrings("mapreduce.reduce.shuffle.memory.limit.percent", "0.15");
暂无答案!
目前还没有任何答案,快来回答吧!