由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - hadoop的combiner和partitioner的顺序是什么呢?
相关主题
问一个大数据 处理问题mapreduce 初级问题,请各位大牛指点
电面被问到hadoop了各位大牛,问个问题,怎么用 mapreduce 算平均数啊
职位和 candidate 数量的关系贡献一次电面题
电话面试一个design问题,看看怎么做median of N^2 numbers across N machines
请教MapReduce怎么找median写一段如何准备large-scale system design的面试吧
F家onsite面经一道大数据题,求最优解。
请教可以在线练习 map reduce 的地方?请问有朋友了解Continuuity这家公司么
关于mahout的一些问题发现一个单独测试Mapper和reducer的方式
相关话题的讨论汇总
话题: combiner话题: 顺序话题: hadoop话题: reducer
进入JobHunting版参与讨论
1 (共1页)
a**********0
发帖数: 422
1
在我自己写map reduce的时候有时候写combiner 但是很少有机会写partiioner
具体用的顺序如何 map -> combiner -> partioner -> reducer
也就是说 combiner必须在partioner之前呢
J****3
发帖数: 427
2
个人理解 partitioner 是将前面处理完的K-V pairs 按你的P 函数 决定这些数据所去
向的reducer。 combiner 是提前先处理map 出的结果 减少reduce part的负担, 大部
分combine的函数和reduce的函数也基本一致。
j*******t
发帖数: 223
3
大体顺序是这样的。有一点需要注意的是combiner的输出格式需要和map保证一样。即
不光是数据类型一样(这个编译器基本可以保证),含义也应该一样。
k1,v1 -> map -> k2,v2
k2,v2 -> combiner -> k2,v2
k2,v2 -> reduce -> k3,v3
需要注意的一点是combiner的行为在不同的版本不一样,具体可以参考HADOOP-3586,
https://issues.apache.org/jira/browse/HADOOP-3586
基本大意就是:combiner可能会运行0-N次,因此一个程序应该考虑到无论combiner调
用多少次,其结果都应该正确。
u*****o
发帖数: 1224
4
我想问问partitioner的作用是什么呢?
比如那个word count的例子
mapper input(line, text) --> output(word, frequency)
combiner input(word, frequency) --> output(word frequency)
combines results from multiple mappers..
Then we use reducer to sort words according to index (e.g. 26 reducers and
each take words for a particular alphabet).
这个例子中如果fit in partitioner呢?

【在 j*******t 的大作中提到】
: 大体顺序是这样的。有一点需要注意的是combiner的输出格式需要和map保证一样。即
: 不光是数据类型一样(这个编译器基本可以保证),含义也应该一样。
: k1,v1 -> map -> k2,v2
: k2,v2 -> combiner -> k2,v2
: k2,v2 -> reduce -> k3,v3
: 需要注意的一点是combiner的行为在不同的版本不一样,具体可以参考HADOOP-3586,
: https://issues.apache.org/jira/browse/HADOOP-3586
: 基本大意就是:combiner可能会运行0-N次,因此一个程序应该考虑到无论combiner调
: 用多少次,其结果都应该正确。

J****3
发帖数: 427
5
你可以自己实现partitioner based on Alphabets, for example, reducer1 output
words initial from A-F, reducer 2 output initial from G-J ...

【在 u*****o 的大作中提到】
: 我想问问partitioner的作用是什么呢?
: 比如那个word count的例子
: mapper input(line, text) --> output(word, frequency)
: combiner input(word, frequency) --> output(word frequency)
: combines results from multiple mappers..
: Then we use reducer to sort words according to index (e.g. 26 reducers and
: each take words for a particular alphabet).
: 这个例子中如果fit in partitioner呢?

j*******t
发帖数: 223
6
partitioner的作用就是对map过后的进行划分,用于确定在reduce端哪些kv pair放在
一个reducer里面(即在一个Iterator里面)。
要实现自己的partioner,需要继承Partitioner抽象类,并实现int
getPartition(KEY key, VALUE value, int numPartitions) 方法。hash是一个比较常
见的实现方法,一般情况下只有key会用到。
a**********0
发帖数: 422
7
没有人讲讲如果combiner和partitioner同时使用谁在前谁在后
1 (共1页)
进入JobHunting版参与讨论
相关主题
发现一个单独测试Mapper和reducer的方式请教MapReduce怎么找median
简单map reduce mean median, 傻逼回答F家onsite面经
map reduce word count请教可以在线练习 map reduce 的地方?
MapReduce的面试题关于mahout的一些问题
问一个大数据 处理问题mapreduce 初级问题,请各位大牛指点
电面被问到hadoop了各位大牛,问个问题,怎么用 mapreduce 算平均数啊
职位和 candidate 数量的关系贡献一次电面题
电话面试一个design问题,看看怎么做median of N^2 numbers across N machines
相关话题的讨论汇总
话题: combiner话题: 顺序话题: hadoop话题: reducer