MapReduce的简单实例WordCount
hadoop
----------------------------------------
1.组成:common,hdfs,mapreduce,yarn
2.hadoop集群搭建:3种【搭建流程】
3.hdfs shell命令
4.hdfs体系结构:主从节点{namenode,datanode,secondarynamenode}都是守护进程而非节点:【官网结构图】
fsimage和editslog概念:checkpoint检查点机制,集群的启动过程。
5.hdfs dfsadmin操作
6.hdfs API
MapReduce:分而治之,数据在那,计算在那
------------------------------------------
1.通用的软件计算框架(应用程序job),并行计算:map阶段+reduce阶段
map(映射),并行处理,继承Mapper类,实现map函数
reduce(规约或化简):整合排序,继承Reducer类,实现reduce函数
2.MR程序采用<key,value>方式。
【输入】------------【输出】
kv对 kv对
键和值必须由框架序列化:数据持久+网络间通信
3.MR的数据流转
(input) <k1,v1>-->map阶段--><k2,v2>-->reduce--><k3,v3>(output)
MR的编程思想
-------------------------
1.新建一个Map的类,继承Mapper类,实现其map函数,参数根据业务需求定义。
2.新建一个Reduce类,继承Reducer类,实现其reduce函数,参数根据业务需求定义
3.新建一个驱动类
4.打jar包,指定主类,然后复制到服务器,开启集群
5.hadoop jar命令 跑MR程序,可在8088 Web UI查看状态。
总结
-----------------------
MapReduce就是填空式编程,数据有几行,map函数就执行几次。