MapReduce笔记-Bug汇总

1、reduce 输出路径必须是新创建的。不能已经存在

1
Exception in thread "main" org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://cs1:9000/flowout01 already exists

2、在初始化 job 的时候, 没有传 conf , 导致后面一直找不到文件, 因为不知道到哪里去找

3、Text导包倒错, 导的时候要注意

应该是这个 import org.apache.hadoop.io.Text;

4、进行字符串拼接的时候,把 StringBuilder 写到了 reduce 方法外, 这样导致 sb 会越来越多,当然,也可以每次拼接完了清空

类似于这样

1
2
3
4
5
6
7
8
9
10
11
12
13
14
A	F,I,O,K,G,D,C,H,B
B F,I,O,K,G,D,C,H,B,E,J,F,A
C F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F
D F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L
E F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H
F F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G
G F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M
H F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M,O
I F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M,O,O,C
J F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M,O,O,C,O
K F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M,O,O,C,O,O,B
L F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M,O,O,C,O,O,B,D,E
M F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M,O,O,C,O,O,B,D,E,E,F
O F,I,O,K,G,D,C,H,B,E,J,F,A,B,E,K,A,H,G,F,H,C,G,F,E,A,K,L,A,B,L,G,M,F,D,H,C,M,L,A,D,G,M,O,O,C,O,O,B,D,E,E,F,A,H,I,J,F

4、mapreduce执行错误Mapper.\错误

  • Mapper & Reducer 写成内部类的时候,有没有加上 static
  • Bean类有没有无参构造

5、排序过程中,自定义了排序类,bean类的 compareTo()方法,只写了按照分数大小排序。

会出现如下错误: 课程并没有分组

没有在相同的一组课程中比较分数, 而是比较的所有的分数

1
2
3
4
5
6
7
8
computer	huangjiaju	83.2
math huangxiaoming 83.0
english huanglei 83.0
math huangjiaju 82.28571428571429
algorithm huangjiaju 82.28571428571429
computer huanglei 74.42857142857143
english liuyifei 74.42857142857143
...

此时应该在Bean对象中做如下事情

  • 相同课程的按照分数降序排序
  • 课程名按照自然(升序)排序
  • 换言之,就是CustomBean 对象要输出的数据是 组名升序排序,组内按成绩降序排序
  • 具体分析参阅
如果帮到你, 可以给我赞助杯咖啡☕️
0%