最大,最小值问题,前K个数问题,利用mapreduce解决方案
2016-11-21 17:40
337 查看
1,MapReduce求最大最小值问题
要想一次求得最大最小值,必须只有一个reduce
MAP类
(1)Map类中增加两个变量,max,min
(2)map函数中用取得的当前行的数据和max,min做比较,更新数据。
(3)clear函数中将max,min输出,输出格式为
<max,n1>
<min,n2>
Reduce类
(1)直接比较list中的最大值最小值,输出
2,求前K个数跟求最大值最小值类似
Map 类,
(1)Map类中增一个有K个元素的数组
(2)map函数中用取得的当前行的数据更新数组
(3)在clearup函数中输入K个数。
Reduce类
(1)Reduce类中增一个有K个元素的数组
(2)map函数中用取得的当前行的数据更新数组
(3)在clearup函数中输入K个数。
3,有一个文件150亿数据,构成是一个个的URL,现在求访问量前K个的HOST
居说可以一级mapreduce搞定,但是我想不出来方法,最后两级搞定,第一级Reduce用多个,第二级一个。
Map1类
(1)解析输入的URL
URL---->HOST+uri
输出<host,1>
Reduce1类
(1)reduce,统计每个host的访问次数
输出<host,n>
MAP2类
(1)定义一个K个大小的数组,元素为pair<host,n>
(2)读入<host,n>
以新输入的<host,n>来更新数组,
(3)在clearup中写数据到reduce.
KeyComparator类<加上以后,在Reduce2中处理前K个数就行>
修改关键字排序类,按关键字的出现次数对关键字(host)数据进行排序。
Reduce2类
(1)定义一个K个大小的数组,元素为pair<host,n>
(2)读入<host,n>
以新输入的<host,n>来更新数组,
(3)在clearup中写数据到reduce
突然想到了一个,一个MAP搞定的方法, MAP中增加一个map
(1)解析输入的URL
URL---->HOST+uri
如果map中有HOST,map[host]=map[host]+1 ,如果不存在 map[host]=1
Reduce1类
在clearup中对map中的数据排序,写出
要想一次求得最大最小值,必须只有一个reduce
MAP类
(1)Map类中增加两个变量,max,min
(2)map函数中用取得的当前行的数据和max,min做比较,更新数据。
(3)clear函数中将max,min输出,输出格式为
<max,n1>
<min,n2>
Reduce类
(1)直接比较list中的最大值最小值,输出
2,求前K个数跟求最大值最小值类似
Map 类,
(1)Map类中增一个有K个元素的数组
(2)map函数中用取得的当前行的数据更新数组
(3)在clearup函数中输入K个数。
Reduce类
(1)Reduce类中增一个有K个元素的数组
(2)map函数中用取得的当前行的数据更新数组
(3)在clearup函数中输入K个数。
3,有一个文件150亿数据,构成是一个个的URL,现在求访问量前K个的HOST
居说可以一级mapreduce搞定,但是我想不出来方法,最后两级搞定,第一级Reduce用多个,第二级一个。
Map1类
(1)解析输入的URL
URL---->HOST+uri
输出<host,1>
Reduce1类
(1)reduce,统计每个host的访问次数
输出<host,n>
MAP2类
(1)定义一个K个大小的数组,元素为pair<host,n>
(2)读入<host,n>
以新输入的<host,n>来更新数组,
(3)在clearup中写数据到reduce.
KeyComparator类<加上以后,在Reduce2中处理前K个数就行>
修改关键字排序类,按关键字的出现次数对关键字(host)数据进行排序。
Reduce2类
(1)定义一个K个大小的数组,元素为pair<host,n>
(2)读入<host,n>
以新输入的<host,n>来更新数组,
(3)在clearup中写数据到reduce
突然想到了一个,一个MAP搞定的方法, MAP中增加一个map
(1)解析输入的URL
URL---->HOST+uri
如果map中有HOST,map[host]=map[host]+1 ,如果不存在 map[host]=1
Reduce1类
在clearup中对map中的数据排序,写出
相关文章推荐
- JAVA利用RSA加密算法的长度限制问题解决方案注意: RSA加密明文最大长度117字节,解密要求密文最大长度为128字节,所以在加密和解密的过程中需要分块进行。 RSA加密对明文的长度是有限制的,如
- C++利用vector容器实现最大最小元问题
- 简单的最大最小问题:)
- 利用递推法求最小数生成问题,求阶乘问题
- DIV+CSS兼容解决DIV最大宽度和最小宽度问题
- MyEclipse 下利用Struts2进行Web开发的乱码问题的综合解决方案
- 利用最大堆和最小堆在线寻找中位数
- 最大最小值问题
- Java_int最大值加一和最小值减一问题
- RMQ 问题 POJ 3264 求解任意指定区间内的最小值和最大值
- hdu 1713 相遇周期 比较绕的最大公约,最小公倍问题
- DIV+CSS兼容解决DIV最大宽度和最小宽度问题
- 匹配问题(最大匹配,最小覆盖,最大独立集) 欢迎大家来讨论
- 利用函数逐行对表进行求最大数、最小数、N个最大数的平均值、N个最小数的平均值
- TSP问题之最大最小蚁群算法cpp实现
- Java 正则表达式最大,最小匹配问题
- 最小公倍数与最大公约数问题(NOIP竞赛原题)
- 最大子矩阵问题;枚举行的组合,然后利用一维最大子段和的DP算法;
- delphi 随机函数的利用random 取10个介于1000与2000之间的随机数,并计算它们的最大,最小值及总和
- 利用二维数组存储一个3行4列的单位矩阵,并输出最大值和最小值