hadoop2.5.2学习10--MR之统计每月最高三个温度01
2017-02-08 23:18
309 查看
1、hadoop 之InputFormat
在上篇文章中有一个job.setInputFormatClass(KeyValueTextInputFormat.class);,用于设置输入的格式,这个类型中可以设置分隔符。
2、splits and records
数据传到hdfs上,以block形式存在,mapreduce中, 源数据被split 分成一个个分片, 每个分片有一个mapTask处理,每个分片按照制定格式切割成若干个键值对(records),作为map的的输入。map循环处理这些records。Split 和rRecord 都是逻辑性的概念。
首先看一下InputSplit
InputSplit是一个抽象类, 称为分片,表示每个mapper的输入数据。
InputSplit 包含一个以字节为单位的长度和一组存储位置。分片并不包含数据本身,而是指向数据的引用。存储位置供MapReduce系统使用以便将map任务尽量放在分片数据附近,而分片大小用来排序分片,便于优先处理最大的分片,从而最小化作业时间。
InputSplit的方法:
返回值 | 方法名 | 解释 |
---|---|---|
abstract long | getLength() | Get the size of the split, so that the input splits can be sorted by size. |
SplitLocationInfo[] | getLocationInfo() | Gets info about which nodes the input split is stored on and how it is stored at each location |
abstract String[] | getLocations() | Get the list of nodes by name where the data for the split would be local. |
InputFormat
InputFormat负责创建inputSplit, 并将它们拆分成键值对(records),
相关文章推荐
- hadoop2.5.2学习10--MR之统计每月最高三个温度02
- hadoop2.5.2学习09--MR之统计每月最高三个温度
- Hadoop2.5.2学习01--mapreduce统计单词数
- hadoop2.5.2学习13-MR之新浪微博TF-IDF算法简介
- hadoop2.5.2学习13-MR之新浪微博-DF的实现
- hadoop2.5.2学习11-MR之好友推荐2
- hadoop2.5.2学习14--MR之协同过滤天猫推荐算法实现01
- hadoop2.5.2学习12-MR之PageRank02
- hadoop2.5.2学习12-MR之PageRank
- hadoop2.5.2学习14--MR之协同过滤天猫推荐
- hadoop2.5.2学习13-MR之引入第三方Jar
- hadoop2.5.2学习12-MR之PageRank01
- hadoop2.5.2学习11-MR之好友推荐1
- Hadoop2.5.2学习02--MR执行环境的类型
- hadoop - hadoop2.6 分布式 - 简单实例学习 - 统计某年的最高温度和按年份将温度从高到底排序
- hadoop2.5.2学习及实践笔记(四)—— namenode启动过程源码概览
- hadoop2.5.2学习及实践笔记(二)—— 编译源代码及导入源码至eclipse
- hadoop2.5.2学习及实践笔记(一)—— 伪分布式学习环境搭建
- hadoop2.5.2学习及实践笔记(六)—— Hadoop文件系统及其java接口
- hadoop2.5.2学习及实践笔记(五)—— HDFS shell命令行常见操作