MapReduce 2.0应用场景、原理与基本架构
MapReduce 2.0应用场景、原理与基本架构
MapReduce 2.0应用场景、原理与基本架构讲师:董西成博客:http://doc.guandang.net微信号:hadoop-123(二维码见右)
Open
Passion
Value
MapReduce 2.0应用场景、原理与基本架构
目录
1. MapReduce的应用场景 2. MapReduce编程模型
3. MapReduce的架构 4.常见MapReduce应用场景 5.总结
MapReduce 2.0应用场景、原理与基本架构
MapReduce的定义
源自于Google的MapReduce论文 发表于2004年12月 Hadoop MapReduce是Google MapReduce克隆版
MapReduce特点 易于编程 良好的扩展性
高容错性 适合PB级以上海量数据的离线处理3
MapReduce 2.0应用场景、原理与基本架构
MapReduce的特色—不擅长的方面
实时计算 像MySQL一样,在毫秒级或者秒级内返回结果
流式计算 MapReduce的输入数据集是静态的,不能动态变化
MapReduce自身的设计特点决定了数据源必须是静态的
DAG计算 多个应用程序存在依赖关系,后一个应用程序的输入为前一个的输出4
MapReduce 2.0应用场景、原理与基本架构
目录
1. MapReduce的应用场景 2. MapReduce编程模型
3. MapReduce的架构 4.常见MapReduce应用场景 5.总结
MapReduce 2.0应用场景、原理与基本架构
MapReduce的实例—Wordcount
场景:有大量文件,里面存储了单词,且一个单词占一行 任务:如何统计每个单词出现的次数? 类似应用场景: 搜索引擎中,统计最流行的K个搜索词; 统计搜索词频率,帮助优化搜索词提示
MapReduce 2.0应用场景、原理与基本架构
MapReduce的实例—Wordcount Case 1:整个文件可以加载到内存中; sort datafile| uniq -c Case 2:文件太大不能加载到内存中,但
<word, count>可以存放到内存中; Case 3:文件太大无法加载到内存中,且<word, count>也不行
MapReduce 2.0应用场景、原理与基本架构
MapReduce的实例—Wordcount 将问题范化为:有一批文件(规模为TB级或者 PB级),如何统计这些文件中所有单词出现的次数;
方案:首先,分别统计每个文件中单词出现次数,然后累加不同文件中同一个单词出现次数; 典型的MapReduce过程。
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型—WordCount
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型—WordCount
Input:一系列key/value对 用户提供两个函数实现: map(k,v) list(k1,v1) reduce(k1, list(v1)) v2
(k1,v1)是中间key/value结果对 Output:一系列(k2,v2)对10
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型—WordCountmap(key, value):// key: document name; value: text of document for each word w in value: emit(w, 1) reduce(key, values):// key: a word; values: an iterator over counts result= 0 for each count v in values: result+= v emit(key,result)
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型 MapReduce将作业的整个运行过程分为两个阶段:Map阶段和Reduce阶段 Map阶段由一定数量的Map Task组成 输入数据格式解析:InputFormat 输入数据处理:Mapper
数据分组:Partitioner
Reduce阶段由一定数量的Reduce Task组成 数据远程拷贝 数据按照key排序
数据处理:Reducer 数据输出格式:OutputFo
rmat12
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型—内部逻辑HDFS Split 0Read (Inputformat)
Split 1Read (Inputformat)
Split 2Read (Inputformat)
Split 3Read (Inputformat)
MapperMap Task
Mapper c 1 c 1
Mapper a 1 c 1
Mapper b 1 b 1Map阶段
a 1
b 1
Partitioner
Partitioner
Partitioner
Partitioner
Shuffle& SortReduce Task
Shuffle& Sort b 1 b 1 b 1
Shuffle& Sort
a 1Write (Outputformat)
a 1
c 1
c 1Reducer
c 1
Reduce阶段
Reducer
ReducerWrite (Outputformat)
Write (Outputformat)
13
HDFS
Part-0
Part-1
Part-2
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型—外部物理结构
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型—InputFormat
文件分片(InputSplit)方法 处理跨行问题
将分片数据解析成key/value对 默认实现是TextInputFormat
TextInputFormat Key是行在文件中的偏移量,value是行内容 若行被截断,则读取下一个block的前几个字符
MapReduce 2.0应用场景、原理与基本架构
MapReduce编程模型—Split与Block
Block HDFS中最小的数据存储单位
默认是64MB
Spit MapReduce中最小的计算单元 默认与Block一一对应
Block与Split Split与Block是对应关系是任意的,可由用户控制16
…… 此处隐藏:868字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [实用文档]李践-有效提升销售的12大黄金法则8-大
- [实用文档]党支部换届工作方案
- [实用文档]2013年下期电子商务专业部宣传工作计划
- [实用文档]方庄一矿通风、钻探绩效工资考核管理办
- [实用文档]项目一 认识企业物流认识企业物流
- [实用文档]MBI_Display_产品蓝图规画
- [实用文档]北京市建筑业劳务作业人员普法维权培训
- [实用文档]锅炉燃烧调整与运行优化
- [实用文档]4支付结算业务的核算
- [实用文档]米什金_货币金融学_第9版各章学习指导
- [实用文档]水泥混凝土路面硬化工程施工组织设计
- [实用文档]钢筋工程安全技术交底书
- [实用文档]关于公布华中师范大学本科毕业论文
- [实用文档]太原市园林绿化施工合同范本 2
- [实用文档]周日辅导 初中英语分类复习单项选择题(
- [实用文档]第四章 文化经纪人的管理形式 第二节
- [实用文档]学宪法讲宪法竞赛题库
- [实用文档]《数值计算方法》期末考试模拟试题二
- [实用文档]爱词霸学英语:每日一句( 十月)
- [实用文档]2014年国家公务员面试:无领导小组讨论
- 新课程主要理念和教学案例分析汇编(24
- 英国人的快乐源于幸福的家庭生活
- 七年级上册第一次月考模拟数学试卷
- 真丝及仿真丝的种类有哪些?
- 【最新】华师大版八年级数学下册第十六
- 高中英语3500个必背单词
- 我可以接受失败,但我不能接受放弃!
- 最近更新沪科版八年级物理上册期末试卷
- 绿化工作先进乡镇事迹材料
- 鲁教版九年级上册思想品德教学计划
- 英语音标的分类
- 地下室底板无梁楼盖与普通梁板结构形式
- 美容师黄金销售话术
- 雅思写作满分作文备考方法
- 血清甲状腺激素测定与高频彩色多普勒超
- 1度浅析装修对室内空气品质的影响
- 2017-2022年中国汞矿行业深度分析与投
- 计算机二级VB公共基础知识
- (何勇)秸秆禁烧_重在寻找出路
- 内外墙抹灰工程分包施工合同1




