目录
百战程序员,全站22050+开发课程+文档 ,学习精选优质好课快人一步!观看视频 快捷键ALT+N

大数据全系列 教程

1869个小节阅读:464.9k

收藏
全部开发者教程

JAVA全系列 教程

面向对象的程序设计语言

Python全系列 教程

Python3.x版本,未来主流的版本

人工智能 教程

顺势而为,AI创新未来

大厂算法 教程

算法,程序员自我提升必经之路

C++ 教程

一门通用计算机编程语言

微服务 教程

目前业界流行的框架组合

web前端全系列 教程

通向WEB技术世界的钥匙

大数据全系列 教程

站在云端操控万千数据

AIGC全能工具班

A

A A

White Night

阅读(261)
赞(0)

###5.4.4 mapper、inputFormat和input对象的创建

1. Mapper对象如何创建的?

点击进入getMapperClass()方法中->JobContext接口中:

选中getMapperClass()之后Ctrl+Alt+B->JobContextImpl:

去配置文件中查找MAP_CLASS_ATTR常量对应(mapreduce.job.map.class)的自定义的Mapper类,如果找到则使用自定义的Mapper类,如果找不到使用Mapper.class。

使用mapreduce.job.map.class去job.xml中查找对应的Mapper类:

对应的自定义的Mapper类就是com.itbaizhan.WCMapper。对应的设置代码就是在WCDriver类中:

思考:为什么在WCDriver类设置好Mapper类之后可以在MapTask中直接使用?设置和使用谁先谁后?

参考答案:WCDriver在客户端执行的,搞定一切配置信息之后,才会提交作业,只有提交作业之后才开始运行MapTask.

2. inputFormat对象如何创建的?

taskContext.getInputFormatClass()->JobContext接口中:

选择getInputFormatClass() 后Ctrl+Alt+B->选择JobContextImpl

如果设置过使用自定义的InputFormat类,没有指定就使用TextInputFormat。可以通过如下方式设置:

默认使用的就是TextInputFormat类。

 

北京市昌平区回龙观镇南店村综合商业楼2楼226室

©2014-2023 百战卓越(北京)科技有限公司 All Rights Reserved.

京ICP备14032124号-2