[
https://issues.apache.org/jira/browse/MAPREDUCE-1287?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12789323#action_12789323
]
Ed Mazur commented on MAPREDUCE-1287:
-------------------------------------
I haven't ran this, but here's a quick analysis:
- Cost: (_number of map output pairs_)*(_cost of "reducers == 1" check_)
- Gain: (_number of map output pairs_)*(_cost of key's hashCode()_), but only
in the case of 1 reducer (no gain otherwise)
Your suggestion of moving this into the framework makes a lot of sense. That
way you only have to check for the 1 reducer case when you assign the
partitioner and not for every map output, essentially eliminating the cost of
the optimization.
> HashPartitioner calls hashCode() when there is only 1 reducer
> -------------------------------------------------------------
>
> Key: MAPREDUCE-1287
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-1287
> Project: Hadoop Map/Reduce
> Issue Type: Improvement
> Affects Versions: 0.22.0
> Reporter: Ed Mazur
> Assignee: Ed Mazur
> Priority: Minor
> Fix For: 0.22.0
>
> Attachments: MAPREDUCE-1287.2.patch, MAPREDUCE-1287.3.patch,
> MAPREDUCE-1287.patch
>
>
> HashPartitioner could be optimized to not call the key's hashCode() if there
> is only 1 reducer.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.