分享

Hadoop context是怎么被实例化的

spiderinfo 发表于 2013-10-16 13:40:55 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 1 6590
Hadoop context是怎么被实例化的
感觉没有被实例化 直接调用的context.write
很是困惑 ,求解

已有(1)人评论

跳转到指定楼层
pig2 发表于 2017-3-4 19:44:54
如下面其实已经被实例化,直接调用即可
[mw_shl_code=java,true]public static class MyMapper1 extends Mapper<LongWritable, Text, Text, NullWritable>{  
        @Override  
        protected void map(LongWritable key, Text value, Mapper<LongWritable, Text, Text, NullWritable>.Context context)  
                throws IOException, InterruptedException {  
         
            FileSplit fileSplit=(FileSplit) context.getInputSplit();  
            String pathname=fileSplit.getPath().getName();  
            JobID jobid=context.getJobID(); //获取jobid  
            LongWritable keyout=context.getCurrentKey(); //获取key偏移量  
            Text valueout=context.getCurrentValue();  //获取一行的值  
            String jobname=context.getJobName();    //获得job名字  
            TaskAttemptID taskid=context.getTaskAttemptID();    //获得taskid  
            float progress=context.getProgress();   //获取任务执行进度  
            String jar = context.getJar();  //作业运行之前,往集群拷贝的作业资源jar  
            //String status = context.getStatus();  
            String user = context.getUser(); //获取当前用户  
            //String[] fileTimestamps = context.getFileTimestamps();  
            int numReduceTasks = context.getNumReduceTasks(); //获得reduce的数量  
            //Path[] fileClassPaths = context.getFileClassPaths();  
            Configuration configuration = context.getConfiguration();   //获得作业配置文件  
            //RawComparator<?> groupingComparator = context.getGroupingComparator();  
            boolean jobSetupCleanupNeeded = context.getJobSetupCleanupNeeded(); //Get whether job-setup and job-cleanup is needed for the job   
            int maxMapAttempts = context.getMaxMapAttempts(); //the max number of attempts per map task  
            int maxReduceAttempts = context.getMaxReduceAttempts(); //he max number of attempts per reduce task.  
            //@SuppressWarnings("deprecation")  
            //Path[] localCacheFiles = context.getLocalCacheFiles();  
            //OutputCommitter outputCommitter = context.getOutputCommitter();  
            Path workingDirectory = context.getWorkingDirectory(); //工作目录  
            boolean nextKeyValue = context.nextKeyValue();  //下一个键值对  
            //URI[] cacheFiles = context.getCacheFiles();  
            URI[] cacheArchives = context.getCacheArchives(); //Get cache archives set in the Configuration  
            Path[] archiveClassPaths = context.getArchiveClassPaths();//Get the archive entries in classpath as an array of Path  
            boolean profileEnabled = context.getProfileEnabled();//Get whether the task profiling is enabled.  
            //String profileParams = context.getProfileParams();  
            @SuppressWarnings("deprecation")  
            boolean symlink = context.getSymlink();// Originally intended to check if symlinks should be used, but currently symlinks cannot be disabled  
            //RawComparator<?> sortComparator = context.getSortComparator();  
            //int hashCode = context.hashCode();  
            context.write(new Text("===================================================================================="), NullWritable.get());  
            context.write(new Text("pathname--"+pathname), NullWritable.get());  
            context.write(new Text("jobid--"+jobid.toString()), NullWritable.get());  
            context.write(new Text("keyout--"+keyout.toString()), NullWritable.get());  
            context.write(new Text("keyout--"+valueout), NullWritable.get());  
            context.write(new Text("jobname--"+jobname), NullWritable.get());  
            context.write(new Text("taskid--"+taskid.toString()), NullWritable.get());  
            context.write(new Text("progress--"+progress), NullWritable.get());  
            context.write(new Text("jar--"+jar.toString()), NullWritable.get());  
            //context.write(new Text("status--"+status), NullWritable.get());  
            context.write(new Text("user--"+user), NullWritable.get());  
            //context.write(new Text("fileTimestamps--"+fileTimestamps), NullWritable.get());  
            context.write(new Text("numReduceTasks--"+numReduceTasks), NullWritable.get());  
            //context.write(new Text("fileClassPaths--"+fileClassPaths), NullWritable.get());  
            context.write(new Text("configuration--"+configuration), NullWritable.get());  
            //context.write(new Text("groupingComparator--"+groupingComparator), NullWritable.get());  
            context.write(new Text("jobSetupCleanupNeeded--"+jobSetupCleanupNeeded), NullWritable.get());  
            context.write(new Text("maxMapAttempts--"+maxMapAttempts), NullWritable.get());  
            context.write(new Text("maxReduceAttempts--"+maxReduceAttempts), NullWritable.get());  
            //context.write(new Text("localCacheFiles--"+localCacheFiles), NullWritable.get());  
            //context.write(new Text("outputCommitter--"+outputCommitter), NullWritable.get());  
            context.write(new Text("workingDirectory--"+workingDirectory), NullWritable.get());  
            context.write(new Text("nextKeyValue--"+nextKeyValue), NullWritable.get());  
            //context.write(new Text("cacheFiles--"+cacheFiles), NullWritable.get());  
            context.write(new Text("cacheArchives--"+cacheArchives), NullWritable.get());  
            context.write(new Text("archiveClassPaths--"+archiveClassPaths), NullWritable.get());  
            context.write(new Text("profileEnabled--"+profileEnabled), NullWritable.get());  
            //context.write(new Text("profileParams--"+profileParams), NullWritable.get());  
            context.write(new Text("symlink--"+symlink), NullWritable.get());  
            //context.write(new Text("sortComparator--"+sortComparator), NullWritable.get());  
            //context.write(new Text("hashCode--"+hashCode), NullWritable.get());  
        }  
    }  
}  [/mw_shl_code]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条