hadoop-mapreduce-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jay Booth (JIRA)" <j...@apache.org>
Subject [jira] Commented: (MAPREDUCE-326) The lowest level map-reduce APIs should be byte oriented
Date Tue, 16 Feb 2010 17:37:28 GMT

    [ https://issues.apache.org/jira/browse/MAPREDUCE-326?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12834327#action_12834327

Jay Booth commented on MAPREDUCE-326:

Regarding what users want/need, I think a good way to view this would be as analoguous to
the FSDirectory and IndexInput classes in Lucene.  They could be marked "Expert" and most
users never have to mess with them -- but users who do want to use them have the option. 
Then the higher level classes build on the new byte-level framework to provide a user friendly

I know I'd definitely be interested in this from a user perspective, if we have access to
this API we could write an internal framework which would be much more appropriate for our
needs than our current setup.  Specifically, the option to launch an arbitrary runtime and
give it it's inputsplit information over STDIN would be really useful for us, could tell our
Mapper and Reducer classes if they need to initialize any business services prior to the main
run, recycle those services across runs, allow more flexibility with custom serializers, make
it easier to involve a complicated series of InputFormats..  (we need CombineFileInput and
MultipleInput and a custom internal SerDe, which in some cases necessitates redundant "gather
jobs" prior to "processing jobs").

In short, this would IMO be a godsend to advanced users, while not inconveniencing the standard
use case and probably making things a little bit nicer for MapReduce developers once this
refactor is complete (separation of concerns and all that).

> The lowest level map-reduce APIs should be byte oriented
> --------------------------------------------------------
>                 Key: MAPREDUCE-326
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-326
>             Project: Hadoop Map/Reduce
>          Issue Type: Improvement
>            Reporter: eric baldeschwieler
>         Attachments: MAPREDUCE-326-api.patch, MAPREDUCE-326.pdf
> As discussed here:
> https://issues.apache.org/jira/browse/HADOOP-1986#action_12551237
> The templates, serializers and other complexities that allow map-reduce to use arbitrary
types complicate the design and lead to lots of object creates and other overhead that a byte
oriented design would not suffer.  I believe the lowest level implementation of hadoop map-reduce
should have byte string oriented APIs (for keys and values).  This API would be more performant,
simpler and more easily cross language.
> The existing API could be maintained as a thin layer on top of the leaner API.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message