MapReduce-流量统计求和-排序-Mapper和Reducer编写
定义FlowMapper
package cn.learn.mapreduce_sort;import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;import java.io.IOException;public class FlowCountSortMapper extends Mapper<LongWritable,Text,FlowBean,Text> {@Overrideprotected void map(LongWritable key, Text value, Context context) throws IOException,
InterruptedException {FlowBean flowBean = new FlowBean();String[] split = value.toString().split("\t");//获取手机号,作为V2String phoneNum = split[0];//获取其他流量字段,封装flowBean,作为K2flowBean.setUpFlow(Integer.parseInt(split[1]));flowBean.setDownFlow(Integer.parseInt(split[2]));flowBean.setUpCountFlow(Integer.parseInt(split[3]));flowBean.setDownCountFlow(Integer.parseInt(split[4]));//将K2和V2写入上下文中context.write(flowBean, new Text(phoneNum));}
}
定义FlowReducer
package cn.learn.mapreduce_sort;import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Reducer;import java.io.IOException;public class FlowCountSortReducer extends Reducer<FlowBean,Text,Text,FlowBean> {@Overrideprotected void reduce(FlowBean key, Iterable<Text> values, Context context) throws
IOException, InterruptedException {for (Text value : values) {context.write(value, key);}}
}
MapReduce-流量统计求和-排序-Mapper和Reducer编写相关推荐
- MapReduce TopK统计加排序
Hadoop技术内幕中指出Top K算法有两步,一是统计词频,二是找出词频最高的前K个词.在网上找了很多MapReduce的Top K案例,这些案例都只有排序功能,所以自己写了个案例. 这个案例分两个 ...
- MapReduce-流量统计求和-排序-JobMain代码和测试运行
程序main函数入口 package cn.learn.mapreduce_sort;import cn.learn.mapreduce_flowcount.FlowCountReducer; imp ...
- MapReduce-流量统计求和-排序-FlowBean编写
需求二: 上行流量倒序排序(递减排序) 分析,以需求一的输出数据作为排序的输入数据,自定义FlowBean,以FlowBean为map输出的key,以手机号作为Map输出的value,因为MapRed ...
- 【MapReduce】实战:流量统计(完整Java代码)
[MapReduce]系列学习笔记: 第一部分:基本介绍 第二部分:MapReduce的编程 第三部分:MapReduce的分区 第四部分:MaoReduce的排序 第五部分:MapReduce实战: ...
- 使用Mapreduce案例编写用于统计文本中单词出现的次数的案例、mapreduce本地运行等,Combiner使用及其相关的知识,流量统计案例和流量总和以及流量排序案例,自定义Partitioner
工程结构: 在整个案例过程中,代码如下: WordCountMapper的代码如下: package cn.toto.bigdata.mr.wc; import java.io.IOException ...
- MapReduce编程规范及实践(流量统计)
一.MapReduce编码规范 Map阶段2个步骤 设置 InputFormat 类, 将数据切分为 Key-Value(K1和V1) 对, 输入到第二步 自定义 Map 逻辑, 将第一步的结果转换成 ...
- MapReduce-流量统计求和-FlowBean和Mapper代码编写
流量统计 需求一: 统计求和 统计每个手机号的上行流量总和,下行流量总和,上行总流量之和,下行总流量之和分析:以手机号码作为key值,上行流量,下行流量,上行总流量,下行总流量四个字段作为value值 ...
- Mapreduce的序列化和流量统计程序开发
一.Hadoop数据序列化的数据类型 Java数据类型 => Hadoop数据类型 int IntWritable float FloatWritable long LongWritable d ...
- 027_编写MapReduce的模板类Mapper、Reducer和Driver
模板类编写好后写MapReduce程序,的模板类编写好以后只需要改参数就行了,代码如下: 1 package org.dragon.hadoop.mr.module; 2 3 import java. ...
最新文章
- 8.VMware View 4.6安装与部署-connection server(View Transfer Server)
- 2021 年4月数据库流行度排行榜出炉!Snowflake 和 Clickhouse上升迅速!
- php框架中什么是渲染,thinkPHP5框架渲染模板的3种方式简述
- mindray心电监护仪使用说明_怎么看监护仪上的参数
- LeetCode 1338. 数组大小减半
- shell学习过程中的错误集锦
- Flink kafka source sink 源码解析
- mysql generator 命令_Mybatis使用命令生成逆向工程的方法
- 盘点常用的IDC综合业务、财务及用户管理平台
- 点餐系统+小程序常见问题解决(2022年最新版)
- c语言结构体投票系统,结构体之投票系统
- 鸿蒙系统怎么安装网易云音乐,网易云音乐鸿蒙版 - 魔法系统之家下载
- 虚拟化查看服务器sn,linux 查看服务器sn号
- PCI-E 5.0标准正式公布!速度再次翻番达32GT/s
- SER5 5500U 黑苹果系统安装教程
- 基于微信小程序的在线免费小说阅读系统
- GaitGAN: Invariant Gait Feature Extraction Using Generative Adversarial Networks论文翻译以及理解
- Ubuntu PPA 使用指南
- 2021年博士研究生招生大概率延期举行
- 【博学谷学习记录】超强总结,用心分享|前端开发基础知识总结(js一)