- 1、本文档共57页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Hadoop研究概要1
*;*;*;*;*;*;*; 云计算的来源;*;*;*;*;*;*;Hadoop发展历程;Hadoop子项目简介;;分布式文件系统—HDFS;分布式文件系统—HDFS;分布式文件系统—HDFS;分布式文件系统—HDFS;分布式文件系统—HDFS;分布式数据处理模型—MapReduce;分布式数据处理模型—MapReduce;分布式数据处理模型—MapReduce;分布式数据处理模型—MapReduce;Hadoop与RDBMS对比;HADOOP的应用案例(一);HADOOP的应用案例(二);HADOOP的应用案例(三);*;*;系统环境
运行环境(3节点集群)
CPU/内存/硬盘:2C/4G/200G
操作系统:Suse Linux 10
软件:Apache Hadoop 0.20.2
服务:分布式文件系统HDFS、并行计算框架MapReduce
网络带宽: 1Gbps
开发环境
Eclipse
Hadoop-Eclipse-Plugin 插件;系统输入
输入文件:30万XML文件构成的500M文件,其存储在HDFS 分布式文件系统中;程序处理流程;public static void main(String[] args) throws Exception {
Configuration conf = new Configuration();
if (args.length != 3) {
System.err.println(Usage: tnnm count in out filter);
System.exit(2);
}
Job job = new Job(conf, key count);
//获取文件类型的过滤规则,例:[N|A]B[S|H]-0100*-2010*
job.getConfiguration().set(filterFile, args[2]);
job.setJarByClass(KeyCount.class);//设置运行的jar类
job.setMapperClass(KeyCountMapper.class);//设置 统计文件类型数量的 map类
job.setCombinerClass(KeyCountReducer.class);
job.setReducerClass(KeyCountReducer.class);//设置 统计文件类型数量的reduce类
job.setOutputKeyClass(Text.class);//设置 reduce函数的 输出key类型
job.setOutputValueClass(IntWritable.class);//设置 reduce函数的 输出 value类型
FileInputFormat.addInputPath(job, new Path(args[0])); //设置 输入路径
FileOutputFormat.setOutputPath(job, new Path(args[1]));//设置输出路径
job.waitForCompletion(true);
};public static class KeyCountMapper extends MapperObject, Text, Text, IntWritable{
public void map(Object key, Text value, Context context ) throws IOException, InterruptedException {
String filtstr = context.getConfiguration().get(“filterFile”);//获取过滤规则
//value 对应分片文件中的一行数据,前27位为文件名
String keyval = value.toString().substring(0,27);//NBS010011101015552//根据正则表达式,检验文件类型是否符合要求,将符合要求的放入map输出端
if(checkRegex(keyval,filtstr))
{
//以 NBS 等作为键,统计不同NBS下的数据信息
context.write(new Text(keyval.substring(0,3)), new IntWritable(1));
}
}
};public static class
文档评论(0)