1.文件大于128M,则split成两个.举例如果两个文件,一个文件150M,一个文件30M,先对30M的文件split,因为小于128M,则只有一个map,再对150Msplit,大于128M,split成2map.
2.reduce个数默认是一个,可以进行指定,指定后根据数据的key把数据分到不同的reduce上。
例如hadoop jar hadoop-examples.jar wordcount -Dmapred.reduce.tasks=2 /user/hadoop/ /user/hadoop/out
public class HashPartitioner<K, V> extends Partitioner<K, V> {
/** Use {@link Object#hashCode()} to partition. */
public int getPartition(K key, V value,
int numReduceTasks) {
return (key.hashCode() & Integer.MAX_VALUE) % numReduceTasks;
}
}