[
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 view.
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.