MapReduce入门概述
MapReduce入门 概述 定义:MapReduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架。 MapReduce的核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个hadoop集群上。 优缺点: 优点:易于编程,良好的扩展性,高容错性,海量数据的离线处理 缺点:不擅长实时计算、不擅长流式计算、不擅长DAG(有向图)计算 核心思想 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IJ8N0Uvy-1576121351172)(C:\Users\lhx\Desktop\课程资料\Markdow笔记\Hadoop\Maprudce的思想.png)] MapReduce进程:一个完整的MapReduce程序在分布式运行时有三类实例进程 MrAppMaster:负责整个程序的过程调度以及状态调度 MapTask:负责Map阶段的整个数据处理流程 ReduceTask:负责Reduce阶段的整个数据的汇总、处理。 编程规范:用户编写的程序分成三个部分:Mapper、Reducer和Driver。 Mapper阶段 用户自定义的Mapper要继承自己的父类 Mapper的输入数据时KV对的形式 Mapper中的业务逻辑写在map()方法中