[ 
https://issues.apache.org/jira/browse/MAPREDUCE-980?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12756752#action_12756752
 ] 

Philip Zeyliger commented on MAPREDUCE-980:
-------------------------------------------

My experience with generated objects (from a couple of years using protocol 
buffers) is that one ends up wrapping them often (preferably with composition). 
 

The generated class is responsible for serialization and deserialization, and 
the wrapper class is responsible for added logic.  It's hard to make the 
generator do something reasonable for logic (or even inheritance) 
cross-language.  Having a wrapper also allows you to have two ways to use 
something, in two different contexts, where you might want different 
surrounding logic.  (So, if you had an Avro schema for an Event, the code that 
generates the Event might use one wrapper, and the code that consumes it might 
use the raw object, or have a different object.)

> Modify JobHistory to use Avro for serialization instead of raw JSON
> -------------------------------------------------------------------
>
>                 Key: MAPREDUCE-980
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-980
>             Project: Hadoop Map/Reduce
>          Issue Type: New Feature
>            Reporter: Jothi Padmanabhan
>            Assignee: Doug Cutting
>             Fix For: 0.21.0
>
>         Attachments: MAPREDUCE-980.patch, MAPREDUCE-980.patch, 
> MAPREDUCE-980.patch, MAPREDUCE-980.patch
>
>
> MAPREDUCE-157 modifies JobHistory to log events using Json Format.  This can 
> be modified to use Avro instead. 

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

Reply via email to