Hadoop MapReduce 错误:java.io.IOException: Illegal partition for 1660,1998-01-10 (-16) - 解决方法
"java.lang.Exception: java.io.IOException: Illegal partition for 1660,1998-01-10 (-16)\n\tat org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:492)\n\tat org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:552)\nCaused by: java.io.IOException: Illegal partition for 1660,1998-01-10 (-16)\n\tat org.apache.hadoop.mapred.MapTask$MapOutputBuffer.collect(MapTask.java:1096)\n\tat org.apache.hadoop.mapred.MapTask$NewOutputCollector.write(MapTask.java:727)\n\tat org.apache.hadoop.mapreduce.task.TaskInputOutputContextImpl.write(TaskInputOutputContextImpl.java:89)\n\tat org.apache.hadoop.mapreduce.lib.map.WrappedMapper$Context.write(WrappedMapper.java:112)\n\tat com.mystudy.pxkDazuoye.mapper.map(mapper.java:21)\n\tat com.mystudy.pxkDazuoye.mapper.map(mapper.java:10)\n\tat org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:146)\n\tat org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:799)\n\tat org.apache.hadoop.mapred.MapTask.run(MapTask.java:347)\n\tat org.apache.hadoop.mapred.LocalJobRunner$Job$MapTaskRunnable.run(LocalJobRunner.java:271)\n\tat java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)\n\tat java.util.concurrent.FutureTask.run(FutureTask.java:266)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\n中文\n怎么进行修改\n\n这个错误是因为数据被分配到了不合法的分区。需要检查代码中的分区逻辑,确保所有数据都被正确地分配到了合法的分区。可能需要对数据进行调整或修改代码逻辑来解决这个问题。
原文地址: https://www.cveoy.top/t/topic/oJR9 著作权归作者所有。请勿转载和采集!