- 导包容易出错。尤其 Text 和 CombineTextInputFormat。
- Mapper 中第一个输入的参数必须是 LongWritable 或者 NullWritable,不可以是 IntWritable.报的错误是类型转换异常。
- java.lang.Exception: java.io.IOException: Illegal partition for 13926435656 (4),说明 Partition和 ReduceTask 个数没对上,调整 ReduceTask 个数。
- 如果分区数不是 1,但是 reducetask 为 1,是否执行分区过程。答案是:不执行分区过程。因为在 MapTask 的源码中,执行分区的前提是先判断 ReduceNum 个数是否大于 1。不大于1 肯定不执行。
- 在 Windows 环境编译的 jar 包导入到 Linux 环境中运行,hadoop jar wc.jar com.atguigu.mapreduce.wordcount.WordCountDriver /user/atguigu/ /user/atguigu/output
- 报如下错误:Exception in thread "main" java.lang.UnsupportedClassVersionError:com/atguigu/mapreduce/wordcount/WordCountDriver : Unsupported major.minor version 52.0 原因是 Windows 环境用的 jdk1.7,Linux 环境用的 jdk1.8。解决方案:统一 jdk 版本。
- 缓存 pd.txt 小文件案例中,报找