传统的海量数据分析方案
专有硬件
价格昂贵
可扩展能力差
针对OLTP进行了优化
1
2006年6月
2007年1月
2007年8月
0
500
1,000
2,000
3,000
4,000
2 Billion
交易/天
3 Billion交易/天
Billion 交易/天
日交易量
实例:纽约证券交易所(NYSE)
5,000
数据量超过200TB
基于Oracle进行了2年半的努力以失败而告终
数据量的增长相当快
花费1000万美元构建的数据仓库4个月里容量和性能就无法再满足要求
2021/3/3
数据量增长的速度远远超过了传统DBMS的处理能力
Apache Hadoop项目
2004年 Dong Cutting参考Google的论文开始实现Hadoop
2006年 Yahoo年雇佣Dong Cutting组队专职开发
2006年2月,Apache Hadoop开源项目正式启动。
Apache Hadoop
HDFS设计
1个NameNode+若干个DataNode
将文件划分为若干块(Chunk)存储于各DataNode节点上
每个块固定大小(64M)
通过冗余来提高可靠性
每个数据块( Chunk)至少在3个DataNode上冗余
通过单个NameNode来协调数据访问、元数据存储
结构简单,容易保持元数据一致性
HDFS体系结构
Namenode
B
动态复制
机架1
机架2
客户端(写文件)
Blocks
Datanodes
Datanodes
客户端
(读文件)
查找元数据
获得文件存储位置
元数据(文件名,存储位置)
MapReduce-“分而治之”
Input split
shuffle
output
交换
聚集查询(SUM、AVG等)
Map
Map
Map
Map
Map
Reduce
P1
P2
P3
P4
P5
D1
D2
D3
D4
D5
最终查询结果
MapReduce
用户自定义
Map、Reduce
Worker
Worker
Master
Worker
Worker
Worker
fork
fork
fork
分配
map
分配
reduce
读取
写入本地
文件系统
Output
File 0
Output
File 1
写入GFS
Chunk 0
Chunk 1
Chunk 2
存储于GFS的
输入数据
MapReduce执行流程
提交任务
调度
map
map
reduce
reduce
传统的海量数据分析方案 来自淘豆网m.daumloan.com转载请标明出处.