hadoop-1.x的运行实例
我的环境是hadoop-0.20.2,eclipse:SDK-3.3.2,
源数据为:
- Apr 23 11:49:54 hostapd: wlan0: STA 14:7d:c5:9e:fb:84
- Apr 23 11:49:54 hostapd: wlan0: STA 14:7d:c5:9e:fb:84
- Apr 23 11:49:54 hostapd: wlan0: STA 14:7d:c5:9e:fb:84
- Apr 23 11:49:54 hostapd: wlan0: STA 14:7d:c5:9e:fb:84
- Apr 23 11:49:54 hostapd: wlan0: STA 14:7d:c5:9e:fb:84
- Apr 23 11:49:54 hostapd: wlan0: STA 14:7d:c5:9e:fb:84
想要获取的数据是:
- Apr 23 14:7d:c5:9e:fb:84
- Apr 23 14:7d:c5:9e:fb:84
- Apr 23 14:7d:c5:9e:fb:84
- Apr 23 14:7d:c5:9e:fb:84
- Apr 23 14:7d:c5:9e:fb:84
- Apr 23 14:7d:c5:9e:fb:84
运行时输入的参数是:
hdfs的输入和输出目录:即 hdfs://cMaster:/user/joe/in hdfs://cMaster:/user/joe/out
源代码:
- package hadoop;
- import java.io.IOException;
- import org.apache.hadoop.fs.Path;
- import org.apache.hadoop.conf.Configuration;
- import org.apache.hadoop.conf.Configured;
- import org.apache.hadoop.mapreduce.*;
- import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
- import org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;
- import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
- import org.apache.hadoop.io.*;
- import org.apache.hadoop.util.*;
- public class test extends Configured implements Tool{
- enum Counter{
- LINESKIP,
- }
- public static class Map extends Mapper<LongWritable,Text,NullWritable,Text>{
- public void map(LongWritable key,Text value,Context context)throws IOException,InterruptedException{
- String line=value.toString();
- try{
- String [] lineSplit=line.split(" ");
- String month=lineSplit[0];
- String time=lineSplit[1];
- String mac=lineSplit[6];
- Text out=new Text(month+' '+time+' '+mac);
- context.write(NullWritable.get(),out);
- }catch(java.lang.ArrayIndexOutOfBoundsException e){
- context.getCounter(Counter.LINESKIP).increment(1);
- return;
- }
- }
- }
- public int run(String[] args)throws Exception{
- Configuration conf=getConf();
- Job job=new Job(conf,"test");
- job.setJarByClass(test.class);
- FileInputFormat.addInputPath(job,new Path(args[0]));
- FileOutputFormat.setOutputPath(job,new Path(args[1]));
- job.setMapperClass(Map.class);
- job.setOutputFormatClass(TextOutputFormat.class);
- job.setOutputKeyClass(NullWritable.class);
- job.waitForCompletion(true);
- return job.isSuccessful()?0:1;
- }
- public static void main(String[] args)throws Exception{
- int res=ToolRunner.run(new Configuration(),new test(),args);
- System.exit(res);
- }
- }
hadoop-1.x的运行实例的更多相关文章
- 在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例
在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例 ...
- MapReduce编程入门实例之WordCount:分别在Eclipse和Hadoop集群上运行
上一篇博文如何在Eclipse下搭建Hadoop开发环境,今天给大家介绍一下如何分别分别在Eclipse和Hadoop集群上运行我们的MapReduce程序! 1. 在Eclipse环境下运行MapR ...
- 3 weekend110的hadoop中的RPC框架实现机制 + hadoop中的RPC应用实例demo
hadoop中的RPC框架实现机制 RPC是Remotr Process Call, 进程间的远程过程调用,不是在一个jvm里. 即,Controller拿不到Service的实例对象. hadoop ...
- React 系列文章(1): npm 手动搭建React 运行实例 (新手必看)
摘 要 刚接触React 开发, 在摸索中构建react 运行环境,总会遇到各种坑:本文,将用最短时间解决webpack+react 环境搭建问题. 1.如果你还没有React基础 看这里. 2.如果 ...
- 执行hadoop自带的WordCount实例
hadoop 自带的WordCount实例可以统计一批文本文件中各单词出现的次数.下面介绍如何执行WordCount实例. 1.启动hadoop [root@hadoop ~]# start-all. ...
- hadoop一代集群运行代码案例
hadoop一代集群运行代码案例 集群 一个 master,两个slave,IP分别是192.168.1.2.192.168.1.3.192.168.1.4 hadoop版 ...
- [转]Hadoop集群_WordCount运行详解--MapReduce编程模型
Hadoop集群_WordCount运行详解--MapReduce编程模型 下面这篇文章写得非常好,有利于初学mapreduce的入门 http://www.nosqldb.cn/1369099810 ...
- win应用只允许单个实例运行,并将已运行实例窗口置顶
关键词:windows,c++,桌面应用,单个实例,窗口置顶 目标:1.判断本程序是否已有一个实例在运行.2.若有,则激活已在运行的实例(将其窗口置顶),并退出当前运行. 1.使用semaphore来 ...
- 如何修改Docker已运行实例的端口映射
如何修改Docker已运行实例的端口映射 Docker的端口映射,往往出现在两个阶段需要处理: 1.是在docker启动前就已经确定好,哪个docker实例映射哪个端口(往往这个情况比较,需要提前做规 ...
- 【Hadoop离线基础总结】Apache Hadoop的三种运行环境介绍及standAlone环境搭建
Apache Hadoop的三种运行环境介绍及standAlone环境搭建 三种运行环境 standAlone环境 单机版的hadoop运行环境 伪分布式环境 主节点都在一台机器上,从节点分开到其他机 ...
随机推荐
- PAT (Advanced Level) 1065. A+B and C (64bit) (20)
因为会溢出,因此判断条件需要转化.变成b>c-a #include<cstdio> #include<cstring> #include<cmath> #in ...
- 'xcopy' 'ipconfig'。。。 不是内部或外部命令,也不是可运行的程序 或批处理文件
最近在win8下安装软件的时候,总是报 "xxx不是内部或外部命令,也不是可运行的程序 或批处理文件" 的错误 . 百思不得其解 打开cmd 或 powerShell 输入xco ...
- [iOS]C语言技术视频-12-指针变量练习二(数组打印)
下载地址: 链接: http://pan.baidu.com/s/1mg7ZwUW 密码: p8e6
- 读书笔记——Java IO
IO流的典型使用方式 1.缓存输入文件 BufferedReader in=new BufferedReader( new FileReader(文件名字) ); String s; StringBu ...
- [iOS]C语言技术视频-07-函数的定义
下载地址: 链接: http://pan.baidu.com/s/1mgiWSqc 密码: 2q9k
- 自动安装脚本-------------基于LVMP搭建Nagios 监控
Mysql初始化参数(mysql-5.6.31) /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local ...
- PHP 多线程、多进程
多线程:PHP其实并不支持多线程,只是通过一些扩展或者socket方式伪装成多线程,实质不是的.在PHP 5.3 以上版本,使用 pthreads PHP扩展,可以使PHP真正地支持多线程:或者使用 ...
- MAC平台下mysql7.5的安装
1.下载mysql(DMG格式64位的版本) http://dev.mysql.com/downloads/mysql/ 2.安装mysql 待下载*.dmg文件后双击,运行该安装文件 3.无限下一步 ...
- LPC1788的EMC驱动norflash
Norflash型号为sst39vf32 #ifndef __NORFLASH_H_ #define __NORFLASH_H_ #include "common.h" #incl ...
- php部分--文件操作
php中的文件指的是文件和文件夹,不是单指文件. 1.判断文件(判断是文件还是文件夹) 找文件,输出结果为file,代表的是文件. var_dump(filetype("./aa.txt&q ...