Hadoop 生态系统
一、hadoop 开源软件和生态系统
1、云计算与大数据
Iaas:基础设施即服务,通过互联网获得服务,例如亚马逊 AWS,openStack
Paas:平台即服务,把服务器平台作为一种服务,例如虚拟开发平台,默认安装开发环境,hadoop
Saas:软件即服务,例如 office365,大量 app
2、大数据应用
hadoop 提供存储和计算能力
支持 PB 级别数据
支持非结构化数据
支持结构化数据
支持万级每秒查询
支持高可靠性系统
支持高效率统计分析
3、hadoop 起源
common 组件、HDFS 组件、Mapreduce 组件(mrv1,mrv2)
02 年: search engine
03 年: GFS、NDFS
04 年: MapReduce
06 年: NDFS&MapReduce Hadoop
08 年: Yahoo, Hadoop apache 基金会
4、核心技术
分布式基础设施:GFS、Chubby 和 Protocol Buffer
分布式大数据处理技术:MapReduce 和 Sawzall
分布式数据库技术:BigTable 和数据库 sharding
数据中心优化技术:数据中心高温化、12V 电池和服务器整合
5、GFS 架构
GFS Master:存储 chunk 元数据信息,主备
Chunkserver1: 存储数据
Chunkserver2:
6、MapReduce 架构
master 进程
map 进程,存储本地磁盘
reduce 进程,copy map 文件,通过分布式文件系统 reduce,最终输出
7、组件对比
google 组件 Hadoop 组件
MapReduce MapReduce(Mrv1、Mrv2)
GFS HDFS
Bigtable Hbase
Chubby Zookeeper
二、hadoop 特点
hadoop 架构简介
HDFS 组件、MapReduce 组件、Common 组件
2.1 Common 组件:提供 IO、压缩、RPC 通信、序列化,利用 JNI 方法调用
编写的 native 库,加速数据压缩、数据校验等
2.2 HDFS 组件,采用流式数据访问模式,用于存储大量超大文件和海量数据,
具有高吞吐率、方便部署和存储管理特点
HDFS 两种节点:Namenode 和 Datanode
Namenode:内存中保存文件数据块映射信息和整个文件系统的名字空间
Datanode:负责存储和读取数据块
了解读写操作流程
2.3 MapReduce 组件
JobTracker
多个 TaskTacker(MapTask 和 ReduceTask)
map (sort 相同 key 放一起)
copy 到远端磁盘 merge 合并文件,reduce 结果
三、hadoop 生态系统
Ambari:监控管理工具
Zookeeper:分布式服务框架,解决一致性问题
Hbase
Pig(Data Flow)
Hive(SQL) fackbook(数据 etcl,数据存储和数据分析能力)
MapReduce
HDFS
Oozie (Workflow Schedule)多个作业调度动作,有向无环流
Hcatalog: 数据表管理和存储服务
四、hadoop 发行版
Cloudera CDH
Hortonworks HDP: TEZ 底层数据处理引擎
Intel Distribution:
IBM BigInsight
五、hadoop 版本选择
1.0
2.0 0.23.x 2.x (包含 HDFS 和 YARN 两个系统)
考虑问题?
是否支持文件追加
是否支持 HDFS 文件链接访问
保证 hadoop 安全性
是否加入 NameNode HA (0.21x 0.22.x 2.x)
是否加入 HDFS 和 YARN (0.23x 2.x)
六、书籍推荐
Hadoop 权威指南
Hadoop 实战
hadoop.apache.org
hadoop jira
blogs.cloudera.com
hortonworks.com/blog
wiki.apache.ogr/hadoop
评论