Hadoop平台的map-reduce

来源:互联网 发布:javascript知识点总结 编辑:程序博客网 时间:2024/05/21 07:54

数据处理

(1)raw data——>data cleaning——>feature
考虑:内存, 完成时间
例子word count
(2)利用map-reduce思想完成大数据操作和处理

单台服务器内存不足,搭建服务器集群

map-reduce集群:
(1)在多节点上冗余存储数据,以空间换稳定
(2)将计算(op/script)移向数据端(HDFS),以减少大数据(data)移动
(3)简单程序模型,隐藏复杂中间过程

分布式文件存储系统(类似本地硬盘):
GFS(Google),HDFS(Hadoop):服务器块存储数据块,服务器块也要用于计算

服务器块:
文件被分作16-64MB大小的连续块;
每个文件块会被重复地存储2到3次;
尽量保证重复的数据块在不同的机架上
这里写图片描述

主节点(管理节点):
Hadoop的HDFS里叫做Name节点;
存储元数据记录文件存储结构和地址;
也可以重复

map-reduce核心处理步骤

(1)map:分组,产生<k,v>

map按行读入内存写入硬盘,分桶(从标准输入读数据,数据写入标准输出)
这里写图片描述

(2)shuffle:系统帮自动做的,group bu key,排序

(3)reduce:聚合统计,对<k,v>聚合

reduce从上到下统计,输出结果没有顺序
这里写图片描述