云计算实验报告 - 图文(5)

2020-06-08 12:32

(4) 在eclipse中编译好源代码后,导出程序的jar包,供在集群上使用。

2.在集群上运行程序

(1) 启动集群,通过jps命令查看master,slave上启动的服务列表,结果如

下:

(2) 在集群环境下运行该程序jar包(UserNameCount.jar),结果如下:

(3) 查看集群环境下启动程序生成的结果,即output文件,结果如下:

(4) 数据统计结果在part-r-00000中,具体内容如下,

7、源代码:

package hadoop;

import java.io.IOException;

import java.util.StringTokenizer;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.Path;

import org.apache.hadoop.io.IntWritable; 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;

public class UserNameCount {

public static class UserNameCountMap extends

Mapper {

private final IntWritable one = new IntWritable(1); private Text word = new Text();

public void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException { String line = value.toString();

StringTokenizer token = new StringTokenizer(line); while (token.hasMoreTokens()) { word.set(token.nextToken()); context.write(word, one); } } }

public static class UserNameCountReduce extends

Reducer {

public void reduce(Text key, Iterable values,

Context context) throws IOException, InterruptedException { int sum = 0;

for (IntWritable val : values) { sum += val.get(); }

context.write(key, new IntWritable(sum)); } }

public static void main(String[] args) throws Exception {

}

Configuration conf = new Configuration(); Job job = new Job(conf);

job.setJarByClass(UserNameCount.class); job.setJobName(\

job.setOutputKeyClass(Text.class);

job.setOutputValueClass(IntWritable.class); job.setMapperClass(UserNameCountMap.class); job.setReducerClass(UserNameCountReduce.class); job.setInputFormatClass(TextInputFormat.class); job.setOutputFormatClass(TextOutputFormat.class);

FileInputFormat.addInputPath(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); job.waitForCompletion(true); }


云计算实验报告 - 图文(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:檀巷小学语文作业规范要求

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: