hadoop-mapreduce-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sandy Ryza <sandy.r...@cloudera.com>
Subject Re: Generic output key class
Date Sun, 10 Feb 2013 19:07:47 GMT
Hi Amit,

One way to accomplish this would be to create a custom writable
implementation, TextOrIntWritable, that has fields for both.  It could look
something like:

class TextOrIntWritable implements Writable {
  private boolean isText;
  private Text text;
  private IntWritable integer;

  void writeFields(DataOutput out) {
    out.writeBoolean(isText);
    if (isText) {
      text.writeFields(out);
    } else {
      integer.writeFields(out);
    }
  }

  [... readFields method that works in a similar way]
}

-Sandy

On Sun, Feb 10, 2013 at 4:00 AM, Amit Sela <amits@infolinks.com> wrote:

> Hi all,
>
> Has anyone ever used some kind of a "generic output key" for a mapreduce
> job ?
>
> I have a job running multiple tasks and I want them to be able to use both
> Text and IntWritable as output key classes.
>
> Any suggestions ?
>
> Thanks,
>
> Amit.
>

Mime
View raw message