Hadoop类型
Hadoop的类型全部在hadoop.io包中,下表是java与hadoop类型的对应关系
Java |
Hadoop |
|
long |
org.apache.hadoop.io.LongWritable |
|
Int |
org.apache.hadoop.io.IntWritable |
|
Byte |
org.apache.hadoop.io.ByteWritable |
|
boolean |
org.apache.hadoop.io.BooleanWritable |
|
double |
org.apache.hadoop.io.DoubleWritable |
|
float |
org.apache.hadoop.io.FloatWritable |
|
string |
org.apache.hadoop.io.Text |
|
null |
org.apache.hadoop.io.NullWritable |
NullWritable.get()获取实例 |
Set,map,list |
org.apache.hadoop.io.ArrayWritable |
|
Bytes |
org.apache.hadoop.io.BytesWritable |
存储音频视频 |
WordCount实例
1:编写代码
package mapreduce;
import java.io.IOException;
import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.input.TextInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* hdfs上的hello中的内容为
tiger pig
pig cat dog
dog bird cat
tiger house
bus bike bus car
* @author think
*
*/
public class WordCount {
public static void main(String[] args) throws Exception {
String inPath = args[0];
Path outPath = new Path(args[1]);
//1:hdfs configuration,get SystemFile Object
Configuration conf = new Configuration();
URI uri = new URI("/");// URI uri = new URI("hdfs://192.168.79.128:9000/");
FileSystem fileSystem = FileSystem.get(uri, conf);
if (fileSystem.exists(outPath)) {
fileSystem.delete(outPath, true);
}
// 2:job object
String jobName = WordCount.class.getName();
Job job = Jo