mapreduce课上实验
Posted 990906lhc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mapreduce课上实验相关的知识,希望对你有一定的参考价值。
今天我们课上做了一个关于数据清洗的实验,具体实验内容如下:
1.数据清洗:按照进行数据清洗,并将清洗后的数据导入hive数据库中;
2.数据处理:
·统计最受欢迎的视频/文章的Top10访问次数 (video/article)
·按照地市统计最受欢迎的Top10课程 (ip)
·按照流量统计最受欢迎的Top10课程 (traffic)
3.数据可视化:将统计结果倒入mysql数据库中,通过图形化展示的方式展现出来。
本次主要是因为自己尚未掌握Hive的操作,之后得以请教本宿舍的大佬将hive 配置完成。
代码如下:
1 public static class Map extends Mapper<Object , Text , Text,Text >{ 2 private static Text ip=new Text(); 3 // private static Text date=new Text(); 4 // private static Text type=new Text(); 5 // private static Text id=new Text(); 6 private static Text traffic=new Text(); 7 public void map(Object key,Text value,Context context) throws IOException, InterruptedException{ 8 String line=value.toString(); 9 String arr[]=line.split(","); 10 traffic.set(arr[0]); 11 String str[]=arr[1].split("[:]|[/]|[+]"); 12 String s=str[2]+"-"+"11"+"-"+str[0]+" "+str[3]+":"+str[4]+":"+str[5]; 13 ip.set(s+","+str[0]+","+arr[3]+","+arr[4]+","+arr[5]); 14 context.write(traffic,ip); 15 } 16 } 17 public static class Reduce extends Reducer< IntWritable, Text, Text, Text>{ 18 public void reduce(Text key,Iterable<Text> values,Context context) throws IOException, InterruptedException{ 19 for(Text val:values){ 20 context.write(key,val); 21 } 22 } 23 }
最后得到以下输出结果:
以上是关于mapreduce课上实验的主要内容,如果未能解决你的问题,请参考以下文章
2017-2018-1 《信息安全系统设计基础》 20155322 十六周课上实践
hadoop学习之----------IntelliJ IDEA上实现MapReduce中最简单的单词统计的程序(本地 和 hadoop 两种实现方式)