如果在windows下想运行本地模式来测试程序逻辑 ,需要在windows中配置环境变量:
%HADOOP_HOME% = d:/hadoop-2.7.3
%PATH% = %HADOOP_HOME%\bin
并且要将d:/hadoop-2.8.3的lib和bin目录替换成windows平台编译的版本
注意:集群需要进行时间同步,时间差别比较大的时候提交任务的时候会报时间不同步异常
//配置
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "hdfs://bigdata01:9000");
conf.set("mapreduce.framework.name","yarn");
conf.set("yarn.resourcemanager.hostname", "bigdata01");
conf.set("mapreduce.app-submission.cross-platform", "true");
数据:
1,4
2,5
3,4
2,5
2,4
3,4
2,6
1,4
4,7
5,8
5,9
6,11
7,12
6,10
10,15
11,16
12,18
13,17
需求:
求出这些线段的重合点
数据:
134 1341307 广东 惠州 移动 516000 0752 441300
134 1341308 广东 惠州 移动 516000 0752 441300
134 1341309 广东 惠州 移动 516000 0752 441300
134 1341310 广东 惠州 移动 516000 0752 441300
134 1341311 广东 惠州 移动 516000 0752 441300
134 1341312 广东 惠州 移动 516000 0752 441300
134 1341313 广东 惠州 移动 516000 0752 441300
需求:
求取出以上数据手机号前三位以及对应的运营商
数据:
15639120688 http://v.baidu.com/movie 3936 12058
13905256439 http://movie.youku.com 10132 538
15192566948 https://image.baidu.com 19789 5238
14542296218 http://v.baidu.com/tv 7504 13253
需求:求取网站流量的上行流量和下行流量,以及总流量
数据:
A:B,C,D,F,E,O
B:A,C,E,K
C:F,A,D,I
D:A,E,F,L
E:B,C,D,M,L
F:A,B,C,D,E,O,M
G:A,C,D,E,F
H:A,C,D,E,O
I:A,O
J:B,O
K:A,C,D
L:D,E,F
M:E,F,G
O:A,H,I,J
需求:求取共同好友
数据:多个文件
a.txt
hello hi…
b.txt
hello java ….
c.txt
hi java Hadoop….
结果
hello -> a.txt 5 b.txt 2 c.txt 1
java -> b.txt 3 c.txt 5
获取文件名的代码:
FileSplit fileSplit = (FileSplit)context.getInputSplit();
String fileName = fileSplit.getPath().getName();
数据:
{"movie":"1193","rate":"5","timeStamp":"978300760","uid":"1"}
{"movie":"661","rate":"3","timeStamp":"978302109","uid":"1"}
{"movie":"914","rate":"3","timeStamp":"978301968","uid":"1"}
{"movie":"3408","rate":"4","timeStamp":"978300275","uid":"1"}
需求:
每个电影的得分的平均值
数据同上:
需求:每个电影的评分的前20个数据
需求:求平均值比较高的前20个
map端的join和reducejoin