hadoop的mapreduce

mapreduce是处理海量数据的分布式计算框架

解决了:
数据分布式存储(hdfs)
作业调度(任务划区域执行)
容错(集群容错 能力高)
机器间通信复杂问题


分而治之思想:
分解
求解
合并
mapreduce映射:
分:map (复杂问题分解若干任务)
和:reduce(汇总个数可设置)


hadoop计算流程:
inputdata -> fomate -> hdfs => n个input data 切分 => 分配给N个map => reduce => output data

map task:
input data split ->N个 map => 内存写缓存(清空) => 回写N硬盘(key排序)文件 =>合并硬盘块(fetch)
reduce task:
fetch(每个文件对应marge)->marge ->归并排序 -> reduce(每个key负责不一样) -> output data

hdfs:

master-slave
保证可靠性可用性slave会有数据备份

hdfs分布式文件系统:
系统可靠(多份数据)
可扩展(集群扩展)
并发处理(吞吐能力)

群交流(262200309)
原文地址:https://www.cnblogs.com/webster1/p/7207898.html