2011-10-02 17 views
9
public static class Map extends MapReduceBase implements Mapper 

MapReduceBase, Mapper और JobConf Hadoop 0.20.203में पदावनत कर रहे हैं।MapReduceBase और मैपर पदावनत

अब हमें क्या उपयोग करना चाहिए?

संपादित करें 1 - Mapper और MapReduceBase के लिए, मैंने पाया हम सिर्फ करने के लिए Mapper

public static class Map extends Mapper 
      <LongWritable, Text, Text, IntWritable> { 
    private final static IntWritable one = new IntWritable(1); 
    private Text word = new Text(); 

    public void map(LongWritable key, Text value, 
     OutputCollector<Text, IntWritable> output, 
     Reporter reporter) throws IOException { 
    String line = value.toString(); 
    StringTokenizer tokenizer = new StringTokenizer(line); 
    while (tokenizer.hasMoreTokens()) { 
     word.set(tokenizer.nextToken()); 
     output.collect(word, one); 
    } 
    } 
} 

संपादित 2 फैली जरूरत है कि - JobConf के लिए हम इस तरह विन्यास का उपयोग करना चाहिए:

public static void main(String[] args) throws Exception { 
     Configuration conf = new Configuration(); 
     Job job = new Job(conf); 
     job.setMapperClass(WordCount.Map.class); 
    } 

संपादित करें 3 - मुझे नए एपीआई के अनुसार एक अच्छा ट्यूटोरियल मिला: http://sonerbalkir.blogspot.com/2010/01/new-hadoop-api-020x.html

+0

प्रलेखन का कहना है कि आपको क्या उपयोग करना चाहिए? आम तौर पर, जब कुछ को हटा दिया जाता है तो जावाडोक कहता है कि आपको इसके बजाय क्या उपयोग करना चाहिए। कॉन्फ़िगरेशन के लिए – rossum

उत्तर

7

जावाडोक में जानकारी है wh इस चित्रित कक्षाओं के इंस्टेड का उपयोग करने के लिए:

उदा। http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/mapred/JobConf.html

Deprecated. Use Configuration instead 

संपादित करें: आप Maven और खुले वर्ग घोषणा करें (F3) Maven का उपयोग स्वचालित रूप से स्रोत कोड डाउनलोड कर सकते हैं और आप स्पष्टीकरण के साथ जावाडोक टिप्पणियों की सामग्री दिखाई देगी।

+0

+ 1। धन्यवाद – JohnJohnGa

4

पुराने और नए एपीआई के बीच functionality बुद्धिमान नहीं है, सिवाय इसके कि पुराने एपीआई मानचित्र को धक्का/कार्यों को कम करने का समर्थन करता है, जबकि नया एपीआई both push and pull API का समर्थन करता है। हालांकि, नई एपीआई बहुत साफ और विकसित करने में आसान है।

नई एपीआई की शुरूआत के लिए JIRA है। साथ ही, पुराने एपीआई 0.21 में un-deprecated रहा है और release 0.22 or 0.23 में इसे हटा दिया जाएगा।

आप नए एपीआई के बारे में अधिक जानकारी प्राप्त कर सकते हैं या कभी-कभी 'संदर्भ ऑब्जेक्ट्स' here और here कहा जा सकता है।

संबंधित मुद्दे