Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
HDFS, mail # user - Context Object in Map Reduce


Copy link to this message
-
Re: Context Object in Map Reduce
Tanniru Govardhan 2013-07-26, 15:36
Thanks Manish. you are correct. I figured it out somehow.
This is what i had to change.

In the main class
*
Configuration config = new Configuration();
config.set("filename", "Syn-100n-8t-2l-2k.vars");
*
*JobConf conf = new JobConf(config,Hadoop_GNTS.class);*
*
*
In the Map class
*
public void configure(JobConf job)
  {
   myfilename = job.get("filename");
  }
*
*
*
Thanks
*
*
On Fri, Jul 26, 2013 at 10:56 AM, manish dunani <[EMAIL PROTECTED]>wrote:

> If u r using OutputCollector,Reporter then no need to use Context..Context
> works same as OutputCollector and Reporter.
>
> That is used to collect mapper's <key ,value> pair.
>
>
>
> On Fri, Jul 26, 2013 at 8:03 PM, manish dunani <[EMAIL PROTECTED]>wrote:
>
>> Can u please elaborate what is the code and what is error.??
>>
>> Then it will be much better to give the answer.
>>
>> Regards Manish Dunani..
>>
>>
>> On Fri, Jul 26, 2013 at 7:07 PM, Tanniru Govardhan <
>> [EMAIL PROTECTED]> wrote:
>>
>>> Hi everyone,
>>> I am trying to pass a string variable from Driver class to Mapper class.
>>> I came to know that i need to use context variable for this purpose.
>>> But the Mapper method i have used has a signature without context object.
>>> It is not allowing to change the method signature.(reporting syntax
>>> error)
>>> Can anyone please suggest me what can I do regarding this?
>>> I am very new to Map Reduce Programming.
>>>
>>> Here is the code:
>>>
>>> class Map<V> extends MapReduceBase implements Mapper<LongWritable, Text,
>>> Text, IntWritable>
>>> {
>>>     String myfilename;
>>>   private Text word = new Text();
>>>   private IntWritable var = new IntWritable();
>>>
>>>   public void map(LongWritable key, Text value, *Context context,*OutputCollector<Text, IntWritable> output, Reporter reporter)
>>> *//here is the error *
>>>  throws IOException
>>> {
>>>          Configuration conf = context.getConfiguration();
>>>              myfilename = conf.get("filename");
>>>              -- - - -- - -- -
>>>         }
>>>  public  void compute() throws Exception
>>>   {
>>>   Configuration config = new Configuration();
>>>       config.set("filename", "Syn-100n-8t-2l-2k.vars");
>>>
>>>     JobConf conf = new JobConf(Hadoop_GNTS.class);
>>>     -- - - - -- - -
>>> }
>>>
>>> Thanks
>>>
>>>
>>
>>
>> --
>> MANISH DUNANI
>> -THANX
>> +91 9426881954,+91 8460656443
>> [EMAIL PROTECTED]
>>
>
>
>
> --
> MANISH DUNANI
> -THANX
> +91 9426881954,+91 8460656443
> [EMAIL PROTECTED]
>